Bug 1186678 - thunderbird per checkin tests should use mozilla- rev not comm- rev, r=rail
authorJordan Lund <jlund@mozilla.com>
Thu, 23 Jul 2015 10:53:49 -0700 (2015-07-23)
changeset 4353 196963066a40b2cdec65a2658e2bbe3f0518a179
parent 4352 bfe0b68213ee17b0ca1fb044744c5c9e7a9ebc33
child 4354 b9d0296b40fa941e76ce0513968dc7d64bbbf5fd
child 4355 b8bf2505b183bc790470bee40184cb0137d3b8af
push id3644
push userjlund@mozilla.com
push dateThu, 23 Jul 2015 17:54:31 +0000 (2015-07-23)
reviewersrail
bugs1186678
Bug 1186678 - thunderbird per checkin tests should use mozilla- rev not comm- rev, r=rail
misc.py
process/factory.py
--- a/misc.py
+++ b/misc.py
@@ -671,16 +671,17 @@ def makeMHFactory(config, pf, mh_cfg=Non
         scriptName=mh_cfg['script_name'],
         reboot_command=mh_cfg.get('reboot_command', pf.get('reboot_command')),
         extra_args=extra_args,
         script_timeout=mh_cfg.get('script_timeout', pf.get('timeout', 3600)),
         script_maxtime=mh_cfg.get('script_maxtime', pf.get('maxTime', 4 * 3600)),
         script_repo_cache=script_repo_cache,
         script_repo_manifest=config.get('script_repo_manifest'),
         relengapi_archiver_repo_path=config.get('mozharness_archiver_repo_path'),
+        relengapi_archiver_rev=config.get('mozharness_archiver_rev'),
         tools_repo_cache=mh_cfg.get('tools_repo_cache',
                                     pf.get('tools_repo_cache')),
         **kwargs
     )
     return factory
 
 
 def makeBundleBuilder(config, name):
@@ -724,17 +725,18 @@ def makeBundleBuilder(config, name):
 def generateTestBuilder(config, branch_name, platform, name_prefix,
                         build_dir_prefix, suites_name, suites,
                         mochitestLeakThreshold, crashtestLeakThreshold,
                         slaves=None, resetHwClock=False, category=None,
                         stagePlatform=None, stageProduct=None,
                         mozharness=False, mozharness_python=None,
                         mozharness_suite_config=None,
                         mozharness_repo=None, mozharness_tag='production',
-                        script_repo_manifest=None, relengapi_archiver_repo_path=None, is_debug=None):
+                        script_repo_manifest=None, relengapi_archiver_repo_path=None,
+                        relengapi_archiver_rev=None, is_debug=None):
     builders = []
     pf = config['platforms'].get(platform, {})
     if slaves is None:
         slavenames = config['platforms'][platform]['slaves']
     else:
         slavenames = slaves
     if not category:
         category = branch_name
