use release automation for nightly builds b=401936 r=bhearsum

This commit is contained in:
rhelmer%mozilla.com 2007-12-11 20:19:05 +00:00
Родитель b8884b0e7e
Коммит ccd15f6875
2 изменённых файлов: 167 добавлений и 4 удалений

Просмотреть файл

@ -1,7 +1,7 @@
# -*- python -*-
# ex: set syntax=python:
# This is the staging buildmaster config file for Mozilla Firefox 1.8 (aka Firefox 2.0.0.x).
# This is the staging buildmaster config file for Mozilla Firefox 1.9 (aka Firefox 3.0.0.x).
# Use shorter alias to save typing.
c = BuildmasterConfig = {}
@ -29,6 +29,17 @@ c['slavePortnum'] = 9989
c['sources'] = []
from buildbot.changes import bonsaipoller
c['sources'].append(
bonsaipoller.BonsaiPoller(
bonsaiURL = 'http://bonsai.mozilla.org',
#bonsaiURL = 'http://buildbot.roberthelmer.com',
module = 'PhoenixTinderbox',
branch = 'HEAD',
pollInterval = 1 * 60,
)
)
####### SCHEDULERS
@ -39,6 +50,33 @@ from buildbot.scheduler import Dependent
from buildbot.changes.pb import PBChangeSource
c['schedulers'] = []
# For nightly clobber only
clobber_scheduler = Nightly(
name='nightly',
branch='HEAD',
hour=[3],
builderNames=[
'linux_clobber',
'win32_clobber',
'macosx_clobber',
]
)
# For nightly depend only
depend_scheduler = Scheduler(
name='depend',
treeStableTimer=0,
branch='HEAD',
builderNames=[
'linux_dep_build',
'win32_dep_build',
'macosx_dep_build',
]
)
# For release only
tag_scheduler = Scheduler(name="tag", branch=None,
treeStableTimer=0, builderNames=["tag"])
build_scheduler = Scheduler(name="build", branch="build",
@ -67,6 +105,9 @@ stage_depscheduler = Dependent(name="stage_dep", upstream=update_depscheduler,
"macosx_update_verify",
"stage"])
c['schedulers'].append(nightly_scheduler)
c['schedulers'].append(depend_scheduler)
c['schedulers'].append(tag_scheduler)
c['schedulers'].append(build_scheduler)
c['schedulers'].append(update_scheduler)
@ -90,6 +131,43 @@ from buildbot.process import factory
from buildbot.steps.shell import ShellCommand
from buildbot.steps.transfer import FileDownload
# Do not reuse buildslaves.
linux_lock = locks.SlaveLock("linux", maxCount=1)
macosx_lock = locks.SlaveLock("macosx", maxCount=1)
win32_lock = locks.SlaveLock("win32", maxCount=1)
depBuildFactory = factory.BuildFactory()
depBuildFactory.addStep(ShellCommand, description='clean checkout',
workdir='.', command=['rm', '-rfv', 'build'],
haltOnFailure=1)
depBuildFactory.addStep(ShellCommand, description='checkout', workdir='.',
command=['cvs', '-d', cvsroot, 'co', '-r', automation_tag,
'-d', 'build', cvsmodule], haltOnFailure=1)
depBuildFactory.addStep(ShellCommand, description='clean logs area',
command=['make', 'clean_logs'], haltOnFailure=1)
depBuildFactory.addStep(FileDownload, mastersrc="nightly-bootstrap.cfg",
slavedest="bootstrap.cfg", workdir="build"),
depBuildFactory.addStep(ShellCommand, description='unit tests',
command=['make', 'test'], haltOnFailure=1)
depBuildFactory.addStep(ShellCommand, description='Build', workdir='build',
command=['perl', './release', '-o', 'Build'],
timeout=36000, haltOnFailure=1, env={'CVS_RSH': 'ssh'})
c['builders'].append({ 'name': 'linux_dep_build',
'slavename': 'fx-linux-slave1',
'builddir': 'linux_dep_build',
'locks': [linux_lock],
'factory': depBuildFactory })
c['builders'].append({ 'name': 'win32_dep_build',
'slavename': 'fx-win32-slave1',
'builddir': 'win32_dep_build',
'locks': [win32_lock],
'factory': depBuildFactory })
c['builders'].append({ 'name': 'macosx_dep_build',
'slavename': 'bm-xserve14',
'builddir': 'macosx_dep_build',
'locks': [macosx_lock],
'factory': depBuildFactory })
tagFactory = factory.BuildFactory()
tagFactory.addStep(ShellCommand, description='clean checkout',
workdir='.', command=['rm', '-rfv', 'build'],
@ -208,11 +286,14 @@ buildFactory.addStep(ShellCommand, description='Repack (announce)',
timeout=36000, env={'CVS_RSH': 'ssh'}, haltOnFailure=1)
c['builders'].append({ 'name': 'linux_build', 'slavename': 'fx-linux-slave1',
'builddir': 'linux_build', 'factory': buildFactory })
'locks': [linux_lock], 'builddir': 'linux_build',
'factory': buildFactory })
c['builders'].append({ 'name': 'win32_build', 'slavename': 'fx-win32-slave1',
'builddir': 'win32_build', 'factory': buildFactory })
'locks': [win32_lock], 'builddir': 'win32_build',
'factory': buildFactory })
c['builders'].append({ 'name': 'macosx_build', 'slavename': 'bm-xserve14',
'builddir': 'macosx_build', 'factory': buildFactory })
'locks': [macosx_lock], 'builddir': 'macosx_build',
'factory': buildFactory })
signFactory = factory.BuildFactory()
signFactory.addStep(ShellCommand, description='clean checkout',

Просмотреть файл

@ -0,0 +1,82 @@
version = nightly
milestone = 1.9b2
# _RCn and _RELEASE will be appended as-needed
productTag = FIREFOX_3_0b2
# Branch name and pull dates to use for base tag
branchTag = HEAD
#RelbranchOverride = GECKO190_20071207_RELBRANCH
pullDate = 2007-12-07 18:00 PST
l10n_pullDate = 2007-12-07 18:00 PST
rc = 1
# oldVersion and oldRc refer to the previous release
oldVersion = 3.0b1
oldRc = 3
appName = browser
product = firefox
# Absolute path to tinderbox build directory
# The win32 ones are kept short because of a long path issue detailed in
# bug# 400846
linux_buildDir = /builds/tinderbox/Fx-Mozilla1.9-Nightly
macosx_buildDir = /builds/tinderbox/Fx-Mozilla1.9-Nightly
win32_buildDir = /e/fx19nit
linux_l10n_buildDir = /builds/tinderbox/Fx-Mozilla1.9-l10n-Nightly
macosx_l10n_buildDir = /builds/tinderbox/Fx-Mozilla1.9-l10n-Nightly
win32_l10n_buildDir = /e/fx19l10nit
# Absolute path to store bootstrap's logs
linux_logDir = /builds/logs.nightly
macosx_logDir = /builds/logs.nightly
win32_logDir = /builds/logs.nightly
mozillaCvsroot = staging-trunk-automation.build.mozilla.org:/builds/cvsmirror/cvsroot
l10nCvsroot = staging-trunk-automation.build.mozilla.org:/builds/cvsmirror/l10n
mofoCvsroot = staging-trunk-automation.build.mozilla.org:/builds/cvsmirror/mofo
anonCvsroot = staging-trunk-automation.build.mozilla.org:/builds/cvsmirror/cvsroot
# private staging area
stageHome = /data/cltbld
updateDir = /builds/updates
verifyDir = /builds/verify
tagDir = /builds/tags
configBumpDir = /builds/config
# Build platform, as specified by tinderbox
linux_buildPlatform = Linux_2.6.18-8.el5_Depend
macosx_buildPlatform = Darwin_8.8.4_Depend
win32_buildPlatform = WINNT_5.2_Depend
linux_l10n_buildPlatform = Linux_2.6.18-8.el5_Depend
macosx_l10n_buildPlatform = Darwin_8.8.4_Depend
win32_l10n_buildPlatform = WINNT_5.2_Depend
from = staging-bootstrap@mozilla.org
to = rhelmer@mozilla.com
cc = nobody@mozilla.com
patcherConfig = moz19-patcher2.cfg
# Tag to use for building MAR/MBSDIFF and other update tools
patcherToolsRev = MOZILLA_1_9a8_RELEASE
linux_verifyConfig = moz19-firefox-linux.cfg
win32_verifyConfig = moz19-firefox-win32.cfg
macosx_verifyConfig = moz19-firefox-mac.cfg
blat = /d/mozilla-build/blat261/full/blat.exe
sendmail = /usr/sbin/sendmail
# dump Log output to stdout
dumpLogs = 1
# symbol server variables
symbolServer = staging-trunk-automation.build.mozilla.org
symbolServerUser = cltbld
symbolServerPath = /data/symbols
symbolServerKey = /home/cltbld/.ssh/id_dsa
# username and server to push update snippets to
ausUser = cltbld
ausServer = staging-trunk-automation.build.mozilla.org
ausServerUrl = http://staging-trunk-automation.build.mozilla.org
buildTree = MozillaTest
# where QA updates/builds go
stagingUser = cltbld
stagingServer = staging-trunk-automation.build.mozilla.org
externalStagingUser = cltbld
externalStagingServer = fx-linux-1.9-slave1.build.mozilla.org
# where beta updates/builds go
ftpServer = staging-trunk-automation.build.mozilla.org
# where release updates/builds go
bouncerServer = staging-trunk-automation.build.mozilla.org
# username and server to push builds
sshUser = cltbld
sshServer = staging-trunk-automation.build.mozilla.org
useTalkback = 0
useCvsCompression = 1