Browse files

merge from default

--HG--
branch : production-0.8
  • Loading branch information...
2 parents 3aa38c7 + c6a1443 commit 95b3df6f6050555570a8ba9f7f1c35a3cce85d8f @jhford jhford committed Aug 16, 2011
Showing with 113 additions and 87 deletions.
  1. +1 −1 bin/try_mailer.py
  2. +85 −81 misc.py
  3. +24 −4 process/factory.py
  4. +3 −1 process/release.py
View
2 bin/try_mailer.py
@@ -112,7 +112,7 @@ def makeTryMessage(build, log_url):
log_url = log_url.replace('://stage', '://ftp')
text += "The full log for this %(task)s run is available at <a href=\"%(log_url)s\">%(log_url)s</a>.\n" % locals()
else:
- text += "Please check <a href=\"http://tbpl.mozilla.org/?tree=Try&rev=%(revision)s\">Tinderbox Pushlog</a> for your logs.\n" % locals()
+ text += "Please check <a href=\"http://tbpl.allizom.org/?tree=Try&usebuildbot=1&rev=%(revision)s\">Tinderbox Pushlog</a> for your logs.\n" % locals()
text = re.sub("\n", "<br>\n", text)
View
166 misc.py
@@ -687,34 +687,35 @@ def generateBranchObjects(config, name):
# Currently, each branch goes to a different tree
# If this changes in the future this may have to be
# moved out of the loop
- branchObjects['status'].append(TinderboxMailNotifier(
- fromaddr="mozilla2.buildbot@build.mozilla.org",
- tree=config['tinderbox_tree'],
- extraRecipients=["tinderbox-daemon@tinderbox.mozilla.org"],
- relayhost="mail.build.mozilla.org",
- builders=builders + nightlyBuilders + unittestBuilders + debugBuilders,
- logCompression="gzip",
- errorparser="unittest"
- ))
- # XULRunner builds
- branchObjects['status'].append(TinderboxMailNotifier(
- fromaddr="mozilla2.buildbot@build.mozilla.org",
- tree=config['xulrunner_tinderbox_tree'],
- extraRecipients=["tinderbox-daemon@tinderbox.mozilla.org"],
- relayhost="mail.build.mozilla.org",
- builders=xulrunnerNightlyBuilders,
- logCompression="gzip"
- ))
- # Code coverage builds go to a different tree
- branchObjects['status'].append(TinderboxMailNotifier(
- fromaddr="mozilla2.buildbot@build.mozilla.org",
- tree=config['weekly_tinderbox_tree'],
- extraRecipients=["tinderbox-daemon@tinderbox.mozilla.org"],
- relayhost="mail.build.mozilla.org",
- builders=coverageBuilders,
- logCompression="gzip",
- errorparser="unittest"
- ))
+ if not config.get('disable_tinderbox_mail'):
+ branchObjects['status'].append(TinderboxMailNotifier(
+ fromaddr="mozilla2.buildbot@build.mozilla.org",
+ tree=config['tinderbox_tree'],
+ extraRecipients=["tinderbox-daemon@tinderbox.mozilla.org"],
+ relayhost="mail.build.mozilla.org",
+ builders=builders + nightlyBuilders + unittestBuilders + debugBuilders,
+ logCompression="gzip",
+ errorparser="unittest"
+ ))
+ # XULRunner builds
+ branchObjects['status'].append(TinderboxMailNotifier(
+ fromaddr="mozilla2.buildbot@build.mozilla.org",
+ tree=config['xulrunner_tinderbox_tree'],
+ extraRecipients=["tinderbox-daemon@tinderbox.mozilla.org"],
+ relayhost="mail.build.mozilla.org",
+ builders=xulrunnerNightlyBuilders,
+ logCompression="gzip"
+ ))
+ # Code coverage builds go to a different tree
+ branchObjects['status'].append(TinderboxMailNotifier(
+ fromaddr="mozilla2.buildbot@build.mozilla.org",
+ tree=config['weekly_tinderbox_tree'],
+ extraRecipients=["tinderbox-daemon@tinderbox.mozilla.org"],
+ relayhost="mail.build.mozilla.org",
+ builders=coverageBuilders,
+ logCompression="gzip",
+ errorparser="unittest"
+ ))
# Try Server notifier
if config.get('enable_mail_notifier'):
@@ -754,27 +755,28 @@ def generateBranchObjects(config, name):
nomergeBuilders.extend(l10n_builders)
# This notifies all l10n related build objects to Mozilla-l10n
- branchObjects['status'].append(TinderboxMailNotifier(
- fromaddr="bootstrap@mozilla.com",
- tree=config['l10n_tinderbox_tree'],
- extraRecipients=["tinderbox-daemon@tinderbox.mozilla.org"],
- relayhost="mail.build.mozilla.org",
- logCompression="gzip",
- builders=l10n_builders,
- binaryURL=l10n_binaryURL
- ))
+ if not config.get('disable_tinderbox_mail'):
+ branchObjects['status'].append(TinderboxMailNotifier(
+ fromaddr="bootstrap@mozilla.com",
+ tree=config['l10n_tinderbox_tree'],
+ extraRecipients=["tinderbox-daemon@tinderbox.mozilla.org"],
+ relayhost="mail.build.mozilla.org",
+ logCompression="gzip",
+ builders=l10n_builders,
+ binaryURL=l10n_binaryURL
+ ))
- # We only want the builds from the specified builders
- # since their builds have a build property called "locale"
- branchObjects['status'].append(TinderboxMailNotifier(
- fromaddr="bootstrap@mozilla.com",
- tree=WithProperties(config['l10n_tinderbox_tree'] + "-%(locale)s"),
- extraRecipients=["tinderbox-daemon@tinderbox.mozilla.org"],
- relayhost="mail.build.mozilla.org",
- logCompression="gzip",
- builders=l10n_builders,
- binaryURL=l10n_binaryURL
- ))
+ # We only want the builds from the specified builders
+ # since their builds have a build property called "locale"
+ branchObjects['status'].append(TinderboxMailNotifier(
+ fromaddr="bootstrap@mozilla.com",
+ tree=WithProperties(config['l10n_tinderbox_tree'] + "-%(locale)s"),
+ extraRecipients=["tinderbox-daemon@tinderbox.mozilla.org"],
+ relayhost="mail.build.mozilla.org",
+ logCompression="gzip",
+ builders=l10n_builders,
+ binaryURL=l10n_binaryURL
+ ))
# Log uploads for dep l10n repacks
branchObjects['status'].append(SubprocessLogHandler(
@@ -884,15 +886,16 @@ def generateBranchObjects(config, name):
**extra_args
))
- branchObjects['status'].append(TinderboxMailNotifier(
- fromaddr="mozilla2.buildbot@build.mozilla.org",
- tree=config['packaged_unittest_tinderbox_tree'],
- extraRecipients=["tinderbox-daemon@tinderbox.mozilla.org"],
- relayhost="mail.build.mozilla.org",
- builders=test_builders,
- logCompression="gzip",
- errorparser="unittest"
- ))
+ if not config.get('disable_tinderbox_mail'):
+ branchObjects['status'].append(TinderboxMailNotifier(
+ fromaddr="mozilla2.buildbot@build.mozilla.org",
+ tree=config['packaged_unittest_tinderbox_tree'],
+ extraRecipients=["tinderbox-daemon@tinderbox.mozilla.org"],
+ relayhost="mail.build.mozilla.org",
+ builders=test_builders,
+ logCompression="gzip",
+ errorparser="unittest"
+ ))
branchObjects['status'].append(SubprocessLogHandler(
logUploadCmd,
@@ -1864,7 +1867,7 @@ def generateCCBranchObjects(config, name):
builders=[l10nNightlyBuilders['%s nightly' % b]['l10n_builder'] for b in l10nBuilders]
))
- # change sources - if try is enabled, tipsOnly will be true which makes
+ # change sources - if try is enabled, tipsOnly will be true which makes
# every push only show up as one changeset
# Skip https repos until bug 592060 is fixed and we have a https-capable HgPoller
if config['hgurl'].startswith('https:'):
@@ -2708,28 +2711,29 @@ def generateTalosBranchObjects(branch, branch_config, PLATFORMS, SUITES,
)
branchObjects['schedulers'].append(s)
- for tinderboxTree in branch_builders.keys():
- if len(branch_builders[tinderboxTree]):
- branchObjects['status'].append(TinderboxMailNotifier(
- fromaddr="talos.buildbot@build.mozilla.org",
- tree=tinderboxTree,
- extraRecipients=["tinderbox-daemon@tinderbox.mozilla.org",],
- relayhost="mail.build.mozilla.org",
- builders=branch_builders[tinderboxTree],
- useChangeTime=False,
- logCompression="gzip"))
- ### Unittests need specific errorparser
- for tinderboxTree in all_test_builders.keys():
- if len(all_test_builders[tinderboxTree]):
- branchObjects['status'].append(TinderboxMailNotifier(
- fromaddr="talos.buildbot@build.mozilla.org",
- tree=tinderboxTree,
- extraRecipients=["tinderbox-daemon@tinderbox.mozilla.org",],
- relayhost="mail.build.mozilla.org",
- builders=all_test_builders[tinderboxTree],
- useChangeTime=False,
- errorparser="unittest",
- logCompression="gzip"))
+ if not branch_config.get('disable_tinderbox_mail'):
+ for tinderboxTree in branch_builders.keys():
+ if len(branch_builders[tinderboxTree]):
+ branchObjects['status'].append(TinderboxMailNotifier(
+ fromaddr="talos.buildbot@build.mozilla.org",
+ tree=tinderboxTree,
+ extraRecipients=["tinderbox-daemon@tinderbox.mozilla.org",],
+ relayhost="mail.build.mozilla.org",
+ builders=branch_builders[tinderboxTree],
+ useChangeTime=False,
+ logCompression="gzip"))
+ ### Unittests need specific errorparser
+ for tinderboxTree in all_test_builders.keys():
+ if len(all_test_builders[tinderboxTree]):
+ branchObjects['status'].append(TinderboxMailNotifier(
+ fromaddr="talos.buildbot@build.mozilla.org",
+ tree=tinderboxTree,
+ extraRecipients=["tinderbox-daemon@tinderbox.mozilla.org",],
+ relayhost="mail.build.mozilla.org",
+ builders=all_test_builders[tinderboxTree],
+ useChangeTime=False,
+ errorparser="unittest",
+ logCompression="gzip"))
logUploadCmd = makeLogUploadCommand(branch, branch_config,
is_try=bool(branch=='try'),
@@ -2772,7 +2776,7 @@ def generateTalosReleaseBranchObjects(branch, branch_config, PLATFORMS, SUITES,
# Don't fetch symbols
branch_config['fetch_symbols'] = branch_config['fetch_release_symbols']
- return generateTalosBranchObjects(branch, branch_config, PLATFORMS, SUITES,
+ return generateTalosBranchObjects(branch, branch_config, PLATFORMS, SUITES,
ACTIVE_UNITTEST_PLATFORMS, factory_class)
View
28 process/factory.py
@@ -31,6 +31,7 @@
import buildbotcustom.misc_scheduler
import build.paths
import release.info
+import release.paths
reload(buildbotcustom.common)
reload(buildbotcustom.status.errors)
reload(buildbotcustom.steps.base)
@@ -45,6 +46,7 @@
reload(buildbotcustom.env)
reload(build.paths)
reload(release.info)
+reload(release.paths)
from buildbotcustom.status.errors import purge_error, global_errors, \
upload_errors
@@ -72,6 +74,8 @@
import buildbotcustom.steps.talos as talos_steps
from buildbot.status.builder import SUCCESS, FAILURE
+from release.paths import makeCandidatesDir
+
# limit the number of clones of the try repository so that we don't kill
# dm-vcview04 if the master is restarted, or there is a large number of pushes
hg_try_lock = locks.MasterLock("hg_try_lock", maxCount=20)
@@ -2588,6 +2592,7 @@ def addFilePropertiesSteps(self, filename=None, directory=None,
pass
def doUpload(self, postUploadBuildDir=None, uploadMulti=False):
+ info_txt = '%s_info.txt' % self.complete_platform
# Make sure the complete MAR has been generated
if self.enableUpdatePackaging:
self.addStep(ShellCommand(
@@ -2600,16 +2605,15 @@ def doUpload(self, postUploadBuildDir=None, uploadMulti=False):
self.addStep(ShellCommand(
name='echo_buildID',
command=['bash', '-c',
- WithProperties('echo buildID=%(buildid)s > ' + \
- '%s_info.txt' % self.platform)],
+ WithProperties('echo buildID=%(buildid)s > ' + info_txt)],
workdir='build/%s/dist' % self.mozillaObjdir
))
uploadEnv = self.env.copy()
uploadEnv.update({'UPLOAD_HOST': self.stageServer,
'UPLOAD_USER': self.stageUsername,
'UPLOAD_TO_TEMP': '1',
- 'UPLOAD_EXTRA_FILES': '%s_info.txt' % self.platform})
+ 'UPLOAD_EXTRA_FILES': info_txt})
if self.stageSshKey:
uploadEnv['UPLOAD_SSH_KEY'] = '~/.ssh/%s' % self.stageSshKey
@@ -2652,6 +2656,21 @@ def doUpload(self, postUploadBuildDir=None, uploadMulti=False):
sb=self.use_scratchbox,
))
+ if self.productName == 'fennec' and not uploadMulti:
+ cmd = ['scp']
+ if self.stageSshKey:
+ cmd.append('-oIdentityFile=~/.ssh/%s' % self.stageSshKey)
+ cmd.append(info_txt)
+ candidates_dir = makeCandidatesDir(self.productName, self.version,
+ self.buildNumber)
+ cmd.append('%s@%s:%s' % (self.stageUsername, self.stageServer,
+ candidates_dir))
+ self.addStep(RetryingShellCommand(
+ name='upload_buildID',
+ command=cmd,
+ workdir='build/%s/dist' % self.mozillaObjdir
+ ))
+
# Send to the "release" branch on talos, it will do
# super-duper-extra testing
talosBranch = "release-%s-%s-talos" % (self.branchName, self.complete_platform)
@@ -4993,7 +5012,8 @@ def getUpdateVerifyBumpCommand(self, platform):
'--long-version=%s' % self.longVersion,
'-n', str(self.buildNumber), '-a', self.ausServerUrl,
'-s', self.stagingServer, '-c', verifyConfigPath,
- '-d', oldCandidatesDir, '-l', 'old-shipped-locales',
+ '-d', oldCandidatesDir, '-l', 'shipped-locales',
+ '--old-shipped-locales', 'old-shipped-locales',
'--pretty-candidates-dir']
if self.binaryName:
bcmd.extend(['--binary-name', self.binaryName])
View
4 process/release.py
@@ -71,6 +71,8 @@ def generateReleaseBranchObjects(releaseConfig, branchConfig,
all_slaves.extend(platform_slaves)
if 'win' not in p:
unix_slaves.extend(platform_slaves)
+ unix_slaves = [x for x in set(unix_slaves)]
+ all_slaves = [x for x in set(all_slaves)]
signedPlatforms = releaseConfig.get('signedPlatforms', ('win32',))
@@ -1115,7 +1117,7 @@ def majorUpdateVerifyBuilders(platform):
builders.append({
'name': builderPrefix('updates'),
- 'slavenames': branchConfig['platforms']['linux']['slaves'],
+ 'slavenames': branchConfig['platforms']['linux']['slaves'] + branchConfig['platforms']['linux64']['slaves'],
'category': builderPrefix(''),
'builddir': builderPrefix('updates'),
'slavebuilddir': reallyShort(builderPrefix('updates')),

0 comments on commit 95b3df6

Please sign in to comment.