[autotest] Suite scheduler files bugs for exceptions raised in create_suite_job

This CL is to make suite scheduler file bugs using our bug filer for
several types of exceptions raised by create_suite_job. The exceptions are:
- ControlFileNotFound
- NoControlFileList
- ControlFileEmpty
- ControlFileMalformed

To enable bug filing, use '-b' option of suite_scheduler.py
Bug will be assgined to Lab sheriff.

This CL changes the private method _create_bug_report to public in
server/cros/dynamic_suite/reporting.py, so that we can file a general
bug that is not a test failure. After crbug.com/254256 is fixed,
the bug filing logic in deduping_scheduler.py should be modified.

This CL also moves ParseBuildName() from base_event.py to site_utils,
to avoid import loop. Callers of this methods are updated.

BUG=chromium:242569
TEST=deduping_scheduler_unittest.py;driver_unittest.py;base_event_unittest.py;
ran on chromeos-lab1.hot and confirm bug are properly filed.
DEPLOY=suite_scheduler

Change-Id: Ia57a2e625b7b39dcfe51892c208613c927f3a54e
Reviewed-on: https://gerrit.chromium.org/gerrit/60158
Commit-Queue: Fang Deng <fdeng@chromium.org>
Reviewed-by: Fang Deng <fdeng@chromium.org>
Tested-by: Fang Deng <fdeng@chromium.org>
diff --git a/site_utils/run_suite.py b/site_utils/run_suite.py
index ada6803..15bcf20 100755
--- a/site_utils/run_suite.py
+++ b/site_utils/run_suite.py
@@ -20,6 +20,7 @@
 import common
 
 from autotest_lib.client.common_lib import global_config, error, utils, enum
+from autotest_lib.client.common_lib import site_utils
 from autotest_lib.server.cros.dynamic_suite import constants
 from autotest_lib.server.cros.dynamic_suite import frontend_wrappers
 from autotest_lib.server.cros.dynamic_suite import job_status
@@ -434,8 +435,8 @@
         @return: The key used to log timing information in statsd.
         """
         try:
-            _board, build_type, branch = base_event.ParseBuildName(build)[:3]
-        except base_event.ParseBuildNameException as e:
+            _board, build_type, branch = site_utils.ParseBuildName(build)[:3]
+        except site_utils.ParseBuildNameException as e:
             logging.error(str(e))
             branch = 'Unknown'
             build_type = 'Unknown'