@@ -782,16 +784,17 @@ def generateTestBuilder(config, branch_n
             scriptName=suites['script_path'],
             hg_bin=hg_bin,
             extra_args=extra_args,
             use_credentials_file=True,
             script_maxtime=suites.get('script_maxtime', 7200),
             script_timeout=suites.get('timeout', 1800),
             script_repo_manifest=script_repo_manifest,
             relengapi_archiver_repo_path=relengapi_archiver_repo_path,
+            relengapi_archiver_rev=relengapi_archiver_rev,
             reboot_command=reboot_command,
             platform=platform,
             env=mozharness_suite_config.get('env', {}),
             log_eval_func=rc_eval_func({
                 0: SUCCESS,
                 1: WARNINGS,
                 2: FAILURE,
                 3: EXCEPTION,
@@ -846,30 +849,32 @@ def generateTestBuilder(config, branch_n
 
 
 def generateMozharnessTalosBuilder(platform, mozharness_repo, script_path,
                                    hg_bin, mozharness_python,
                                    reboot_command, extra_args=None,
                                    script_timeout=3600,
                                    script_maxtime=7200,
                                    script_repo_manifest=None,
-                                   relengapi_archiver_repo_path=None):
+                                   relengapi_archiver_repo_path=None,
+                                   relengapi_archiver_rev=None):
     if extra_args is None:
         extra_args = []
     return ScriptFactory(
         interpreter=mozharness_python,
         scriptRepo=mozharness_repo,
         scriptName=script_path,
         hg_bin=hg_bin,
         extra_args=extra_args,
         use_credentials_file=True,
         script_timeout=script_timeout,
         script_maxtime=script_maxtime,
         script_repo_manifest=script_repo_manifest,
         relengapi_archiver_repo_path=relengapi_archiver_repo_path,
+        relengapi_archiver_rev=relengapi_archiver_rev,
         reboot_command=reboot_command,
         platform=platform,
         log_eval_func=rc_eval_func({
             0: SUCCESS,
             1: WARNINGS,
             2: FAILURE,
             3: EXCEPTION,
             4: RETRY,
@@ -1828,16 +1833,17 @@ def generateBranchObjects(config, name, 
                     factory = SigningScriptFactory(
                         signingServers=signing_servers,
                         scriptRepo='%s%s' % (config['hgurl'],
                                              config['mozharness_repo_path']),
                         scriptName='scripts/mobile_l10n.py',
                         use_credentials_file=True,
                         extra_args=extra_args,
                         relengapi_archiver_repo_path=config.get('mozharness_archiver_repo_path'),
+                        relengapi_archiver_rev=config.get('mozharness_archiver_rev'),
                     )
                     slavebuilddir = normalizeName(builddir, pf['stage_product'])
                     branchObjects['builders'].append({
                         'name': builderName,
                         'slavenames': pf.get('slaves'),
                         'builddir': builddir,
                         'slavebuilddir': slavebuilddir,
                         'factory': factory,
@@ -2435,16 +2441,17 @@ def generateTalosBranchObjects(branch, b
                             'extra_args': extra_args,
                             'script_timeout': platform_config['mozharness_config'].get('script_timeout', 3600),
                             'script_maxtime': (platform_config['mozharness_config'].get('talos_script_maxtime', platform_config['mozharness_config'].get('script_maxtime', 7200))),
                             'reboot_command': platform_config[
                                 'mozharness_config'].get('reboot_command'),
                             'script_repo_manifest': branch_config.get(
                                  'script_repo_manifest'),
                             'relengapi_archiver_repo_path': branch_config.get('mozharness_archiver_repo_path'),
+                            'relengapi_archiver_rev': branch_config.get('mozharness_archiver_rev'),
                         }
                         return args
                         # end of _makeGenerateMozharnessTalosBuilderArgs
 
                     if branch_config.get('mozharness_talos', True) and platform_config[slave_platform].get('mozharness_talos', True):
                         args = _makeGenerateMozharnessTalosBuilderArgs(suite, opt_talos_branch, platform,
                                                                        factory_kwargs, branch_config, platform_config)
                         factory = generateMozharnessTalosBuilder(**args)
@@ -2596,16 +2603,17 @@ def generateTalosBranchObjects(branch, b
                             }
                             test_builder_chunks = None
                             if isinstance(suites, dict) and "use_mozharness" in suites:
                                 test_builder_kwargs['mozharness_repo'] = branch_config['mozharness_repo']
                                 test_builder_kwargs['mozharness_tag'] = branch_config['mozharness_tag']
                                 test_builder_kwargs['mozharness'] = True
                                 test_builder_kwargs['script_repo_manifest'] = branch_config.get('script_repo_manifest')
                                 test_builder_kwargs['relengapi_archiver_repo_path'] = branch_config.get('mozharness_archiver_repo_path')
+                                test_builder_kwargs['relengapi_archiver_rev'] = branch_config.get('mozharness_archiver_rev')
                                 # allow mozharness_python to be overridden per test slave platform in case Python
                                 # not installed to a consistent location.
                                 if 'mozharness_config' in platform_config[slave_platform] and \
                                         'mozharness_python' in platform_config[slave_platform]['mozharness_config']:
                                     test_builder_kwargs['mozharness_python'] = \
                                         platform_config[slave_platform]['mozharness_config']['mozharness_python']
                                 else:
                                     test_builder_kwargs['mozharness_python'] = platform_config['mozharness_config']['mozharness_python']
@@ -3244,17 +3252,18 @@ def mh_l10n_builders(config, platform, b
             scriptRepo=scriptRepo,
             scriptName=scriptName,
             script_timeout=script_timeout,
             script_maxtime=script_maxtime,
             use_credentials_file=use_credentials_file,
             interpreter=mozharness_python,
             extra_args=extra_args,
             reboot_command=reboot_command,
-            relengapi_archiver_repo_path=config.get('mozharness_archiver_repo_path')
+            relengapi_archiver_repo_path=config.get('mozharness_archiver_repo_path'),
+            relengapi_archiver_rev=config.get('mozharness_archiver_rev')
         )
         slavebuilddir = normalizeName(builddir)
         builders.append({
             'name': builderName,
             'slavenames': pf.get('slaves'),
             'builddir': builddir,
             'slavebuilddir': slavebuilddir,
             'factory': factory,
--- a/process/factory.py
+++ b/process/factory.py
@@ -4727,17 +4727,17 @@ class ScriptFactory(RequestSortingBuildF
                  reboot_command=None, hg_bin='hg', platform=None,
                  use_mock=False, mock_target=None,
                  mock_packages=None, mock_copyin_files=None,
                  triggered_schedulers=None, env={}, copy_properties=None,
                  properties_file='buildprops.json', script_repo_cache=None,
                  tools_repo_cache=None, tooltool_manifest_src=None,
                  tooltool_bootstrap="setup.sh", tooltool_url_list=None,
                  tooltool_script=None, relengapi_archiver_repo_path=None,
-                 relengapi_archiver_release_tag=None):
+                 relengapi_archiver_release_tag=None, relengapi_archiver_rev=None):
         BuildFactory.__init__(self)
         self.script_timeout = script_timeout
         self.log_eval_func = log_eval_func
         self.script_maxtime = script_maxtime
         self.reboot_command = reboot_command
         self.platform = platform
         self.use_mock = use_mock
         self.mock_target = mock_target
@@ -4796,17 +4796,17 @@ class ScriptFactory(RequestSortingBuildF
             value=scriptRepo,
         ))
         script_repo_url = WithProperties('%(script_repo_url)s')
 
         if relengapi_archiver_repo_path:
             if relengapi_archiver_release_tag:
                 archiver_revision = "--tag %s " % relengapi_archiver_release_tag
             else:
-                archiver_revision = "--rev %(revision)s "
+                archiver_revision = "--rev %s " % (relengapi_archiver_rev or '%(revision)s',)
             if self.script_repo_cache:
                 assert self.tools_repo_cache
                 archiver_client_path = \
                     os.path.join(self.tools_repo_cache,
                                  'buildfarm',
                                  'utils',
                                  'archiver_client.py')
             else: