Releases/Firefox 3.5.5/BuildNotes
Contents
- 1 Build Engineers
- 2 Signed-off Revision(s)
- 3 Tags
- 4 Build data
- 5 Notes
- 5.1 Build 1
- 5.1.1 Socorro product data updates
- 5.1.2 Tag
- 5.1.3 Source
- 5.1.4 Build/Repack
- 5.1.5 Sign
- 5.1.6 L10nVerify
- 5.1.7 Generate updates and push betatest snippets
- 5.1.8 Update verify
- 5.1.9 Publish updates to beta channel
- 5.1.10 Update Bouncer
- 5.1.11 Final checks before push
- 5.1.12 Push to mirrors
- 5.1.13 Virus Scan
- 5.1.14 Final Verification
- 5.1.15 Push updates to release channel
- 5.1.16 Release
- 5.1.17 XULRunner build
- 5.1.18 3.0.15 -> 3.5.x Major Update Refresh
- 5.1 Build 1
Build Engineers
catlee https://bugzilla.mozilla.org/show_bug.cgi?id=525814
Signed-off Revision(s)
Build1: c204f7bb0064
Tags
On releases/mozilla-1.9.1:
Build # | Tag | Changeset |
1 | FIREFOX_3_5_5_BUILD1 FIREFOX_3_5_5_RELEASE | 57f71400f4cf |
Build data
Build # | Type | Build ID | Build machine |
1 | [Windows installer/zip] | 20091102152451 | moz2-win32-slave57 |
[Mac compressed] | 20091102134505 | moz2-darwin9-slave18 | |
[Linux compressed] | 20091102141836 | moz2-linux-slave22 |
Notes
- Useful docs and FAQs here.
- Done on production-master02
Build 1
- Cleaned up all possible linux and mac slaves
- Win32 slaves: moz2-win32-slave[52-59]
- /e/builds/moz2_slave/{win32_build,win32_repack,win32_update_verify}/*
- Landed version bump, reconfig'ed production-master02
- Kicked off automation:
buildbot sendchange --username=catlee --master=localhost:9010 --branch=releases/mozilla-1.9.1 -m "Firefox 3.5.5 build1" GOOOO
Socorro product data updates
- Pinged IT to add the following entries to the Socorro db:
insert into productdims (product, version, branch, release) values ('Firefox','3.5.5', '1.9.1', 'major'); insert into productdims (product, version, branch, release) values ('Firefox','3.5.6pre', '1.9.1', 'development');
Tag
No problems. Tagged build/{tools,buildbotcustom,buildbot-configs} with FIREFOX_3_5_5_RELEASE.
Source
No problems
Build/Repack
Linux build died because hg.m.o died. Cleaned up linux slave, and re-built linux build. Ran
python force_release_l10n.py -m http://localhost:8010 -t FIREFOX_3_5_5_RELEASE -v -b releases/mozilla-1.9.1 -p linux -n catlee
to re-trigger l10n builds.
11 win32 repacks failed when two slaves hadn't been cleaned out properly. Ran
PYTHONPATH=../../:../../buildbot python force_release_l10n.py -m http://production-master02.build.mozilla.org:8010 -v -t FIREFOX_3_5_5_RELEASE -s shipped-locales-win32 -n nthomas
with shipped-locales for ar bn-BD ca cy eo eu it kn mk ml ta-LK.
Removed en-US.xpi from 3.5.5-candidates/build1/ dir.
Sign
L10nVerify
Unexpected output:
diff -r firefox-3.5.5-build1/diffs/win32.tr.diff firefox-3.5.4-build3/diffs/win32.tr.diff 0a1 > Binary files source/bin/AccessibleMarshal.dll and target/bin/AccessibleMarshal.dll differ 21a23,24 > Binary files source/bin/components/browserdirprovider.dll and target/bin/components/browserdirprovider.dll differ > Binary files source/bin/components/brwsrcmp.dll and target/bin/components/brwsrcmp.dll differ 34a38 > Binary files source/bin/crashreporter.exe and target/bin/crashreporter.exe differ 205a210,216 > Binary files source/bin/firefox.exe and target/bin/firefox.exe differ > Binary files source/bin/js3250.dll and target/bin/js3250.dll differ > Binary files source/bin/mozcrt19.dll and target/bin/mozcrt19.dll differ > Binary files source/bin/nspr4.dll and target/bin/nspr4.dll differ > Binary files source/bin/nss3.dll and target/bin/nss3.dll differ > Binary files source/bin/nssckbi.dll and target/bin/nssckbi.dll differ > Binary files source/bin/nssutil3.dll and target/bin/nssutil3.dll differ 210a222,224 > Binary files source/bin/plc4.dll and target/bin/plc4.dll differ > Binary files source/bin/plds4.dll and target/bin/plds4.dll differ > Binary files source/bin/plugins/npnul32.dll and target/bin/plugins/npnul32.dll differ 212a227,229 > Binary files source/bin/smime3.dll and target/bin/smime3.dll differ > Binary files source/bin/sqlite3.dll and target/bin/sqlite3.dll differ > Binary files source/bin/ssl3.dll and target/bin/ssl3.dll differ 218a236 > Binary files source/bin/updater.exe and target/bin/updater.exe differ 225a244,245 > Binary files source/bin/xpcom.dll and target/bin/xpcom.dll differ > Binary files source/bin/xul.dll and target/bin/xul.dll differ
which indicates a difference between en-US and tr for 3.5.4 build3. That locale was rebuilt after the main repack run (bug 522989), and from the 3.5.4 notes we see that tr was signed like en-US rather than use the re-signing mode (for which there are no proper docs FIXME). So these differences will just be in the small part of the executables where signature is stored. Partly confirmed by comparing the unsigned bits for 3.5.4build3 en-US and tr, which don't exhibit this problem.
Generate updates and push betatest snippets
No problems, backupsnip didn't fail with verbose output enabled.
3.5.3 -> 3.5.5 updates
Disconnected slave from buildbot
Patched moz191-branch-patcher2.cfg
Ran:
perl patcher2.pl --download --app=firefox --brand=Firefox --config=patcher-configs/moz191-branch-patcher2.cfg
Got one warning:
read_past_updates(): Invalid past-update specification:
Ran:
perl patcher2.pl --create-patches --partial-patchlist-file=patchlist-353.cfg --app=firefox --brand=Firefox --config=patcher-configs/moz191-branch-patcher2.cfg
Died with:
Exception: cmd failed mar -x /builds/slave/updates/build/temp/firefox/3.5.5/ftp/firefox-3.5.5.en-GB.linux-i686.complete.mar
Assumed the disk was full (only 342 MB free)
Clobbered temp/firefox/3.5.3-3.5.5, and rm -rf linux-fennec-*. 3.4 GB free.
Re-ran patcher.
Died again. Removed mozilla-1.9.1-linux*, /builds/scratchbox/users/ctlbld/home/cltbld/build/*. 11 GB fre.
Re-ran patcher. It succeeded this time!
find temp/firefox/3.5.3-3.5.5/ftp/firefox/nightly/3.5.5-candidates/build1 -type f -exec chmod 644 {} \; find temp/firefox/3.5.3-3.5.5/ftp/firefox/nightly/3.5.5-candidates/build1 -type d -exec chmod 755 {} \; cd temp/firefox/3.5.3-3.5.5/ftp/firefox/nightly/3.5.5-candidates/build1 rsync -av -e "ssh -oIdentityFile=$HOME/.ssh/ffxbld_dsa" --exclude=*complete.mar update ffxbld@stage-old.mozilla.org:/pub/mozilla.org/firefox/nightly/3.5.5-candidates/build1/ cd ../../../../.. rsync -av aus2/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20091103-Firefox-3.5.3-3.5.5-partials rsync -av aus2.test cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20091103-Firefox-3.5.3-3.5.5-partials-test rsync -av aus2.beta cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20091103-Firefox-3.5.3-3.5.5-partials-beta
On aus2-staging:
# Fix up bad rsync above cd 20091103-Firefox-3.5.3-3.5.5-partials-test; mv aus2.test/Firefox .; rm -rf aus2.test cd 20091103-Firefox-3.5.3-3.5.5-partials-beta; mv aus2.beta/Firefox .; rm -rf aus2.beta ~/bin/backupsnip 20091103-Firefox-3.5.3-3.5.5-partials-test && ~/bin/pushsnip 20091103-Firefox-3.5.3-3.5.5-partials-test
Update verify
Automated runs green for all platforms.
3.5.3 -> 3.5.5 update verify
Checked in this patch and kicked the update_verify builders on pm02.
- Linux: green
- Mac: green
- Windows: green
Publish updates to beta channel
be sure to push the 3.5.3 -> 3.5.5 beta snippets in addition to the normal ones
Update Bouncer
No problems
Final checks before push
cd /pub/mozilla.org/firefox/nightly/3.5.5-candidates/build1/ find . ! -user ffxbld find . ! -group firefox find . -type f ! -perm 644 find . -type d -mindepth 1 ! -perm 755 ! -name 'contrib*' find . -type d -maxdepth 1 ! -perm 2775 -name 'contrib*'
Only showed solaris contrib builds, which is expected.
Push to mirrors
# ffxbld@stage rsync -av --exclude=*.log --exclude=*.txt --exclude=*unsigned* /pub/mozilla.org/firefox/nightly/3.5.5-candidates/build1/ /pub/mozilla.org/firefox/releases/3.5.5/
# cltbld@stage vim /pub/mozilla.org/zz/rsyncd-mozilla-current.exclude # replace 3.5.4 with 3.5.5
Virus Scan
Poked IT to scan files bug 526761
Final Verification
Reverted patch c8ff41800fa2, then kicked final_verification.
A few 404 errors from two different mirrors. All files checked out when tested manually. Apparently we started checking for en-US again to determine when mirrors were available.
Push updates to release channel
~/bin/pushsnip 20091102-Firefox-3.5.5 ~/bin/pushsnip 20091103-Firefox-3.5.3-3.5.5-partials
And when QA is ready for the beta channel
~/bin/pushsnip 20091102-Firefox-3.5.5-beta ~/bin/pushsnip 20091103-Firefox-3.5.3-3.5.5-partials-beta
bug 526928 to push this patch live and unthrottle 3.5, 3.5.1, 3.5.2, and 3.5.3.
Release
cd /home/ftp/pub/firefox/releases rm latest-3.5 && ln -s 3.5.5 latest-3.5
XULRunner build
Created the builds by going to the buildbot waterfall for mozilla-1.9.1 and forcing builds for linux (not x64), mac and windows xulrunner. Set the branch to 'releases/mozilla-1.9.1' and revision to 'FIREFOX_3_5_5_RELEASE'.
When they finished, as xrbld@stage moved the dir from /pub/mozilla.org/xulrunner/nightly/2009/11/2009-11-03-07-mozilla-1.9.1/ to ..../nightly/1.9.1.5-candidates/build1. Removed the broken symlink at xulrunner/nightly/2009-11-03-07-mozilla-1.9.1. Contacted mfinkle and dtownsend for smoketest QA.
Won't be shipping XULRunner builds because of a bad regression, fix will be in 1.9.1.6.
3.0.15 -> 3.5.x Major Update Refresh
- version bumps for patcher config and release/update
Snippet Generation
On fx-linux-1.9-slave2:
cd /builds rm -rf tags/FIREFOX_3_0_15_BUILD3 tags/THUNDERBIRD_3_0a2_BUILD1 updates/firefox-3.0.15 mkdir -p /builds/3.0.15-3.5.5-major-update/snippets cd /builds/3.0.15-3.5.5-major-update/snippets cvs -d:ext:cltbld@cvs.mozilla.org:/cvsroot co -d patcher-configs mozilla/tools/patcher-configs cvs -d:ext:cltbld@cvs.mozilla.org:/cvsroot co -r UPDATE_PACKAGING_R9 -d patcher mozilla/tools/patcher cd patcher cvs -d:ext:cltbld@cvs.mozilla.org:/cvsroot co -r UPDATE_PACKAGING_R9 -d MozBuild mozilla/tools/release/MozBuild export CVSROOT=:ext:cltbld@cvs.mozilla.org:/cvsroot # build tools ./patcher2.pl --build-tools --app=firefox --tools-rev=UPDATE_PACKAGING_R9 --config=../patcher-configs/moz19-branch-major-update-patcher2.cfg 2>&1 | tee ../firefox_build-tools.log # download mars ./patcher2.pl --download --app=firefox --config=../patcher-configs/moz19-branch-major-update-patcher2.cfg 2>&1 | tee ../firefox_download.log # FIXME - patcher needs to see that the MARs that it thinks are partials # are there or else it will not attempt to generate patchinfo cd temp/firefox ln -s 3.5.5 3.0.15-3.5.5 cd ../.. # Create partial patches and snippets ./patcher2.pl --create-patches --app=firefox --config=../patcher-configs/moz19-branch-major-update-patcher2.cfg 2>&1 | tee ../firefox-create-patches.log
Quick Verify
Check that releasetest = beta = release. New in 3.0.15 we now use a new dir for beta
cd temp/firefox/3.0.15-3.5.5 # releasetest == beta find aus2.test -type d -iregex '.*/releasetest$' | perl -nle '$a = $_; $a =~ s/releasetest/beta/; $a =~ s/aus2\.test/aus2.beta/; system("diff -r -u $_ $a");' find aus2.beta -type d -iregex '.*/beta$' | perl -nle '$a = $_; $a =~ s/beta$/releasetest/; $a =~ s/aus2\.beta/aus2.test/; system("diff -r -u $_ $a");'
# beta == release find aus2.beta -type d -iregex '.*/beta$' | perl -nle '$a = $_; $a =~ s/aus2\.beta/aus2/; $a =~ s/beta/release/; system("diff -r -u $_ $a");' find aus2 -type d -iregex '.*/release$' | perl -nle '$a = $_; $a =~ s/release$/beta/; $a =~ s/aus2/aus2.beta/; system("diff -r -u $_ $a");'
Push to AUS
New in 3.0.15 - 3 dirs to sync now instead of 2
cd /builds/3.0.15-3.5.5-major-update/snippets/patcher/temp/firefox/3.0.15-3.5.5 rsync -e 'ssh -i /home/cltbld/.ssh/aus' -av aus2.test/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20091105-Firefox-3.0.15-3.5.5-MU-test rsync -e 'ssh -i /home/cltbld/.ssh/aus' -av aus2.beta/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20091105-Firefox-3.0.15-3.5.5-MU-beta rsync -e 'ssh -i /home/cltbld/.ssh/aus' -av aus2/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20091105-Firefox-3.0.15-3.5.5-MU
Enable test snippets
ssh -i ~/.ssh/aus2 cltbld@aus2-staging cd /opt/aus2/snippets/staging screen
~/bin/backupsnip 20091105-Firefox-3.0.15-3.5.5-MU-test ~/bin/pushsnip 20091105-Firefox-3.0.15-3.5.5-MU-test
Update verify
Ran update verify on fx-{linux,mac,win32}-1.9-slave2 as follows:
mkdir -p /builds/verify/firefox-3015-355-major/ cd /builds/verify/firefox-3015-355-major/ hg clone http://hg.mozilla.org/build/tools # get patch to trawl "Only in" directories cd tools/release/common # on mac & linux curl -sL https://bugzilla.mozilla.org/attachment.cgi?id=367544 | patch -p3 # on win32 wget --no-check-certificate -O patch https://bugzilla.mozilla.org/attachment.cgi?id=367544 patch -p3 < patch # everyone ... cd ../updates platform=linux # or mac or win32 ./verify.sh -c moz19-firefox-$platform-major.cfg 2>&1 | tee $platform.log
Check logs for results - whatever is after "succeeded".
Linux complete snippet for the af locale was busted due to a 0-byte download during snippet generation. Edited the af locale with the correct values and pushed to test channels again.
-bash-3.2$ ~/bin/pushsnip 20091105-Firefox-3.0.15-3.5.5-MU-test Running /usr/bin/rsync -PaO /opt/aus2/snippets/staging/20091105-Firefox-3.0.15-3.5.5-MU-test/ /opt/aus2/incoming/3 building file list ... 1304 files to consider ./ Firefox/3.0.15/Linux_x86-gcc3/2009101600/af/betatest/complete.txt 455 100% 0.00kB/s 0:00:00 (xfer#1, to-check=867/1304) Firefox/3.0.15/Linux_x86-gcc3/2009101600/af/releasetest/complete.txt 405 100% 395.51kB/s 0:00:00 (xfer#2, to-check=864/1304) sent 32405 bytes received 70 bytes 21650.00 bytes/sec total size is 317668 speedup is 9.78
Went back and did the partial snippets too.
-bash-3.2$ ~/bin/pushsnip 20091105-Firefox-3.0.15-3.5.5-MU-test Running /usr/bin/rsync -PaO /opt/aus2/snippets/staging/20091105-Firefox-3.0.15-3.5.5-MU-test/ /opt/aus2/incoming/3 building file list ... 1304 files to consider Firefox/3.0.15/Linux_x86-gcc3/2009101600/af/betatest/partial.txt 454 100% 0.00kB/s 0:00:00 (xfer#1, to-check=866/1304) Firefox/3.0.15/Linux_x86-gcc3/2009101600/af/releasetest/partial.txt 404 100% 394.53kB/s 0:00:00 (xfer#2, to-check=863/1304) sent 32405 bytes received 64 bytes 64938.00 bytes/sec total size is 317680 speedup is 9.78
Ran update_verify for just this locale:
./verify.sh -c moz19-firefox-linux-major.cfg.af 2>&1 | tee linux-af.log
Results
All locales: diff -r source/firefox/defaults/pref/channel-prefs.js target/firefox/defaults/pref/channel-prefs.js 1c1 < //@line 2 "/builds/tinderbox/Fx-Mozilla1.9-Release/Linux_2.6.18-53.1.13.el5_Depend/mozilla/browser/app/profile/channel-prefs.js" --- > //@line 2 "/builds/slave/linux_build/build/browser/app/profile/channel-prefs.js (fr) Only in ..../searchplugins: MediaDICO-fr.xml (hu) Only in source/firefox/searchplugins: amazondotcom.xml Only in source/firefox/searchplugins: answers.xml Only in source/firefox/searchplugins: eBay.xml Only in source/firefox/searchplugins: yahoo.xml (mn) Only in source/firefox/searchplugins: amazondotcom.xml Only in source/firefox/searchplugins: answers.xml Only in source/firefox/searchplugins: eBay.xml Only in source/firefox/searchplugins: yahoo.xml (uk) Only in source/firefox/searchplugins: price-ua.xml Linux: Mac: All locales: Only in source/Firefox.app/Contents/MacOS/plugins: Default Plugin.plugin Only in source/Firefox.app/Contents/MacOS/res/cursors: CVS Contents of source/Firefox.app/Contents/MacOS/plugins/Default Plugin.plugin dir only in source or target 1681264092 0 drwxr-xr-x 4 cltbld cltbld 136 Nov 6 09:14 source/Firefox.app/Contents/MacOS/plugins/Default Plugin.plugin/Contents 1681264093 0 drwxr-xr-x 2 cltbld cltbld 68 Nov 6 09:14 source/Firefox.app/Contents/MacOS/plugins/Default Plugin.plugin/Contents/MacOS 1681264095 0 drwxr-xr-x 3 cltbld cltbld 102 Nov 6 09:14 source/Firefox.app/Contents/MacOS/plugins/Default Plugin.plugin/Contents/Resources 1681264096 0 drwxr-xr-x 2 cltbld cltbld 68 Nov 6 09:14 source/Firefox.app/Contents/MacOS/plugins/Default Plugin.plugin/Contents/Resources/English.lproj Contents of source/Firefox.app/Contents/MacOS/res/cursors/CVS dir only in source or target Win32: All locales: Binary files source/bin/freebl3.chk and target/bin/freebl3.chk differ Binary files source/bin/nssdbm3.chk and target/bin/nssdbm3.chk differ Only in source/bin: removed-files Binary files source/bin/softokn3.chk and target/bin/softokn3.chk differ
Publish updates to beta and release channels
First verify that AUS is throttling 3.0.15 beta and release - AUS config
88 $productThrottling = array( 89 'Firefox' => array( 90 '3.0.15' => 0 91 ) 92 ); ... 106 $throttleExceptions = array( 107 '3.0.15' => array ( 108 'betatest', 109 'releasetest' 110 ) 111 );
In preparation
# cltbld@aus2-staging time ~/bin/backupsnip 20091105-Firefox-3.0.15-3.5.5-MU real 64m59.166s user 1m0.947s sys 1m53.271s
After smoke-signal from driver
~/bin/pushsnip 20091105-Firefox-3.0.15-3.5.5-MU-beta ~/bin/pushsnip 20091105-Firefox-3.0.15-3.5.5-MU