Releases/Firefox 3.6b4/BuildNotes
NB: Text that is italicized indicates tasks still to be done, or information that needs to be filled in.
Build Engineers
Tracking Bug: bug 530112
- PST: lsblakk
- EST:
- NZDT: nthomas
Signed-off Revision(s)
Build 1: af0e2b9566cc
Tags
On mozilla-central:
Build # | Tag | Changeset |
1 | GECKO192b4_20091124_RELBRANCH | af0e2b9566cc |
FIREFOX_3_6b4_BUILD1 FIREFOX_3_6b4_RELEASE | 4c488520d1bf |
Build data
Build 1:
Platform | Build ID | Build machine |
Win32 | 20091124213835 | moz2-win32-slave33 |
Mac | 20091124201530 | moz2-darwin9-slave09 |
Linux | 20091124201751 | moz2-linux-slave12 |
Wince | 20091124202522 | moz2-win32-slave42 |
Notes
Done on pm01
Build 1
- Clean up previous releases build dirs, just for the slaves we used for 3.6b3 build1. Used cssh for linux/mac, RDP as Administrator on win32.
- Linux: linux-slave01,02,05,06,07,08,09,10,18,20,22,28; rm -rf /builds/slave/{tag,source,linux_build,linux_repack,updates,linux_update_verify,final_verification}/*
- Mac:darwin9-slave02,05,06,07,09,10,12, xserve07,09; rm -rf /builds/slave/{macosx_build,macosx_repack,l10n_verification, macosx_update_verify}/*
- Win32: win32-slave01,02,05,06,07,08,09,10,16,31,40; rm -rf /e/builds/moz2_slave/{win32_build,win32_repack,win32_update_verify,wince_build}/*
- bump mozilla-1.9.2 to 3.6b5pre with patch
- Get review and land [buildbot-configs patch], and re-enable ftp poller patch
- Closed the mozilla-1.9.2 tree
- Tagged build/{buildbot-configs,buildbotcustom,tools} with FIREFOX_3_6b4_RELEASE
- ONE-OFF - land sendchange hang fix from bug 528212 and restart master
- Sendchange was
buildbot sendchange --username=nthomas --master=localhost:9010 --branch=releases/mozilla-1.9.2 -m "Firefox 3.6b4 build1" ShakeAndBakeBaby
Tag
- slave: moz2-linux-slave08
- Land version bumps patch
- Re-opened mozilla-1.9.2
- No problems
Source
- slave: moz2-linux-slave42
- No problems
Build/Repack
- slaves
- Linux and Win32 no problems.
- Mac l10n bombed out because the slaves had not been cleaned up. Fix that (can't get l10n_verify and update verify on moz2-darwin9-slave05 because it needs rebooting) and then
# cltbld@production-master cd ~/tools hg pull hg up -r FIREFOX_3_6b4_RELEASE cd buildbot-helpers/ python force_release_l10n.py -m http://localhost:8010 -t FIREFOX_3_6b4_RELEASE -v -b releases/mozilla-1.9.2 -p macosx -n nthomas
- had failed to clean up bm-xserve07 and 09 so retrigger the locales that 15 locales that failed (af ar be bg bn-BD bn-IN ca cs cy da de el en-GB eo es-AR written to shipped-locales-macosx)
python force_release_l10n.py -m http://localhost:8010 -t FIREFOX_3_6b4_RELEASE -v -s shipped-locales-macosx -p macosx -n nthomas
- Manual verification that all l10n builds present:
# stage cd /home/ftp/pub/firefox/nightly/3.6b4-candidates/build1 # each should be 68 = en-US + 67 l10n builds for p in linux-i686 mac unsigned/win32; do echo `ls $p | grep -v xpi | wc -l` $p done
- Removed en-US.xpi from the 3.6b4-candidates/build1/ directory on stage
Socorro product data updates
Since Socorro 1.1 went live this is done with an Admin control panel, so asked Sam Sidler (ss) to enable those versions. That requires at least one crash report so created those using the CrashMe extension with linux 3.6b4 and 3.6b5pre builds.
Sign
No problems
L10nVerify
- slave: bm-xserve12
- Got "only in..." messages for locales which are new in b4 or missed b3
- no real differences
Generate updates and push betatest snippets
- slave: moz2-linux-slave01
As well as the automated updates we'll need to connect 3.6b1 to b4 for af bg da, similar to what we did last time.
Fill in b1 locales
- slave: moz2-linux-slave01
Needed to generate b1 -> b3 for 3.6b1 af bg da. Ran steps manually with this patcher config
Moved the original run out of the way:
cd /builds/slave/updates/build mv temp temp.original-run cd patcher-configs mv moz192-branch-patcher2.cfg moz192-branch-patcher2.cfg-original-run cd ../ #download builds perl patcher2.pl --download --app=firefox --brand=Firefox --config=patcher-configs/moz192-branch-patcher2.cfg #create patches perl patcher2.pl --create-patches --partial-patchlist-file=patchlist.cfg --app=firefox --brand=Firefox --config=patcher-configs/moz192-branch-patcher2.cfg #chmod partial mars: find temp/firefox/3.6b1-3.6b4/ftp/firefox/nightly/3.6b4-candidates/build1 -type f -exec chmod 644 {} \; #chmod partial mar dirs: find temp/firefox/3.6b1-3.6b4/ftp/firefox/nightly/3.6b4-candidates/build1 -type d -exec chmod 755 {} \; #upload partial mars: rsync -av -e 'ssh -oIdentityFile=~/.ssh/ffxbld_dsa' --exclude=*complete.mar temp/firefox/3.6b1-3.6b4/ftp/firefox/nightly/3.6b4-candidates/build1/update ffxbld@stage-old.mozilla.org:/pub/mozilla.org/firefox/nightly/3.6b4-candidates/build1/ #upload snippets: rsync -av temp/firefox/3.6b1-3.6b4/aus2/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20091125-Firefox-3.6b1-3.6b4-locales #upload test snippets rsync -av temp/firefox/3.6b1-3.6b4/aus2.test/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20091125-Firefox-3.6b1-3.6b4-locales-test
Then on aus2-staging as cltbld,
cd /opt/aus2/snippets/staging # Didn't run backupsnip because the automation one was running at the time ~/bin/pushsnip 20091125-Firefox-3.6b1-3.6b4-locales-test/
Generate 3.6b3 -> b4 for WinCE
- slave: moz2-linux-slave01
# move the previous run aside cd /builds/slave/updates/build mv temp temp.b1 cd patcher-configs wget -Omoz192-branch-patcher2.cfg https://bug530112.bugzilla.mozilla.org/attachment.cgi?id=414504 cd /builds/slave/updates/build perl patcher2.pl --download --app=firefox --brand=Firefox --config=patcher-configs/moz192-branch-patcher2.cfg perl patcher2.pl --create-patches --partial-patchlist-file=patchlist.cfg --app=firefox --brand=Firefox --config=patcher-configs/moz192-branch-patcher2.cfg find temp/firefox/3.6b3-3.6b4/ftp/firefox/nightly/3.6b4-candidates/build1 -type f -exec chmod 644 {} \; find temp/firefox/3.6b3-3.6b4/ftp/firefox/nightly/3.6b4-candidates/build1 -type d -exec chmod 755 {} \; cd /builds/slave/updates/build/temp/firefox/3.6b3-3.6b4/ftp/firefox/nightly/3.6b4-candidates/build1 rsync -av -e 'ssh -oIdentityFile=~/.ssh/ffxbld_dsa' --exclude=*complete.mar update ffxbld@stage.mozilla.org:/pub/mozilla.org/firefox/nightly/3.6b4-candidates/build1/ cd /builds/slave/updates/build/temp/firefox/3.6b3-3.6b4 rsync -av aus2/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20091125-Firefox-3.6b4-WinCE rsync -av aus2.test/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20091125-Firefox-3.6b4-WinCE-test
# cltbld@aus2-staging # backupsnip in automation was still running, didn't do one ~/bin/pushsnip 20091125-Firefox-3.6b4-WinCE-test
Update verify
- All platforms' partials had differences in removed-files:
diff -r source/firefox/removed-files target/firefox/removed-files 500a501,502 > res/broken-image.gif > res/loading-image.gif 533a536,537 > icons/mozicon16.xpm > icons/mozicon50.xpm 537a542 > old-homepage-default.properties
Which are caused by packaging fixes landed for the 3.5 -> 3.6 MU, bug 515421. They are not a real issue.
- All platforms: 3.6b1 ka failed because we still don't have that locale back
- Linux: No real problems.
Respin of fr
A problem was discovered with the fr build, so we've got to respin it.
clean up the slaves
Because we can't predict which slave it will happen on we have to clean up all of the l10n dirs on the slaves.
- Linux: 01,02,05-10
- Mac: moz2-darwin9-slave02,05,06,07,09,10,bm-xserve07,09
- Win32: win32-slave01,02,05-10
force the build
Used the web interface to force the fr build for each platform with the following properties:
- en_revision = FIREFOX_3_6b4_RELEASE
- l10n_revision = FIREFOX_3_6b4_RELEASE
- locale = fr
builds went fine, uploads failed with (FIXME):
Traceback (most recent call last): File "/usr/bin/post_upload.py", line 262, in ? func(options, upload_dir, files) File "/usr/bin/post_upload.py", line 156, in ReleaseToCandidatesDir os.chmod(os.path.join(root, d), 0755) OSError: [Errno 1] Operation not permitted: '/home/ftp/pub/firefox/nightly/3.6b4-candidates/build1/contrib/solaris_pkgadd' Encountered error while uploading Command ['ssh', '-o', 'IdentityFile=~/.ssh/ffxbld_dsa', 'ffxbld@stage.mozilla.org', 'post_upload.py -p firefox -v 3.6b4 -n 1 --release-to-candidates-dir "/tmp/tmp.IqJdUJ9377/" "/tmp/tmp.IqJdUJ9377/linux-i686/fr/firefox-3.6b4.tar.bz2" "/tmp/tmp.IqJdUJ9377/linux-i686/xpi/fr.xpi"'] returned non-zero exit code: 1 make: *** [l10n-upload-fr] Error 2
Had to finish the upload with:
cd /builds/slave/linux_repack/build/mozilla-1.9.2/dist/update/linux-i686 rsync -e 'ssh -oIdentityFile=~/.ssh/ffxbld_dsa' -av fr ffxbld@stage.mozilla.org:/home/ftp/pub/firefox/nightly/3.6b4-candidates/build1/update/linux-i686/
...and equivalent commands for the other platforms. Had to upload the win32 installer, too.
signing
- Done mostly manually:
- Only pulled win32 en-US (build1) and linux/mac/win32 zh-CN (build2), MD5SUMS, SHA1SUMS into unsigned-build2:
PRODUCT=firefox VERSION=3.6b4 BUILD=1 TAG=FIREFOX_3_6b4_RELEASE REPO='releases/mozilla-1.9.2' EMAIL=bhearsum@mozilla.com KEYDIR=d:/2009-keys mkdir ~/signing-work/${PRODUCT}-${VERSION}-fr2 cd ~/signing-work/${PRODUCT}-${VERSION}-fr2 cp ~/hg-tools/release/signing/* . make setup PRODUCT=${PRODUCT} VERSION=${VERSION} BUILD=${BUILD} REPO=${REPO} EMAIL=${EMAIL} KEYDIR=${KEYDIR} USE_NEW=1 rsync -av -e ssh --include=*SUMS --include=xpi --include=linux-i686/ --include=mac/ --include=unsigned/ --include=*irefox* --include=win32 --include=*fr* --include=update/ --exclude=* cltbld@stage.mozilla.org:/home/ftp/pub/${PRODUCT}/nightly/${VERSION}-candidates/build${BUILD}/ unsigned-build${BUILD} rsync -av -e ssh --include=unsigned/ --include=*irefox* --include=win32 --include=*en-US* --include=update/ --exclude=* cltbld@stage.mozilla.org:/home/ftp/pub/${PRODUCT}/nightly/${VERSION}-candidates/build1/ unsigned-build${BUILD} rsync -av -e ssh --exclude=*partial* --exclude=*asc --include=win32 --include=*irefox* --include=*en-US* --include update/ --exclude=* cltbld@stage.mozilla.org:/home/ftp/pub/${PRODUCT}/nightly/${VERSION}-candidates/build1/ signed-build${BUILD} make stubs PRODUCT=${PRODUCT} VERSION=${VERSION} BUILD=${BUILD} REPO=${REPO} EMAIL=${EMAIL} KEYDIR=${KEYDIR} USE_NEW=1 ./sign-release.py -p --keydir ${KEYDIR} -j1 --product firefox -o signed-build${BUILD} unsigned-build${BUILD} >> win32_signing_build${BUILD}.log 2>&1 rsync -av --include=*.mar --include=update --include=*SUMS --include=*dmg --include=*.tar.bz2 --include=*xpi* --include=*fr* --include=*linux* --include=*mac* --exclude=* unsigned-build1/ signed-build1/ rsync -av ./unsigned-build${BUILD}/unsigned/win32/xpi ./signed-build${BUILD}/win32 # manually updated the SUMS files with new md5/sha1 sums cd signed-build1 ../signing/sign-files . rm win32/en-US/*.asc cd ../ # push builds back rsync -av -e 'ssh -oIdentityFile=~/.ssh/ffxbld_dsa' signed-build1/ ffxbld@stage.mozilla.org:/home/ftp/pub/firefox/nightly/3.6b4-candidates/build1/
updates
- done on moz2-linux-slave01
- used [this patcher config]
cd /builds/slave/updates/build perl patcher2.pl --download --app=firefox --brand=Firefox --config=patcher-configs/moz192-branch-patcher2.cfg perl patcher2.pl --create-patches --partial-patchlist-file=patchlist.cfg --app=firefox --brand=Firefox --config=patcher-configs/moz192-branch-patcher2.cfg find temp/firefox/3.6b3-3.6b4/ftp/firefox/nightly/3.6b4-candidates/build1 -type f -exec chmod 644 {} \; find temp/firefox/3.6b3-3.6b4/ftp/firefox/nightly/3.6b4-candidates/build1 -type d -exec chmod 755 {} \; cd /builds/slave/updates/build/temp/firefox/3.6b3-3.6b4/ftp/firefox/nightly/3.6b4-candidates/build1 rsync -av -e 'ssh -oIdentityFile=~/.ssh/ffxbld_dsa' --exclude=*complete.mar update ffxbld@stage.mozilla.org:/pub/mozilla.org/firefox/nightly/3.6b4-candidates/build1/ cd /builds/slave/updates/build/temp/firefox/3.6b3-3.6b4 rsync -av aus2/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20091125-Firefox-3.6b4-fr-respin rsync -av aus2.test/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20091125-Firefox-3.6b4-fr-respin-test
# cltbld @ aus2-staging cd /opt/aus2/snippets/staging ~/bin/pushsnip 20091125-Firefox-3.6b4-fr-respin-test