Bug 1302152 - Make forced artifact builds on buildbot trigger test jobs; r=jlund
authorMaja Frydrychowicz <mjzffr@gmail.com>
Wed, 28 Sep 2016 16:10:46 -0400
changeset 358866 b04101c385d4c8117c490dbebcfc38d85f098d55
parent 358865 f6e8ed7a6e9a33d1f9ba0edc6d7b4920c7998ba1
child 358867 c7d8bed34d87aab09d766e16ad49d67e3a6adbdf
push id6795
push userjlund@mozilla.com
push dateMon, 23 Jan 2017 14:19:46 +0000
treeherdermozilla-beta@76101b503191 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjlund
bugs1302152
milestone52.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1302152 - Make forced artifact builds on buildbot trigger test jobs; r=jlund MozReview-Commit-ID: IANN4FwYklC
testing/mozharness/configs/builds/releng_sub_linux_configs/32_artifact.py
testing/mozharness/configs/builds/releng_sub_linux_configs/64_artifact.py
testing/mozharness/configs/builds/releng_sub_mac_configs/64_artifact.py
testing/mozharness/configs/builds/releng_sub_windows_configs/32_artifact.py
testing/mozharness/configs/builds/releng_sub_windows_configs/64_artifact.py
testing/mozharness/mozharness/mozilla/building/buildbase.py
--- a/testing/mozharness/configs/builds/releng_sub_linux_configs/32_artifact.py
+++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/32_artifact.py
@@ -10,32 +10,34 @@ config = {
 
     # note: overridden by MOZHARNESS_ACTIONS in TaskCluster tasks
     'default_actions': [
         'clobber',
         'clone-tools',
         'checkout-sources',
         'setup-mock',
         'build',
+        'sendchange',
     ],
     "buildbot_json_path": "buildprops.json",
     'exes': {
         "buildbot": "/tools/buildbot/bin/buildbot",
     },
     'app_ini_path': '%(obj_dir)s/dist/bin/application.ini',
     # decides whether we want to use moz_sign_cmd in env
     'enable_signing': False,
     'enable_ccache': True,
     'vcs_share_base': '/builds/hg-shared',
     'objdir': 'obj-firefox',
     'tooltool_script': ["/builds/tooltool.py"],
     'tooltool_bootstrap': "setup.sh",
     'enable_count_ctors': True,
     'enable_talos_sendchange': False,
-    'enable_unittest_sendchange': False,
+    # allows triggering of test jobs when --artifact try syntax is detected on buildbot
+    'enable_unittest_sendchange': True,
     #########################################################################
 
 
     #########################################################################
     ###### 32 bit specific ######
     'base_name': 'Linux_%(branch)s_Artifact_build',
     'platform': 'linux',
     'stage_platform': 'linux',
--- a/testing/mozharness/configs/builds/releng_sub_linux_configs/64_artifact.py
+++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_artifact.py
@@ -3,33 +3,35 @@ import os
 config = {
     # note: overridden by MOZHARNESS_ACTIONS in TaskCluster tasks
     'default_actions': [
         'clobber',
         'clone-tools',
         'checkout-sources',
         'setup-mock',
         'build',
+        'sendchange',
         # 'generate-build-stats',
     ],
     "buildbot_json_path": "buildprops.json",
     'exes': {
         "buildbot": "/tools/buildbot/bin/buildbot",
     },
     'app_ini_path': '%(obj_dir)s/dist/bin/application.ini',
     # decides whether we want to use moz_sign_cmd in env
     'enable_signing': False,
     'enable_ccache': True,
     'vcs_share_base': '/builds/hg-shared',
     'objdir': 'obj-firefox',
     'tooltool_script': ["/builds/tooltool.py"],
     'tooltool_bootstrap': "setup.sh",
     'enable_count_ctors': True,
     'enable_talos_sendchange': False,
-    'enable_unittest_sendchange': False,
+    # allows triggering of test jobs when --artifact try syntax is detected on buildbot
+    'enable_unittest_sendchange': True,
     #########################################################################
 
 
     #########################################################################
     ###### 64 bit specific ######
     'base_name': 'Linux_x86-64_%(branch)s_Artifact_build',
     'platform': 'linux64',
     'stage_platform': 'linux64',
--- a/testing/mozharness/configs/builds/releng_sub_mac_configs/64_artifact.py
+++ b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_artifact.py
@@ -6,33 +6,35 @@ config = {
     ######## MACOSX GENERIC CONFIG KEYS/VAlUES
 
     'default_actions': [
         'clobber',
         'clone-tools',
         # 'setup-mock',
         'checkout-sources',
         'build',
+        'sendchange',
     ],
     "buildbot_json_path": "buildprops.json",
     'exes': {
         'python2.7': sys.executable,
         "buildbot": "/tools/buildbot/bin/buildbot",
     },
     'app_ini_path': '%(obj_dir)s/dist/bin/application.ini',
     # decides whether we want to use moz_sign_cmd in env
     'enable_signing': False,
     'enable_ccache': True,
     'vcs_share_base': '/builds/hg-shared',
     'objdir': 'obj-firefox',
     'tooltool_script': ["/builds/tooltool.py"],
     'tooltool_bootstrap': "setup.sh",
     'enable_count_ctors': False,
     'enable_talos_sendchange': False,
-    'enable_unittest_sendchange': False,
+    # allows triggering of test jobs when --artifact try syntax is detected on buildbot
+    'enable_unittest_sendchange': True,
     #########################################################################
 
 
     #########################################################################
     ###### 64 bit specific ######
     'base_name': 'OS X 10.7 %(branch)s_Artifact_build',
     'platform': 'macosx64',
     'stage_platform': 'macosx64',
--- a/testing/mozharness/configs/builds/releng_sub_windows_configs/32_artifact.py
+++ b/testing/mozharness/configs/builds/releng_sub_windows_configs/32_artifact.py
@@ -10,16 +10,17 @@ config = {
     # releng_base_windows_32_builds.py
 
     'default_actions': [
         'clobber',
         'clone-tools',
         'checkout-sources',
         # 'setup-mock', windows do not use mock
         'build',
+        'sendchange',
     ],
     "buildbot_json_path": "buildprops.json",
     'exes': {
         'python2.7': sys.executable,
         "buildbot": [
             sys.executable,
             'c:\\mozilla-build\\buildbotve\\scripts\\buildbot'
         ],
@@ -40,17 +41,18 @@ config = {
     'enable_ccache': False,
     'vcs_share_base': 'C:/builds/hg-shared',
     'objdir': 'obj-firefox',
     'tooltool_script': [sys.executable,
                         'C:/mozilla-build/tooltool.py'],
     'tooltool_bootstrap': "setup.sh",
     'enable_count_ctors': False,
     'enable_talos_sendchange': False,
-    'enable_unittest_sendchange': False,
+    # allows triggering of test jobs when --artifact try syntax is detected on buildbot
+    'enable_unittest_sendchange': True,
     'max_build_output_timeout': 60 * 80,
     #########################################################################
 
 
      #########################################################################
      ###### 32 bit specific ######
     'base_name': 'WINNT_5.2_%(branch)s_Artifact_build',
     'platform': 'win32',
--- a/testing/mozharness/configs/builds/releng_sub_windows_configs/64_artifact.py
+++ b/testing/mozharness/configs/builds/releng_sub_windows_configs/64_artifact.py
@@ -10,16 +10,17 @@ config = {
     # releng_base_windows_64_builds.py
 
     'default_actions': [
         'clobber',
         'clone-tools',
         'checkout-sources',
         # 'setup-mock', windows do not use mock
         'build',
+        'sendchange',
     ],
     "buildbot_json_path": "buildprops.json",
     'exes': {
         'python2.7': sys.executable,
         "buildbot": [
             sys.executable,
             'c:\\mozilla-build\\buildbotve\\scripts\\buildbot'
         ],
@@ -40,17 +41,18 @@ config = {
     'enable_ccache': False,
     'vcs_share_base': 'C:/builds/hg-shared',
     'objdir': 'obj-firefox',
     'tooltool_script': [sys.executable,
                         'C:/mozilla-build/tooltool.py'],
     'tooltool_bootstrap': "setup.sh",
     'enable_count_ctors': False,
     'enable_talos_sendchange': False,
-    'enable_unittest_sendchange': False,
+    # allows triggering of test jobs when --artifact try syntax is detected on buildbot
+    'enable_unittest_sendchange': True,
     'max_build_output_timeout': 60 * 80,
     #########################################################################
 
 
      #########################################################################
      ###### 64 bit specific ######
     'base_name': 'WINNT_6.1_x86-64_%(branch)s_Artifact_build',
     'platform': 'win64',
--- a/testing/mozharness/mozharness/mozilla/building/buildbase.py
+++ b/testing/mozharness/mozharness/mozilla/building/buildbase.py
@@ -1946,16 +1946,20 @@ or run without that action (ie: --no-{ac
             self.build_metrics_summary):
             perfherder_data["suites"].append(self.build_metrics_summary)
 
         if perfherder_data["suites"]:
             self.info('PERFHERDER_DATA: %s' % json.dumps(perfherder_data))
 
 
     def sendchange(self):
+        if os.environ.get('TASK_ID'):
+            self.info("We are not running this in buildbot; skipping")
+            return
+
         if self.config.get('enable_talos_sendchange'):
             self._do_sendchange('talos')
         else:
             self.info("'enable_talos_sendchange' is false; skipping")
 
         if self.config.get('enable_unittest_sendchange'):
             self._do_sendchange('unittest')
         else: