Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse code

changeset: 1967:41d33904e045

parent:      1964:2c3f558e4d7b
user:        John Hopkins <jhopkins@mozilla.com>
date:        Wed Dec 21 16:34:45 2011 -0500
summary:     Bug 710350 - Don't hard-code 'firefox' and 'fennec' in misc.py. r=bhearsum

changeset:   1968:67081bb6526e
user:        Mike Taylor <bear@mozilla.com>
date:        Wed Dec 21 17:20:09 2011 -0500
summary:     bug 711367 r=aki adjust buildbot talos runner to add optional --nativeUI flag for android-xul

changeset:   1969:7a7847f7fc05
user:        Ben Hearsum <bhearsum@mozilla.com>
date:        Thu Dec 22 09:18:25 2011 -0500
summary:     bug 711275: Make sure appVersion changes with every Firefox 10 beta. r=rail

changeset:   1970:eee5d445b9b6
tag:         tip
user:        Armen Zambrano Gasparnian <armenzg@mozilla.com>
date:        Thu Dec 22 10:25:58 2011 -0500
summary:     Bug 673131. Use a Python that contains SimpleJson. r=coop

--HG--
branch : production-0.8
  • Loading branch information...
commit 7ea9e825384a36d51e9042718d03236a2bcf210e 2 parents 1ceb2db + 2dc42b3
authored December 22, 2011
76  misc.py
@@ -9,6 +9,8 @@
9 9
 import re
10 10
 import sys, os, time
11 11
 
  12
+from copy import deepcopy
  13
+
12 14
 from twisted.python import log
13 15
 
14 16
 from buildbot.scheduler import Nightly, Scheduler, Triggerable
