Releases/Firefox 3.0.2:BuildNotes
Contents
- 1 Build Engineers
- 2 Bonsai queries
- 3 Tags
- 4 Build data
- 5 Notes
- 5.1 Build 1
- 5.2 Build 2
- 5.3 Build 3
- 5.4 Build 4
- 5.5 Build5
- 5.6 Build6
- 5.6.1 Tag
- 5.6.2 Source
- 5.6.3 Build
- 5.6.4 Repack
- 5.6.5 Sign
- 5.6.6 L10nVerify
- 5.6.7 Generate Updates
- 5.6.8 Publish Updates to Test Channels (betatest & releasetest)
- 5.6.9 Update Verify
- 5.6.10 Stage
- 5.6.11 Push to beta channel
- 5.6.12 Sign Installers
- 5.6.13 Update Bouncer
- 5.6.14 Push to mirrors
- 5.6.15 Final Verification
- 5.6.16 Publish Updates to Release Channel
- 5.6.17 Release
Build Engineers
joduinn
Version/config bump bug
Bonsai queries
Updated CVS Tags devmo page.
Tags
Build 1:
Module | Branch | Tag | Pull date |
cvsroot/mozilla | HEAD | FIREFOX_3_0_2_BUILD1 | 2008-08-27 01:31 PDT |
l10n/l10n | HEAD | FIREFOX_3_0_2_BUILD1 | 2008-08-27 01:31 PDT |
Build 2:
Module | Branch | Tag | Pull date |
cvsroot/mozilla | GECKO190_20080827_RELBRANCH | FIREFOX_3_0_2_BUILD2 | N/A |
l10n/l10n | GECKO190_20080827_RELBRANCH | FIREFOX_3_0_2_BUILD2 | N/A |
Build 3:
Module | Branch | Tag | Pull date |
cvsroot/mozilla | GECKO190_20080827_RELBRANCH | FIREFOX_3_0_2_BUILD3 | N/A |
l10n/l10n | GECKO190_20080827_RELBRANCH | FIREFOX_3_0_2_BUILD3 | N/A |
Build 4:
Module | Branch | Tag | Pull date |
cvsroot/mozilla | GECKO190_20080827_RELBRANCH | FIREFOX_3_0_2_BUILD4 | N/A |
l10n/l10n | GECKO190_20080827_RELBRANCH | FIREFOX_3_0_2_BUILD4 | N/A |
Build 5:
Module | Branch | Tag | Pull date |
cvsroot/mozilla | GECKO190_20080827_RELBRANCH | FIREFOX_3_0_2_BUILD5 | N/A |
l10n/l10n | GECKO190_20080827_RELBRANCH | FIREFOX_3_0_2_BUILD5 | N/A |
Build 6:
Module | Branch | Tag | Pull date |
cvsroot/mozilla | GECKO190_20080827_RELBRANCH | FIREFOX_3_0_2_BUILD6 | N/A |
l10n/l10n | GECKO190_20080827_RELBRANCH | FIREFOX_3_0_2_BUILD6 | N/A |
Build data
Type | Build ID | SHA1 | Push date | Build machine |
[Windows installer/zip] | fx-win32-1.9-slave2 | |||
[Mac compressed] | fx-mac-1.9-slave2 | |||
[Linux compressed] | fx-linux-1.9-slave2 |
Notes
Last minute discovery of bug 380994comment#25, and bug 360529comment#60 were both discovered *before* builds started, but delayed "formal go to build".
Build 1
Bootstrap Tag: RELEASE_AUTOMATION_M11
Setup before starting:
- Updated master.cfg, bootstrap.cfg. Retagged bootstrap.cfg.
- On the slaves:
- ran 'DISPLAY=:0 xhost +' to make sure linux AliveTest works.
- remove /builds/verify/firefox-3.0.1
- update tinderbox to RELEASE_AUTOMATION_M10
- For win32:
cd /e/builds/tinderbox/mozilla/tools/tinderbox cvs up -r RELEASE_AUTOMATION_M11 for dir in fx19rel fx19l10nrel xr19rel; do cd /e/$dir; for f in `ls *.pl *.html INSTALL README | grep -v tinder-config.pl`; do cp -pv /e/builds/tinderbox/mozilla/tools/tinderbox/$f .; done cp -pv post-mozilla-rel.pl post-mozilla.pl done
- On the linux slave, removed:
- /builds/updates/firefox-3.0.1 and /builds/updates/3.0.2-test
- /builds/source/*
- /data/cltbld/thunderbird-3.0a2*
- On the mac slave, removed:
- /builds/tinderbox/Tb-Mozilla1.9-Release/Darwin_8.8.4_Depend
- /builds/tinderbox/Tb-Mozilla1.9-l10n-Release/Darwin_8.8.4_Depend
- /builds/tinderbox/Xr-Mozilla1.9-Release/Darwin_8.8.4_Depend
- On the linux slave, removed:
- Space on slaves before starting:
- fx-linux-1.9-slave2: 24G on /builds
- fx-mac-1.9-slave2: 24G on /
- fx-win32-1.9-slave2: 17G on d:, 5G on e: (disk heavy work is done on d, eg update_verify. build/repack is done on e, but mostly just overwrites existing data)
- Gulped, and kicked off automation:
buildbot sendchange --username=bhearsum --master=localhost:9989 -m"Firefox 3.0.2build1 release" gogogo
Tag
Automated, no problems.
Source
Automated, no problems.
respin declared for bug 452385, follow up regression fix to bug 433340
Build 2
Code errors were found after we tagged for build 1, therefore we had to spin a build 2.
Bootstrap Tag: RELEASE_AUTOMATION_M11
- Landed bootstrap bumps for the respin
Tag
Automated, no problems.
Source
Automated, no problems
Build
Automated, no problems.
Repack
No problems on linux and mac. Win32 failed out in Repack::Execute because the E: drive was full. It had finished the repacks, but failed to push to stage. Cleared space (deleted the Tb and Xr release build directories) and restarted from Repack::Execute.
Sign
- Signing bailed out during 'ro' with this error:
*** Resign list hit; resigning /home/cltsign/signing-work/firefox-3.0.2/tmp/RepackExe-JeG9pR/localized/uninstall/helper.exe... Signing /home/cltsign/signing-work/firefox-3.0.2/tmp/RepackExe-JeG9pR/localized/uninstall/helper.exe... Error: Invalid timestamp http address Error: TimeStamping Failed. Result = 80070001, (-2147024895) Failed to sign /home/cltsign/signing-work/firefox-3.0.2/tmp/RepackExe-JeG9pR/localized/uninstall/helper.exe; bailing
respin declared for bug 441087
Build 3
Tag
No Problems
Source
No problems
Build
No problems
Repack
No problems
Sign
no problems
L10nVerify
L10nverify spewed tons of output from updater.ini differences. It turns out that https://bugzilla.mozilla.org/show_bug.cgi?id=446527 busted updater.ini on linux and mac. There was win32 about as well, which was completely legitimate (because Locale= was newly added to updater.ini for win32).
respin declared for bug 446527
Build 4
Tag
- Automated, no problems.
Source
- Automated, no problems.
Build
- Automated, no problems.
Repack
- Automated, no problems.
Sign
instructions
Hit timestamp problem again. To work-around, did the following (from https://bugzilla.mozilla.org/show_bug.cgi?id=415966#c25):
mkdir signed-build4-partial unsigned-build4-partial cp signed-build4/*en-US* signed-build4-partial/ cp unsigned-build4/*en-US* unsigned-build4-partial/ # copied everything from it -> zh-TW from unsigned-build4 to unsigned-build4-partial perl ./signing/sign-release.pl -o signed-build${BUILD}-partial -M dir -d unsigned-build${BUILD}-partial -a ${PRODUCT} --release ${TAG} -p 2>&1 | tee -a win32_signing_build${BUILD}.log # to merge the signed builds back together rsync -av signed-build4-partial/ signed-build4/ # then push the builds back to stage (instructions on the signing doc)
L10nVerify
Some string changes in updater.ini - this is legitimate.
Generate Updates
- updates::execute has been run, automation needs to be restarted from updates::push (after 2.0.0.17 test snippets are done being pushed)
- locally modified master.cfg to skip over updates::execute and start at updates::push. Now in progress.
Publish Updates to Test Channels (betatest & releasetest)
- manually forced step from waterfall. No problems, worked fine.
Update Verify
Stage
- manually forced step from waterfall. No problems, worked fine.
respin declared because of bug 453227
Build5
Manual cleanup skipped. Had fun restarting master because master.cfg was accidently refreshed from cvs earlier this morning, losing all the passwords. Logged into production-1.9-master, as buildbot, and ran the following:
buildbot sendchange --username=joduinn --master=localhost:9989 -m"Firefox 3.0.2build5 release" gogogo
Tag
- Automated, no problems.
Source
- Automated, no problems.
Build
- Automated, no problems.
Repack
- Automated, no problems.
Sign
L10nVerify
- Automated, no problems. Expected fails for gu-IN during the FF3.0betas
Generate Updates
- Automated, no problems.
Publish Updates to Test Channels (betatest & releasetest)
- Automated, no problems.
Update Verify
- Automated, no problems.
Stage
- Automated, no problems.
Push to beta channel
While waiting for QA to give "ok", on aus2-staging do:
# put snippets on beta $ sudo su - cltbld # make sure using latest version of scripts in mozilla/tools/release/bin/ $ cd bin $ cvs update . $ cd /opt/aus2/snippets/staging # note the required parameter must match what will be used with pushsnip below. $ time ~/bin/backupsnip 20080908-Firefox-3.0.2-beta Running /bin/tar cfvj /opt/aus2/snippets/backup/20080910-1-pre-20080908-Firefox-3.0.2-beta.tar.bz2 . real 30m49.454s user 0m34.069s sys 0m37.876s $ $ time ~/bin/pushsnip 20080908-Firefox-3.0.2-beta sent 858677 bytes received 49674 bytes 21372.96 bytes/sec total size is 687093 speedup is 0.76 real 0m42.322s user 0m0.051s sys 0m4.122s
Respin declared for bug 454406, bug 443918 and bug 455283
Build6
Manual cleanup skipped. Logged into production-1.9-master, as buildbot, and ran the following:
buildbot sendchange --username=joduinn --master=localhost:9989 -m"Firefox 3.0.2build6 release" pleasenomorerespins
Tag
- Automated, no problems.
Source
- Automated, no problems.
Build
- Automated, no problems.
Repack
- Automated, no problems.
Sign
Signing failed out on 'de' with:
Error: Invalid timestamp http address Error: TimeStampign Failed. Result = 80070001, (-2147024895)
To work-around, did the following (from https://bugzilla.mozilla.org/show_bug.cgi?id=415966#c25):
mkdir signed-build6-partial unsigned-build6-partial cp signed-build6/*en-US* signed-build6-partial/ cp unsigned-build6/*en-US* unsigned-build6-partial/ # copied everything from 'de' -> 'zh-TW' from unsigned-build6 to unsigned-build6-partial perl ./signing/sign-release.pl -o signed-build${BUILD}-partial -M dir -d unsigned-build${BUILD}-partial -a ${PRODUCT} --release ${TAG} 2>&1 | tee -a win32_signing_build${BUILD}.log # to merge the signed builds back together rsync -av signed-build6-partial/ signed-build6/ # then push the builds back to stage (instructions on the signing doc)
L10nVerify
Generate Updates
Need to bring people who already updated to 3.0.2 build5 up to build6, so do this (after the automated run)
# connect as cltbld@fx-linux-1.9-slave2 cd /builds/updates/firefox-3.0.2/patcher/temp/firefox/3.0.1-3.0.2 for dir in aus2.test aus2.beta aus2; do # copy complete snippets from 3.0.1 into a new dir for 3.0.2 mkdir -p b5-b6-${dir}/Firefox rsync -a --exclude 'partial.txt' ${dir}/Firefox/3.0.1/ b5-b6-${dir}/Firefox/3.0.2/ # use the buildid's from build5 mv b5-b6-${dir}/Firefox/3.0.2/Darwin_Universal-gcc3/2008070206 b5-b6-${dir}/Firefox/3.0.2/Darwin_Universal-gcc3/2008090512 mv b5-b6-${dir}/Firefox/3.0.2/Linux_x86-gcc3/2008070206 b5-b6-${dir}/Firefox/3.0.2/Linux_x86-gcc3/2008090512 mv b5-b6-${dir}/Firefox/3.0.2/WINNT_x86-msvc/2008070208 b5-b6-${dir}/Firefox/3.0.2/WINNT_x86-msvc/2008090514 done rsync -a -e 'ssh -i ~/.ssh/aus' b5-b6-aus2.test/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20080919-Firefox-3.0.2build5-build6-test rsync -a -e 'ssh -i ~/.ssh/aus' b5-b6-aus2.beta/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20080919-Firefox-3.0.2build5-build6-beta rsync -a -e 'ssh -i ~/.ssh/aus' b5-b6-aus2/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20080919-Firefox-3.0.2build5-build6
Then go to aus2-staging and push 20080919-Firefox-3.0.2build5-build6-test live.
Publish Updates to Test Channels (betatest & releasetest)
- Automated, no problems.
Update Verify
- linux no problems
- win32 expected problems (known checksum dif bug)
- mac expected problems (added/dropped locales)
Stage
- Automated, no problems.
Push to beta channel
Backup on aus2-staging doing:
# put snippets on beta $ sudo su - cltbld # make sure using latest version of scripts in mozilla/tools/release/bin/ $ cd bin $ cvs update . $ cd /opt/aus2/snippets/staging # note the required parameter must match what will be used with pushsnip below. $ time ~/bin/backupsnip 20080917-Firefox-3.0.2-beta Running /bin/tar cfvj /opt/aus2/snippets/backup/20080910-1-pre-20080917-Firefox-3.0.2-beta.tar.bz2 . real 31m55.896s user 0m37.535s sys 0m50.817s $ $ time ~/bin/pushsnip 20080917-Firefox-3.0.2-beta real 1m17.380s user 0m0.097s sys 0m4.970s $ time ~/bin/pushsnip 20080919-Firefox-3.0.2build5-build6-beta real 0m8.604s user 0m0.009s sys 0m0.441s
NB: Had to push both 20080917-Firefox-3.0.2-beta and 20080919-Firefox-3.0.2build5-build6-beta directories.
Sign Installers
Done manually using these installer-signing-instructions here
- complete stage-merged:
# on stage cd /data/cltbld/firefox-3.0.2/ 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.0.2/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
- Manually added entries to download.mozilla.org
Push to mirrors
- push the stage-merged directory to the releases area:
# on stage rsync -av /data/cltbld/firefox-3.0.2/stage-merged/ /home/ftp/pub/firefox/releases/3.0.2/
Final Verification
- Verify that releasetest points to valid bouncer links:
# this can be run from anywhere cvs co mozilla/testing/release cd mozilla/testing/release/updates cat moz19-firefox-*.cfg | grep -v major | sed 's/betatest/releasetest/' | grep -v 2.0a | grep -v 2.0b > update.cfg ./verify.sh -t update.cfg 2>&1 | tee quickVerify.log
- Look for any HTTP error codes besides 200 ("OK") and 302 ("Found"):
grep HTTP quickVerify.log | grep -v 200 | grep -v 302
- 23 occurrences of 404s
- Before pushing final updates,verify that "release" and "releasetest" channel match:
# on aus2-staging $ cd 20080917-Firefox-3.0.2 $ find -type d -iregex '.*release.*' | perl -nle '$a = $_; $a =~ s/release/releasetest/; system("diff -r -u $_ ../20080917-Firefox-3.0.2-test/$a");' $
Publish Updates to Release Channel
While waiting for formal "go", do:
$ time ~/bin/backupsnip 20080917-Firefox-3.0.2 real 33m24.621s user 0m38.584s sys 0m41.689s
$ time ~/bin/pushsnip 20080917-Firefox-3.0.2 real 0m17.352s user 0m0.027s sys 0m1.464s $ time ~/bin/pushsnip 20080919-Firefox-3.0.2build5-build6 real 0m8.355s user 0m0.004s sys 0m0.329s
NB: Be sure to push both 20080917-Firefox-3.0.2 and 20080919-Firefox-3.0.2build5-build6 directories.
Release
- On stage.m.o, do the following:
- edit the exclude file /pub/mozilla.org/zz/rsyncd-mozilla-current.exclude to add the new release.
- Update "latest" symlinks
$ cd /pub/mozilla.org/firefox/releases/ $ mv latest-3.0 latest-3.0.old $ ln -s 3.0.2 latest-3.0 $ rm latest-3.0.old