Firefox 3.0b5:BuildNotes
From MozillaWiki
Contents
- 1 Build Engineers
- 2 Bonsai queries
- 3 Bugs
- 4 Tags
- 5 Build data
- 6 Notes
- 6.1 RC1
- 6.2 RC2
- 6.2.1 Prestage
- 6.2.2 Tag
- 6.2.3 Source
- 6.2.4 Build
- 6.2.5 Sign
- 6.2.6 L10nVerify
- 6.2.7 Generate Updates
- 6.2.8 Publish Updates to Test Channel
- 6.2.9 update Verify
- 6.2.10 Stage
- 6.2.11 Sign Installers
- 6.2.12 Update Bouncer
- 6.2.13 Final Verification
- 6.2.14 Push to mirrors
- 6.2.15 Publish Updates to Beta Channel
Build Engineers
joduinn
Bonsai queries
Last checkins for rc1:
- cvsroot - 2008-03-25 22:40 PDT
- l10n - 2008-03-20 04:00 PDT
Bugs
Tracking bug for Firefox 3.0beta5 bug 424242
(yes, yes, the answer to the ultimate question!)
Tags
Module | Tag | Pull date |
cvsroot/mozilla | GECKO19b5_20080326_RELBRANCH | HEAD @ 2008-03-25 22:40 PDT |
FIREFOX_3_0b5_RC1 | GECKO19b5_20080326_RELBRANCH @ 2008-03-25 22:40 PDT | |
FIREFOX_3_0b5_RC2 | GECKO19b5_20080326_RELBRANCH @ 2008-03-26 17:36 PDT | |
FIREFOX_3_0b5_RELEASE | GECKO19b5_20080326_RELBRANCH @ 2008-03-26 17:36 PDT | |
l10n/l10n | GECKO19b5_20080326_RELBRANCH | HEAD @ 2008-03-20 04:00 PDT |
FIREFOX_3_0b5_RC1 | GECKO19b5_20080326_RELBRANCH @ 2008-03-20 04:00 PDT | |
FIREFOX_3_0b5_RC2 | GECKO19b5_20080326_RELBRANCH @ 2008-03-26 04:45 PDT | |
FIREFOX_3_0b5_RELEASE | GECKO19b5_20080326_RELBRANCH @ 2008-03-26 04:45 PDT |
Build data
Type | Build ID | SHA1 | Push date | Build machine |
[Windows installer] | en-US & l10n:fx-win32-1.9-slave2 | |||
[Mac compressed] | en-US & l10n:fx-mac-1.9-slave2 | |||
[Linux compressed] | en-US & l10n:fx-linux-1.9-slave2 |
Notes
RC1
Bootstrap tag: RELEASE_AUTOMATION_M8_1
- Make sure the new patcher config changes are used. patcherToolsRev should be UPDATE_PACKAGING_R3. snippets should have prettyVersion (3 Beta 5) as their appv. Patcher-created directory structure should use unpretty version (3.0b5).
Setup before starting:
- used existing version bump bug to attached diff for bootstrap.cfg and master.cfg
- make sure /builds/buildbot/trunk-automation-master/bootstrap.cfg is updated
- make sure /builds/buildbot/trunk-automation-master/master.cfg is updated, and comment out the schedulers for nightly builds (c['schedulers'].append(nightly_scheduler), c['schedulers'].append(depend_scheduler))
- restart the master
- compare nightly and release mozconfig/tinder-config.pl files, merge any desired changes
- On fx-mac-1.9-slave2, fx-win32-1.9-slave2, fx-linux-1.9-slave2
- REMEMBER to use VNC when restarting mac slave
- verify that both mac and linux have "xhost +" since last reboot
- update tinderbox to RELEASE_AUTOMATION_M8_1
- FIXME update should be automatic - bug 397554
- cd /builds/tinderbox/mozilla/tools/tinderbox
- cvs up -r RELEASE_AUTOMATION_M8_1
- on win32, then copy to /e/fx19rel/. Then in /e/fx19rel/, copy post-mozilla-rel.pl to post-mozilla.pl
- remove the contents of /builds/verify/*
- FIXME should be automatically backed up or removed - bug 413178
- restart buildbot
- On production-1.9-master
- remove the contents of /builds/updates/
- remove private and public areas
- rm -rf /data/cltbld/firefox-*
- FIXME should not be needed - bug 415970
- rm -rf /builds/tags/* - did not do this, plenty of space
- FIXME should not be needed - bug 415970
- in /home/ftp/pub/firefox/nightly/, remove all except the 3.x-candidates directory for the previous release
- rm -rf /home/ftp/pub/firefox/nightly/2007*
- FIXME should not be needed - bug 415970
- rm -rf /data/cltbld/firefox-*
- kick off buildbot (run as cltbld):
buildbot sendchange --username=joduinn --master=localhost:9989 -m "Firefox 3.0 Beta 5 RC1" release
Prestage
- nothing to do
Tag
- nothing to do
Source
- nothing to do
Build
- linux, mac produced without any human intervention
- win32 failed out because of diskspace on win32 slave. Turns out some space being used by 1.9 nightlies caused this, so removing /e/fx19nit did the trick. Restarted win32 builds
- Abort because of bug 425289. Respin declared.
RC2
Setup before starting: Mostly already done as part of prep for RC1.
- On production-1.9-master
- remove the contents of /builds/updates/
- remove private and public areas
- rm -rf /data/cltbld/firefox-*
- FIXME should not be needed - bug 415970
- rm -rf /builds/tags/* - did not do this, plenty of space
- FIXME should not be needed - bug 415970
- in /home/ftp/pub/firefox/nightly/, remove all except the 3.x-candidates directory for the previous release
- rm -rf /home/ftp/pub/firefox/nightly/2007*
- FIXME should not be needed - bug 415970
- rm -rf /data/cltbld/firefox-*
- kick off buildbot (run as cltbld):
buildbot sendchange --username=joduinn --master=localhost:9989 -m "Firefox 3.0 Beta 5 RC2" release
Prestage
- automated - nothing to do
Tag
- nothing to do
Source
- nothing to do
Build
- linux, mac and unsigned win32 produced without any human intervention
- nothing to do
Sign
- Signing doc
- Note: clear space on production-1.9-master so that later stage step does not run out of space
L10nVerify
- Over culled on production-1.9-master, so l10n verify failed to pull some 3.0b4 files (twice). Fixed, then removed 3.0b4 candidates to make space for staging.
Generate Updates
- Fast update generation is enabled. First time failed out because of bug 425462 but fixed. Fast update mode remains enabled and now trying again.
Publish Updates to Test Channel
- FIXME: PatcherConfig made beta like betatest not releasetest. Posted patch in bug 424242, recreated/repushed snippets (20080401-Firefox-3.0b5{,-test})
- ensure that new test snippets are the same as old
- no changes expected
diff -r 20080327-Firefox-3.0b5-test 20080401-Firefox-3.0b5-test
- ensure that the new production snippets only change in beta
diff -ru 20080327-Firefox-3.0b5 20080401-Firefox-3.0b5 | less
- verify beta snippets versus betatest snippets
- only URL (download vs. stage) and appv ("3 Beta 5" vs. "3 Beta 5rc1")
- FIXME automate this in bug 409449
cd /opt/aus2/snippets/staging/20080401-Firefox-3.0b5/ find -type d -iregex '.*beta.*' | perl -nle '$a = $_; $a =~ s/beta/betatest/; system("diff -r -u $_ ../20080401-Firefox-3.0b5-test/$a");' 2>&1 | tee /tmp/beta.log
- verify beta snippets versus releasetest snippets
- no changes expected
- FIXME automate this in bug 409449
cd /opt/aus2/snippets/staging/20080401-Firefox-3.0b5/ find -type d -iregex '.*beta.*' | perl -nle '$a = $_; $a =~ s/beta/releasetest/; system("diff -r -u $_ ../20080401-Firefox-3.0b5-test/$a");'
update Verify
- mac verify failed on ar, ga-IE and he locales, because they are not shipped. ok to ignore these errors.
- linux verify failed on ga-IE because it was not shipped. ok to ignore this error.
- win32 verify failed on
- ga-IE because it was not shipped. ok to ignore this error
- bug 404340 A long standing bug about how checksums show up different in updatedinstall-vs-cleaninstall. Not a blocker, we've shipped with this for a while now.
Stage
- automated - nothing to do.
Sign Installers
- NOTE: this was not done: "pull stage:/data/cltbld/firefox-3.0b2/batch1/stage-signed/"
- Done manually using these installer-signing-instructions here
- push signed bits back to same location on stage
- complete stage-merged:
# on stage cd /data/cltbld/firefox-3.0b5/ rsync -av batch1/mar/ stage-merged/ rsync -av batch1/stage-signed/ stage-merged/
- Create MD5 and SHA1 checksum files
# on stage cd /data/cltbld/firefox-3.0b5/stage-merged/ ~/bin/checksum-files .
- Fix permissions & ownership (on the two SUM files, and the detached sigs)
chown -R cltbld:firefox . chmod 644 *SUMS
Update Bouncer
- done manually.
Final Verification
- manually verified files under /data/cltbld/firefox-3.0b5/stage-merged/
- looked ok.
-
VERIFYFIX verified that filename problems from 3.b2 have been fixed. bug 409394- verified ok.
Push to mirrors
- push the stage-merged directory to the releases area:
# on stage rsync -av /data/cltbld/firefox-3.0b5/stage-merged/ /home/ftp/pub/firefox/releases/3.0b5/
- TODO: note that in /data/cltbld, the "firefox-3.0b5" directory should probably be "firefox-3.0b5rc1". This would make it easier to confirm changes between RCs. This is done for some releases not all; should we always do this?
Publish Updates to Beta Channel
In case you need to cancel/abort updates, the quickest way to do this is here
- on Mac build machines, run quick updateverify test for releastest channel
cd /builds/verify/firefox-3.0b5/updates cat moz19-firefox-*.cfg > releasetest.cfg sed -i.bak 's/betatest/releasetest/' releasetest.cfg ./verify.sh -t releasetest.cfg 2>&1 | tee releasetest.log # upload result to build.m.o/logs
Should be all HTTP/200 OK results e.g.:
grep 'HTTP' releasetest.log | grep -v Found | grep -v 200
- On aus2-staging, ensure that releasetest channel contents match beta channel contents (we also checked this earlier)
cd /opt/aus2/snippets/staging/20080401-Firefox-3.0b5 find -type d -iregex '.*beta.*' | perl -nle '$a = $_; $a =~ s/beta/releasetest/; system("diff -r -u $_ ../20080401-Firefox-3.0b5-test/$a");'
No difs found - which is correct.
- While waiting for formal "go", backup existing beta channel
# login to aus2-staging $ sudo su - cltbld # make sure using latest version of scripts $ cvs -d :pserver:anonymous@cvs-mirror.mozilla.org:/cvsrootget -d bin mozilla/tools/release/bin/ cvs checkout: Updating bin $ cd /opt/aus2/snippets/staging # note the required parameter must match what will be used with pushsnip below. $ ~/bin/backupsnip 20080401-Firefox-3.0b5
- Once QA and Website gives formal "go" to put updates on beta channel
# login to aus2-staging $ sudo su - cltbld # make sure using latest version of scripts $ cvs -d :pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot get -d bin mozilla/tools/release/bin/ cvs checkout: Updating bin $ cd /opt/aus2/snippets/staging $ ~/bin/pushsnip 20080401-Firefox-3.0b5