@@ -372,9 +374,7 @@ def generateTestBuilder(config, branch_name, platform, name_prefix,
372 374
         slavenames = slaves
373 375
     if not category:
374 376
         category = branch_name
375  
-    productName = 'firefox'
376  
-    if 'mobile' in name_prefix or 'Android' in name_prefix:
377  
-        productName = 'fennec'
  377
+    productName = pf['product_name']
378 378
     branchProperty = branch_name
379 379
     posixBinarySuffix = '' if 'mobile' in name_prefix else '-bin'
380 380
     properties = {'branch': branchProperty, 'platform': platform,
@@ -483,7 +483,7 @@ def generateCCTestBuilder(config, branch_name, platform, name_prefix,
483 483
         slavenames = slaves
484 484
     if not category:
485 485
         category = branch_name
486  
-    productName = config['product_name']
  486
+    productName = pf['product_name']
487 487
     posixBinarySuffix = '-bin'
488 488
     if isinstance(suites, dict) and "totalChunks" in suites:
489 489
         totalChunks = suites['totalChunks']
@@ -637,7 +637,7 @@ def generateBranchObjects(config, name, secrets=None):
637 637
                 l10nBuilders[base_name] = {}
638 638
                 l10nBuilders[base_name]['tree'] = config['l10n_tree']
639 639
                 l10nBuilders[base_name]['l10n_builder'] = \
640  
-                    '%s %s %s l10n dep' % (config['product_name'].capitalize(),
  640
+                    '%s %s %s l10n dep' % (pf['product_name'].capitalize(),
641 641
                                        name, platform)
642 642
                 l10nBuilders[base_name]['platform'] = platform
643 643
         # Check if branch wants nightly builds
@@ -661,7 +661,7 @@ def generateBranchObjects(config, name, secrets=None):
661 661
                 l10nNightlyBuilders[builder] = {}
662 662
                 l10nNightlyBuilders[builder]['tree'] = config['l10n_tree']
663 663
                 l10nNightlyBuilders[builder]['l10n_builder'] = \
664  
-                    '%s %s %s l10n nightly' % (config['product_name'].capitalize(),
  664
+                    '%s %s %s l10n nightly' % (pf['product_name'].capitalize(),
665 665
                                        name, platform)
666 666
                 l10nNightlyBuilders[builder]['platform'] = platform
667 667
             if config['enable_shark'] and pf.get('enable_shark'):
@@ -1089,7 +1089,7 @@ def generateBranchObjects(config, name, secrets=None):
1089 1089
                 'configRepoPath': config['config_repo_path'],
1090 1090
                 'configSubDir': config['config_subdir'],
1091 1091
                 'profiledBuild': per_checkin_build_uses_pgo,
1092  
-                'productName': config['product_name'],
  1092
+                'productName': pf['product_name'],
1093 1093
                 'mozconfig': pf['mozconfig'],
1094 1094
                 'srcMozconfig': pf.get('src_mozconfig'),
1095 1095
                 'use_scratchbox': pf.get('use_scratchbox'),
@@ -1344,7 +1344,7 @@ def generateBranchObjects(config, name, secrets=None):
1344 1344
                 configRepoPath=config['config_repo_path'],
1345 1345
                 configSubDir=config['config_subdir'],
1346 1346
                 profiledBuild=nightly_pgo,
1347  
-                productName=config['product_name'],
  1347
+                productName=pf['product_name'],
1348 1348
                 mozconfig=pf['mozconfig'],
1349 1349
                 srcMozconfig=pf.get('src_mozconfig'),
1350 1350
                 use_scratchbox=pf.get('use_scratchbox'),
@@ -1422,8 +1422,8 @@ def generateBranchObjects(config, name, secrets=None):
1422 1422
                         platform=platform,
1423 1423
                         hgHost=config['hghost'],
1424 1424
                         tree=config['l10n_tree'],
1425  
-                        project=config['product_name'],
1426  
-                        appName=config['app_name'],
  1425
+                        project=pf['product_name'],
  1426
+                        appName=pf['app_name'],
1427 1427
                         enUSBinaryURL=config['enUS_binaryURL'],
1428 1428
                         nightly=True,
1429 1429
                         configRepoPath=config['config_repo_path'],
@@ -1485,7 +1485,7 @@ def generateBranchObjects(config, name, secrets=None):
1485 1485
                     configRepoPath=config['config_repo_path'],
1486 1486
                     configSubDir=config['config_subdir'],
1487 1487
                     profiledBuild=False,
1488  
-                    productName=config['product_name'],
  1488
+                    productName=pf['product_name'],
1489 1489
                     mozconfig='%s/%s/shark' % (platform, name),
1490 1490
                     srcMozconfig=pf.get('src_shark_mozconfig'),
1491 1491
                     stageServer=config['stage_server'],
@@ -1553,8 +1553,8 @@ def generateBranchObjects(config, name, secrets=None):
1553 1553
                 platform=platform,
1554 1554
                 hgHost=config['hghost'],
1555 1555
                 tree=config['l10n_tree'],
1556  
-                project=config['product_name'],
1557  
-                appName=config['app_name'],
  1556
+                project=pf['product_name'],
  1557
+                appName=pf['app_name'],
1558 1558
                 enUSBinaryURL=config['enUS_binaryURL'],
1559 1559
                 nightly=False,
1560 1560
                 l10nDatedDirs=config['l10nDatedDirs'],
@@ -1603,7 +1603,7 @@ def generateBranchObjects(config, name, secrets=None):
1603 1603
             unittest_factory = factory_class(
1604 1604
                 env=pf.get('unittest-env', {}),
1605 1605
                 platform=platform,
1606  
-                productName=config['product_name'],
  1606
+                productName=pf['product_name'],
1607 1607
                 config_repo_path=config['config_repo_path'],
1608 1608
                 config_dir=config['config_subdir'],
1609 1609
                 objdir=config['objdir_unittests'],
@@ -1680,7 +1680,7 @@ def generateBranchObjects(config, name, secrets=None):
1680 1680
             if platform == 'linux':
1681 1681
                 codecoverage_factory = CodeCoverageFactory(
1682 1682
                     platform=platform,
1683  
-                    productName=config['product_name'],
  1683
+                    productName=pf['product_name'],
1684 1684
                     config_repo_path=config['config_repo_path'],
1685 1685
                     config_dir=config['config_subdir'],
1686 1686
                     objdir=config['objdir_unittests'],
@@ -1870,7 +1870,7 @@ def generateCCBranchObjects(config, name):
1870 1870
                 l10nBuilders[base_name] = {}
1871 1871
                 l10nBuilders[base_name]['tree'] = config['l10n_tree']
1872 1872
                 l10nBuilders[base_name]['l10n_builder'] = \
1873  
-                    '%s %s %s l10n dep' % (config['product_name'].capitalize(),
  1873
+                    '%s %s %s l10n dep' % (pf['product_name'].capitalize(),
1874 1874
                                        name, platform)
1875 1875
                 l10nBuilders[base_name]['platform'] = platform
1876 1876
         # Check if branch wants nightly builds
@@ -1890,7 +1890,7 @@ def generateCCBranchObjects(config, name):
1890 1890
                 l10nNightlyBuilders[builder] = {}
1891 1891
                 l10nNightlyBuilders[builder]['tree'] = config['l10n_tree']
1892 1892
                 l10nNightlyBuilders[builder]['l10n_builder'] = \
1893  
-                    '%s %s %s l10n nightly' % (config['product_name'].capitalize(),
  1893
+                    '%s %s %s l10n nightly' % (pf['product_name'].capitalize(),
1894 1894
                                        name, platform)
1895 1895
                 l10nNightlyBuilders[builder]['platform'] = platform
1896 1896
             if config['enable_shark'] and platform.startswith('macosx'):
@@ -1918,7 +1918,7 @@ def generateCCBranchObjects(config, name):
1918 1918
         weeklyBuilders.append('%s hg bundle' % name)
1919 1919
 
1920 1920
     logUploadCmd = makeLogUploadCommand(name, config, is_try=config.get('enable_try'),
1921  
-            is_shadow=bool(name=='shadow-central'), product=config['product_name'])
  1921
+            is_shadow=bool(name=='shadow-central'), product=pf['product_name'])
1922 1922
 
1923 1923
     branchObjects['status'].append(SubprocessLogHandler(
1924 1924
         logUploadCmd,
@@ -2095,7 +2095,7 @@ def generateCCBranchObjects(config, name):
2095 2095
             builderNames=l10n_builders,
2096 2096
             fileIsImportant=lambda c: isImportantL10nFile(c, config['l10n_modules']),
2097 2097
             properties={
2098  
-                'app': config['app_name'],
  2098
+                'app': pf['app_name'],
2099 2099
                 'en_revision': 'default',
2100 2100
                 'l10n_revision': 'default',
2101 2101
                 }
@@ -2245,7 +2245,7 @@ def generateCCBranchObjects(config, name):
2245 2245
             configRepoPath=config['config_repo_path'],
2246 2246
             configSubDir=config['config_subdir'],
2247 2247
             profiledBuild=pf['profiled_build'],
2248  
-            productName=config['product_name'],
  2248
+            productName=pf['product_name'],
2249 2249
             mozconfig=pf['mozconfig_dep'],
2250 2250
             branchName=name,
2251 2251
             stageServer=config['stage_server'],
@@ -2335,7 +2335,7 @@ def generateCCBranchObjects(config, name):
2335 2335
                 configRepoPath=config['config_repo_path'],
2336 2336
                 configSubDir=config['config_subdir'],
2337 2337
                 profiledBuild=pf['profiled_build'],
2338  
-                productName=config['product_name'],
  2338
+                productName=pf['product_name'],
2339 2339
                 mozconfig=pf['mozconfig'],
2340 2340
                 branchName=name,
2341 2341
                 stageServer=config['stage_server'],
@@ -2398,8 +2398,8 @@ def generateCCBranchObjects(config, name):
2398 2398
                         platform=platform,
2399 2399
                         hgHost=config['hghost'],
2400 2400
                         tree=config['l10n_tree'],
2401  
-                        project=config['product_name'],
2402  
-                        appName=config['app_name'],
  2401
+                        project=pf['product_name'],
  2402
+                        appName=pf['app_name'],
2403 2403
                         enUSBinaryURL=config['enUS_binaryURL'],
2404 2404
                         nightly=True,
2405 2405
                         configRepoPath=config['config_repo_path'],
@@ -2452,7 +2452,7 @@ def generateCCBranchObjects(config, name):
2452 2452
                     configRepoPath=config['config_repo_path'],
2453 2453
                     configSubDir=config['config_subdir'],
2454 2454
                     profiledBuild=False,
2455  
-                    productName=config['product_name'],
  2455
+                    productName=pf['product_name'],
2456 2456
                     mozconfig='%s/%s/shark' % (platform, name),
2457 2457
                     branchName=name,
2458 2458
                     stageServer=config['stage_server'],
@@ -2489,8 +2489,8 @@ def generateCCBranchObjects(config, name):
2489 2489
                 platform=platform,
2490 2490
                 hgHost=config['hghost'],
2491 2491
                 tree=config['l10n_tree'],
2492  
-                project=config['product_name'],
2493  
-                appName=config['app_name'],
  2492
+                project=pf['product_name'],
  2493
+                appName=pf['app_name'],
2494 2494
                 enUSBinaryURL=config['enUS_binaryURL'],
2495 2495
                 nightly=False,
2496 2496
                 branchName=name,
@@ -2534,9 +2534,9 @@ def generateCCBranchObjects(config, name):
2534 2534
             unittest_factory = factory_class(
2535 2535
                 env=pf.get('unittest-env', {}),
2536 2536
                 platform=platform,
2537  
-                productName=config['product_name'],
  2537
+                productName=pf['product_name'],
2538 2538
                 branchName=name,
2539  
-                brandName=config['brand_name'],
  2539
+                brandName=pf['brand_name'],
2540 2540
                 config_repo_path=config['config_repo_path'],
2541 2541
                 config_dir=config['config_subdir'],
2542 2542
                 objdir=config['objdir_unittests'],
@@ -2613,7 +2613,7 @@ def generateCCBranchObjects(config, name):
2613 2613
             if platform == 'linux':
2614 2614
                 codecoverage_factory = CodeCoverageFactory(
2615 2615
                     platform=platform,
2616  
-                    productName=config['product_name'],
  2616
+                    productName=pf['product_name'],
2617 2617
                     config_repo_path=config['config_repo_path'],
2618 2618
                     config_dir=config['config_subdir'],
2619 2619
                     objdir=config['objdir_unittests'],
@@ -2768,7 +2768,18 @@ def generateTalosBranchObjects(branch, branch_config, PLATFORMS, SUITES,
2768 2768
                           platform_config[slave_platform].get('download_symbols',True),
2769 2769
                         "talos_from_source_code": branch_config.get('talos_from_source_code', False)
2770 2770
                     }
2771  
-                    factory_kwargs.update(extra)
  2771
+
  2772
+                    if extra and extra.get('remoteTests', False) and 'xul' in platform:
  2773
+                        myextra      = deepcopy(extra)
  2774
+                        remoteExtras = myextra.get('remoteExtras', {})
  2775
+                        reOptions    = remoteExtras.get('options', [])
  2776
+                        reOptions.append('--nativeUI')
  2777
+                        remoteExtras['options'] = reOptions
  2778
+                        myextra['remoteExtras'] = remoteExtras
  2779
+                        factory_kwargs.update(myextra)
  2780
+                    else:
  2781
+                        factory_kwargs.update(extra)
  2782
+
2772 2783
                     builddir = "%s_%s_test-%s" % (branch, slave_platform, suite)
2773 2784
                     slavebuilddir= 'test'
2774 2785
                     factory = factory_class(**factory_kwargs)
@@ -3064,9 +3075,10 @@ def generateTalosReleaseBranchObjects(branch, branch_config, PLATFORMS, SUITES,
3064 3075
 
3065 3076
 
3066 3077
 def generateBlocklistBuilder(config, branch_name, platform, base_name, slaves) :
  3078
+    pf = config['platforms'].get(platform, {})
3067 3079
     extra_args = ['-b', config['repo_path']]
3068  
-    if config['product_name'] is not None:
3069  
-        extra_args.extend(['-p', config['product_name']])
  3080
+    if pf['product_name'] is not None:
  3081
+        extra_args.extend(['-p', pf['product_name']])
3070 3082
     if config['hg_username'] is not None:
3071 3083
         extra_args.extend(['-u', config['hg_username']])
3072 3084
     if config['hg_ssh_key'] is not None:
27  process/factory.py
@@ -4963,6 +4963,21 @@ def createPatches(self):
4963 4963
          description=['patcher:', 'create patches'],
4964 4964
          haltOnFailure=True
4965 4965
         ))
  4966
+        # XXX: For Firefox 10 betas we want the appVersion in the snippets to
  4967
+        #      show a version change with each one, so we change them from the
  4968
+        #      the appVersion (which is always "10") to the version, which has
  4969
+        #      a beta marker, like "10.0b2".
  4970
+        #      This is talked about in detail in bug 711275.
  4971
+        if self.productName == 'firefox' and self.version.startswith('10.0b'):
  4972
+            cmd = ['bash', WithProperties('%(toolsdir)s/release/edit-snippets.sh'),
  4973
+                   'appVersion', self.version]
  4974
+            cmd.extend(self.dirMap.keys())
  4975
+            self.addStep(ShellCommand(
  4976
+             name='switch_appv_in_snippets',
  4977
+             command=cmd,
  4978
+             haltOnFailure=True,
  4979
+             workdir=self.updateDir,
  4980
+            ))
4966 4981
 
4967 4982
     def createBuildNSnippets(self):
4968 4983
         command = ['python',
@@ -7062,13 +7077,9 @@ def __init__(self, OS, supportUrlBase, envName, buildBranch, branchName,
7062 7077
         self.addRunTestStep()
7063 7078
         self.addRebootStep()
7064 7079
 
7065  
-    def python25(self, platform):
7066  
-        if (platform.startswith('fedora')):
7067  
-            return "/home/cltbld/bin/python"
7068  
-        elif (platform == "leopard"):
7069  
-            return "/usr/bin/python"
7070  
-        elif (platform in ("snowleopard", "lion")):
7071  
-            return "/Users/cltbld/bin/python"
  7080
+    def pythonWithSimpleJson(self, platform):
  7081
+        if (platform in ("fedora", "fedora64", "leopard", "snowleopard", "lion")):
  7082
+            return "/tools/buildbot/bin/python"
7072 7083
         elif (platform in ('w764', 'win7', 'xp')):
7073 7084
             return "C:\\mozilla-build\\python25\\python.exe"
7074 7085
 
@@ -7337,7 +7348,7 @@ def addSetupSteps(self):
7337 7348
                 ))
7338 7349
                 self.addStep(ShellCommand(
7339 7350
                     name='retrieve specified talos.zip in talos.json',
7340  
-                    command=[self.python25(self.OS), 'talos_from_code.py', \
  7351
+                    command=[self.pythonWithSimpleJson(self.OS), 'talos_from_code.py', \
7341 7352
                             '--talos_json_url', \
7342 7353
                             WithProperties('%(repo_path)s/raw-file/%(revision)s/testing/talos/talos.json')],
7343 7354
                     workdir=self.workdirBase,

0 notes on commit 7ea9e82

Please sign in to comment.
Something went wrong with that request. Please try again.