Releases/Firefox 4.0/BuildNotes
Contents
- 1 Release Engineers
- 2 Tracking Bug
- 3 Notes
- 3.1 Notify Mirrors
- 3.2 RC1 version
- 3.3 RC 2 Version
- 3.3.1 Config Update
- 3.3.2 Automated Parts
- 3.3.3 Major Updates
- 3.3.4 Stage and Rename Files
- 3.3.5 Other Verifications
- 3.3.6 Add Index Files
- 3.3.7 Push index files
- 3.3.8 Push to Mirrors
- 3.3.9 Update rsync modules
- 3.3.10 Notify AV Vendors
- 3.3.11 Repush MU and notify release-drivers of MU testing
- 3.3.12 Remove Serbian snippets from MU
- 3.3.13 Push Major Updates
- 3.3.14 Remove index files
- 3.3.15 Update symlinks on FTP
- 3.3.16 Remove updates for broken locales
- 3.3.17 EUBallot Builds
- 3.3.18 Disable Unwanted 3.5.17/3.6.15 Darwin PPC snippets
- 3.3.19 XULRunner
Release Engineers
bhearsum, nthomas, jhford
Tracking Bug
Notes
Notify Mirrors
Joduinn sent this on March 16th.
RC1 version
Config Update
This small update to the release config was landed.
Automated Parts
Some of this release-day work makes sense to do from the release automation. Use force build for these.
Tag
forced build using the webform with values
your name: jhford reason for build: retagging for 4.0 release branch to build: <left blank> revision to build: <left blank> repository to build: <left blank> project to build: <left blank> prop1 name: script_repo_revision value: FIREFOX_4_0_RELEASE prop2 name: release_config value: mozilla/release-firefox-mozilla-2.0.py
Source
Forced build on builder page using form values
your name: jhford reason for build: retagging for 4.0 release branch to build: <left blank> revision to build: <left blank> repository to build: <left blank> project to build: <left blank> prop1 name: <left blank> value: <left blank> prop2 name: <left blank> value: <left blank>
Stage and Rename Files
Summary:
- Copy files to ~ffxbld and rename to non-RC versions
- Exclude *checksums* because we don't care for individual locale+platform checksums files in the final release dir
- Exclude partial MARs because there's no use for them, no point in pushing them to the mirrors
- Exclude Source packages because they're regenerated for final
- Exclude *SUMS* because we'll be regenerating them.
Details:
# ffxbld@stage mkdir firefox-4.0 cd firefox-4.0 rsync -av --exclude=*checksums* --exclude='*partial.mar' --exclude=source --exclude=*SUMS* /pub/mozilla.org/firefox/releases/4.0rc1/ .
RC 2 Version
Config Update
Automated Parts
Some of this release-day work makes sense to do from the release automation. Use force build for these.
Tag
forced build using the webform with values
your name: jhford reason for build: retagging for 4.0 release (rc2) branch to build: <left blank> revision to build: <left blank> repository to build: <left blank> project to build: <left blank> prop1 name: script_repo_revision value: FIREFOX_4_0_RELEASE prop2 name: release_config value: mozilla/release-firefox-mozilla-2.0.py
Source
Clicked "force build"
Major Updates
Both of these done as cltbld@aus2-staging
3.5.17 -> 4.0
Generation
cd /opt/aus2/snippets/staging # releasetest snippets rsync --exclude=betatest -av Firefox-3.5.17-build1-4.0rc2-build3-MU-test/ Firefox-3.5.17-build1-4.0-MU-test/ find Firefox-3.5.17-build1-4.0-MU-test/ -type f -exec sed -i -e 's/RC 2//' -e 's/rc2//' {} \; rsync -av Firefox-3.5.17-build1-4.0rc2-build3-MU-beta/ Firefox-3.5.17-build1-4.0-MU-beta/ find Firefox-3.5.17-build1-4.0-MU-beta/ -type f -exec sed -i -e 's/RC 2//' -e 's/rc2//' {} \; rsync -av Firefox-3.5.17-build1-4.0rc2-build3-MU/ Firefox-3.5.17-build1-4.0-MU/ find Firefox-3.5.17-build1-4.0-MU/ -type f -exec sed -i -e 's/RC 2//' -e 's/rc2//' {} \;
Quick Verify
# releasetest == beta find Firefox-3.5.17-build1-4.0-MU-test -type d -iregex '.*/releasetest$' | perl -nle '$a = $_; $a =~ s/releasetest/beta/; $a =~ s/-test/-beta/; system("diff -r -u $_ $a");' find Firefox-3.5.17-build1-4.0-MU-beta -type d -iregex '.*/beta$' | perl -nle '$a = $_; $a =~ s/beta$/releasetest/; $a =~ s/-beta/-test/; system("diff -r -u $_ $a");' # beta == release find Firefox-3.5.17-build1-4.0-MU -type d -iregex '.*/release$' | perl -nle '$a = $_; $a =~ s/release/beta/; $a =~ s/MU/MU-beta/; system("diff -r -u $_ $a");' find Firefox-3.5.17-build1-4.0-MU-beta -type d -iregex '.*/beta$' | perl -nle '$a = $_; $a =~ s/beta$/release/; $a =~ s/-beta//; system("diff -r -u $_ $a");'
Diff against original snippets
Verified that only appv and url have changed with a diff. Saw something like this for all snippets:
diff -aur Firefox-3.5.17-build1-4.0rc2-build3-MU-test/ Firefox-3.5.17-build1-4.0-MU-test/ | grep -v betatest | grep '^[+-]' ... -url=http://download.mozilla.org/?product=firefox-4.0rc2-complete&os=win&lang=zh-TW +url=http://download.mozilla.org/?product=firefox-4.0-complete&os=win&lang=zh-TW -appv=4.0 RC 2 +appv=4.0
Enable test snippets
~/bin/backupsnip Firefox-3.5.17-build1-4.0-MU-test ~/bin/pushsnip Firefox-3.5.17-build1-4.0-MU-test
3.6.15 -> 3.6
Generation
cd /opt/aus2/snippets/staging # releasetest snippets rsync --exclude=betatest -av Firefox-3.6.15-build1-4.0rc2-build3-MU-test/ Firefox-3.6.15-build1-4.0-MU-test/ find Firefox-3.6.15-build1-4.0-MU-test/ -type f -exec sed -i -e 's/RC 2//' -e 's/rc2//' {} \; rsync -av Firefox-3.6.15-build1-4.0rc2-build3-MU-beta/ Firefox-3.6.15-build1-4.0-MU-beta/ find Firefox-3.6.15-build1-4.0-MU-beta/ -type f -exec sed -i -e 's/RC 2//' -e 's/rc2//' {} \; rsync -av Firefox-3.6.15-build1-4.0rc2-build3-MU/ Firefox-3.6.15-build1-4.0-MU/ find Firefox-3.6.15-build1-4.0-MU/ -type f -exec sed -i -e 's/RC 2//' -e 's/rc2//' {} \;
Quick Verify
# releasetest == beta find Firefox-3.6.15-build1-4.0-MU-test -type d -iregex '.*/releasetest$' | perl -nle '$a = $_; $a =~ s/releasetest/beta/; $a =~ s/-test/-beta/; system("diff -r -u $_ $a");' find Firefox-3.6.15-build1-4.0-MU-beta -type d -iregex '.*/beta$' | perl -nle '$a = $_; $a =~ s/beta$/releasetest/; $a =~ s/-beta/-test/; system("diff -r -u $_ $a");' # beta == release find Firefox-3.6.15-build1-4.0-MU -type d -iregex '.*/release$' | perl -nle '$a = $_; $a =~ s/release/beta/; $a =~ s/MU/MU-beta/; system("diff -r -u $_ $a");' find Firefox-3.6.15-build1-4.0-MU-beta -type d -iregex '.*/beta$' | perl -nle '$a = $_; $a =~ s/beta$/release/; $a =~ s/-beta//; system("diff -r -u $_ $a");'
Diff against original snippets
Verified that only appv and url have changed with a diff. Saw something like this for all snippets:
diff -aur Firefox-3.6.15-build1-4.0rc2-build3-MU-test/ Firefox-3.6.15-build1-4.0-MU-test/ | grep -v betatest | grep '^[+-]' ... -url=http://download.mozilla.org/?product=firefox-4.0rc2-complete&os=win&lang=zh-TW +url=http://download.mozilla.org/?product=firefox-4.0-complete&os=win&lang=zh-TW -appv=4.0 RC 2 +appv=4.0
Enable test snippets
~/bin/backupsnip Firefox-3.6.15-build1-4.0-MU-test ~/bin/pushsnip Firefox-3.6.15-build1-4.0-MU-test
Bouncer Entries
From moz2-linux-slave05 (where the most recent bouncer_submitter run was):
cd /builds/slave/rel-2.0-bncr-sub/tools/release wget -O shipped-locales http://hg.mozilla.org/releases/mozilla-2.0/raw-file/FIREFOX_4_0_RELEASE/browser/locales/shipped-locales PYTHONPATH=../lib/python python tuxedo-add.py --config firefox-tuxedo.ini --product firefox --version 4.0 --tuxedo-server-url https://bounceradmin.mozilla.com/api/ --shipped-locales shipped-locales --bouncer-product-name Firefox --brand-name Firefox --add-mars --milestone 2.0 --platform linux --platform linux64 --platform macosx64 --platform win32 --credentials-file BuildSlaves.py
3.5.18 -> 4.0
Generation
cd /opt/aus2/snippets/staging # releasetest snippets rsync --exclude=betatest -av Firefox-3.5.18-build1-4.0rc2-build3-MU-test/ Firefox-3.5.18-build1-4.0-MU-test/ find Firefox-3.5.18-build1-4.0-MU-test/ -type f -exec sed -i -e 's/RC 2//' -e 's/rc2//' {} \; rsync -av Firefox-3.5.18-build1-4.0rc2-build3-MU-beta/ Firefox-3.5.18-build1-4.0-MU-beta/ find Firefox-3.5.18-build1-4.0-MU-beta/ -type f -exec sed -i -e 's/RC 2//' -e 's/rc2//' {} \; rsync -av Firefox-3.5.18-build1-4.0rc2-build3-MU/ Firefox-3.5.18-build1-4.0-MU/ find Firefox-3.5.18-build1-4.0-MU/ -type f -exec sed -i -e 's/RC 2//' -e 's/rc2//' {} \;
Quick Verify
# releasetest == beta find Firefox-3.5.18-build1-4.0-MU-test -type d -iregex '.*/releasetest$' | perl -nle '$a = $_; $a =~ s/releasetest/beta/; $a =~ s/-test/-beta/; system("diff -r -u $_ $a");' find Firefox-3.5.18-build1-4.0-MU-beta -type d -iregex '.*/beta$' | perl -nle '$a = $_; $a =~ s/beta$/releasetest/; $a =~ s/-beta/-test/; system("diff -r -u $_ $a");' # beta == release find Firefox-3.5.18-build1-4.0-MU -type d -iregex '.*/release$' | perl -nle '$a = $_; $a =~ s/release/beta/; $a =~ s/MU/MU-beta/; system("diff -r -u $_ $a");' find Firefox-3.5.18-build1-4.0-MU-beta -type d -iregex '.*/beta$' | perl -nle '$a = $_; $a =~ s/beta$/release/; $a =~ s/-beta//; system("diff -r -u $_ $a");'
No output.
Diff against original snippets
Verified that only appv and url have changed with a diff. Saw something like this for all snippets:
diff -aur Firefox-3.5.18-build1-4.0rc2-build3-MU-test/ Firefox-3.5.18-build1-4.0-MU-test/ | grep -v betatest | grep '^[+-]' ... -url=http://download.mozilla.org/?product=firefox-4.0rc2-complete&os=win&lang=zh-TW +url=http://download.mozilla.org/?product=firefox-4.0-complete&os=win&lang=zh-TW -appv=4.0 RC 2 +appv=4.0
Diff against same snippets for 3.5.17
for d in '-test' '-beta' ''; do for p in Darwin_x86-gcc3-u-ppc-i386 Linux_x86-gcc3 WINNT_x86-msvc; do diff -ru Firefox-3.5.17-build1-4.0-MU${d}/Firefox/3.5.17/${p}/*/ Firefox-3.5.18-build1-4.0-MU${d}/Firefox/3.5.18/${p}/*/ done done
No output.
Enable test snippets
~/bin/backupsnip Firefox-3.5.18-build1-4.0-MU-test ~/bin/pushsnip Firefox-3.5.18-build1-4.0-MU-test
3.6.16 -> 3.6
Generation
cd /opt/aus2/snippets/staging # releasetest snippets rsync --exclude=betatest -av Firefox-3.6.16-build1-4.0rc2-build3-MU-test/ Firefox-3.6.16-build1-4.0-MU-test/ find Firefox-3.6.16-build1-4.0-MU-test/ -type f -exec sed -i -e 's/RC 2//' -e 's/rc2//' {} \; rsync -av Firefox-3.6.16-build1-4.0rc2-build3-MU-beta/ Firefox-3.6.16-build1-4.0-MU-beta/ find Firefox-3.6.16-build1-4.0-MU-beta/ -type f -exec sed -i -e 's/RC 2//' -e 's/rc2//' {} \; rsync -av Firefox-3.6.16-build1-4.0rc2-build3-MU/ Firefox-3.6.16-build1-4.0-MU/ find Firefox-3.6.16-build1-4.0-MU/ -type f -exec sed -i -e 's/RC 2//' -e 's/rc2//' {} \;
Quick Verify
# releasetest == beta find Firefox-3.6.16-build1-4.0-MU-test -type d -iregex '.*/releasetest$' | perl -nle '$a = $_; $a =~ s/releasetest/beta/; $a =~ s/-test/-beta/; system("diff -r -u $_ $a");' find Firefox-3.6.16-build1-4.0-MU-beta -type d -iregex '.*/beta$' | perl -nle '$a = $_; $a =~ s/beta$/releasetest/; $a =~ s/-beta/-test/; system("diff -r -u $_ $a");' # beta == release find Firefox-3.6.16-build1-4.0-MU -type d -iregex '.*/release$' | perl -nle '$a = $_; $a =~ s/release/beta/; $a =~ s/MU/MU-beta/; system("diff -r -u $_ $a");' find Firefox-3.6.16-build1-4.0-MU-beta -type d -iregex '.*/beta$' | perl -nle '$a = $_; $a =~ s/beta$/release/; $a =~ s/-beta//; system("diff -r -u $_ $a");'
No output.
Diff against original snippets
Verified that only appv and url have changed with a diff. Saw something like this for all snippets:
diff -aur Firefox-3.6.16-build1-4.0rc2-build3-MU-test/ Firefox-3.6.16-build1-4.0-MU-test/ | grep -v betatest | grep '^[+-]' ... -url=http://download.mozilla.org/?product=firefox-4.0rc2-complete&os=win&lang=zh-TW +url=http://download.mozilla.org/?product=firefox-4.0-complete&os=win&lang=zh-TW -appv=4.0 RC 2 +appv=4.0
Diff against same snippets for 3.6.15
for p in Darwin_x86-gcc3-u-ppc-i386 Linux_x86-gcc3 WINNT_x86-msvc; do diff -ru Firefox-3.6.15-build1-4.0-MU/Firefox/3.6.15/$p/*/ Firefox-3.6.16-build1-4.0-MU/Firefox/3.6.16/$p/*/ done
No output.
Enable test snippets
~/bin/backupsnip Firefox-3.6.16-build1-4.0-MU-test ~/bin/pushsnip Firefox-3.6.16-build1-4.0-MU-test
Stage and Rename Files
Summary:
- Copy files to ~ffxbld and rename to non-RC versions
- Exclude *checksums* because we don't care for individual locale+platform checksums files in the final release dir
- Exclude partial MARs because there's no use for them, no point in pushing them to the mirrors
- Exclude Source packages because they're regenerated for final
- Exclude *SUMS* because we'll be regenerating them.
- Exclude all of the stuff that would normally be excluded when going from candidates -> releases (logs, info files, unsigned dir, crsahreporter symbols)
Details:
# ffxbld@stage # clean up from the RC1 attempt rm -rf firefox-4.0 mkdir firefox-4.0 cd firefox-4.0 rsync --exclude=*.log --exclude=*tests* --exclude=*.txt --exclude=*checksums* --exclude='*partial.mar' --exclude=source --exclude=*SUMS* --exclude=unsigned --exclude=*crashreporter* -av /pub/mozilla.org/firefox/nightly/4.0rc2-candidates/build3/ . rsync -av /pub/mozilla.org/firefox/nightly/4.0-candidates/build1/source/ source/ find contrib* linux* update -type f -exec rename rc2 '' {} \; find mac win32 -type f -exec rename " RC 2" "" {} \; wget -O../firefox-4.0-shipped-locales http://hg.mozilla.org/releases/mozilla-2.0/raw-file/FIREFOX_4_0_RELEASE/browser/locales/shipped-locales ~cltbld/bin/verify-locales.pl -m ~/firefox-4.0-shipped-locales -l bz2 ~cltbld/bin/checksum-files .
Then, sign the checksum and source files by doing the following on keymaster:
mkdir -p ~/signing-work/firefox-4.0 cd ~/signing-work/firefox-4.0 cvs co -d:ext:cltbld@cvs.mozilla.org:/mofo co -d signing release/signing/tools rsync -av -e 'ssh -i /home/cltsign/.ssh/ffxbld_dsa' ffxbld@stage.mozilla.org:firefox-4.0/*SUMS . rsync -av -e 'ssh -i /home/cltsign/.ssh/ffxbld_dsa' ffxbld@stage.mozilla.org:firefox-4.0/source/ source/ signing/sign-files . rsync -av -e 'ssh -i /home/cltsign/.ssh/ffxbld_dsa' *SUMS* ffxbld@stage.mozilla.org:firefox-4.0/ rsync -av -e 'ssh -i /home/cltsign/.ssh/ffxbld_dsa' source/ ffxbld@stage.mozilla.org:firefox-4.0/source/
And then back on stage:
chown -R ffxbld:firefox linux-i686 linux-x86_64 mac update win32 chmod 644 *SUMS*
Verify locales complains about en-US having XPIs, but that's desired these days, so ignorable.
Other Verifications
Virus Scan
Manually triggered on stage with:
# ffxbld@stage python /usr/local/bin/extract_and_run_command.py -j4 clamdscan -m --no-summary -- ~/firefox-4.0
Passed.
Verify permissions
find /home/ffxbld/firefox-4.0/ ! -user ffxbld ! -path \'*/contrib*\' find /home/ffxbld/firefox-4.0/ ! -group firefox ! -path \'*/contrib*\' find /home/ffxbld/firefox-4.0/ -type f ! -perm 644 find /home/ffxbld/firefox-4.0/ -mindepth 1 -type d ! -perm 755 ! -path \'*/contrib*\' ! -path \'*/partner-repacks*\' find /home/ffxbld/firefox-4.0/ -maxdepth 1 -type d ! -perm 2775 -path \'*/contrib*\'
Verify contents against RC
cd ~ffxbld/firefox-4.0 find /pub/mozilla.org/firefox/releases/4.0rc2/ -type f | perl -nle '$a = substr($_,41); $a =~ s/rc2//; $a =~ s/\ RC\ 2//; system("diff","-q",$_,$a);'
Results:
Files /pub/mozilla.org/firefox/releases/4.0rc2/source/firefox-4.0rc2.bundle.asc and source/firefox-4.0.bundle.asc differ Files /pub/mozilla.org/firefox/releases/4.0rc2/source/firefox-4.0rc2.bundle and source/firefox-4.0.bundle differ Files /pub/mozilla.org/firefox/releases/4.0rc2/source/firefox-4.0rc2.source.tar.bz2 and source/firefox-4.0.source.tar.bz2 differ Files /pub/mozilla.org/firefox/releases/4.0rc2/source/firefox-4.0rc2.source.tar.bz2.asc and source/firefox-4.0.source.tar.bz2.asc differ diff: update/linux-i686/af/firefox-4.0rc1-4.0.partial.mar: No such file or directory diff: update/linux-i686/ak/firefox-4.0rc1-4.0.partial.mar: No such file or directory ... diff: update/win32/zh-CN/firefox-4.0rc1-4.0.partial.mar: No such file or directory diff: update/win32/zh-TW/firefox-4.0rc1-4.0.partial.mar: No such file or directory diff: update/win32/zu/firefox-4.0rc1-4.0.partial.mar: No such file or directory Files /pub/mozilla.org/firefox/releases/4.0rc2/MD5SUMS and MD5SUMS differ Files /pub/mozilla.org/firefox/releases/4.0rc2/MD5SUMS.asc and MD5SUMS.asc differ Files /pub/mozilla.org/firefox/releases/4.0rc2/SHA1SUMS and SHA1SUMS differ Files /pub/mozilla.org/firefox/releases/4.0rc2/SHA1SUMS.asc and SHA1SUMS.asc differ
All ignorable:
- Source files differ because we regenerated them
- Partials are missing because we purposely don't include them
- SUMS files differ because we regenerated them
Add Index Files
index.html was e-mailed to me by LegNeato, and I put it in ~ffxbld@stage
# ffxbld@stage cd ~/firefox-4.0 cp ~/index.html . for dir in `find . -type d -mindepth 1`; do cp -pv index.html $dir/; done
Push index files
justdave says that we should push the index.html 6 hours before the rest of the contents, to ensure it gets everywhere ahead of everything else. Use this command to do so:
rsync -av --exclude=KEY --exclude=*.xpi --exclude=*.bz2 --exclude=*.dmg --exclude=*.exe --exclude=*.mar --exclude=*.bundle --exclude=*SUMS* --exclude=*.asc /home/ffxbld/firefox-4.0/ /pub/mozilla.org/firefox/releases/4.0/
Push to Mirrors
rsync -av /home/ffxbld/firefox-4.0/ /pub/mozilla.org/firefox/releases/4.0/
Update rsync modules
Removed Firefox 3.5.17 from mozilla-current and added 4.0, in stage:/pub/mozilla.org/pub/zz/rsyncd-mozilla-current.exclude. We still have 3.5.17 in mozilla-releases and get plenty of coverage there for the set of people still on 3.5.x.
Notify AV Vendors
Sent notification to AV vendors after the push to mirrors, so that they can scan the files.
Repush MU and notify release-drivers of MU testing
3.5.18 and 3.6.16 overwrote the major updates on releasetest so repushed them:
~/bin/backupsnip Firefox-3.5.17-build1-4.0-MU-test ~/bin/pushsnip Firefox-3.5.17-build1-4.0-MU-test ~/bin/backupsnip Firefox-3.6.15-build1-4.0-MU-test ~/bin/pushsnip Firefox-3.6.15-build1-4.0-MU-test
E-mailed release-drivers and let them know that both MUs are ready to be tested on releasetest when uptake over 10k.
Remove Serbian snippets from MU
bug 643689 requests that we pull the Serbian ('sr') snippets prior to pushing the MUs. Did the following to do so:
# cltbld@aus2-staging cd /opt/aus2/snippets/staging for d in Firefox-3.5.17-build1-4.0-MU-beta Firefox-3.5.17-build1-4.0-MU Firefox-3.6.15-build1-4.0-MU Firefox-3.6.15-build1-4.0-MU-beta; do rsync -av $d/ $d-with-sr/ find $d -type d -name sr -exec rm -rfv {} \; done
Verification:
# Verification for d in Firefox-3.5.17-build1-4.0-MU-beta Firefox-3.5.17-build1-4.0-MU Firefox-3.6.15-build1-4.0-MU Firefox-3.6.15-build1-4.0-MU-beta; do diff --brief -r $d/ $d-with-sr/ done
Output:
Only in Firefox-3.5.17-build1-4.0-MU-beta-with-sr/Firefox/3.5.17/Darwin_x86-gcc3-u-ppc-i386/20110121150727: sr Only in Firefox-3.5.17-build1-4.0-MU-beta-with-sr/Firefox/3.5.17/Linux_x86-gcc3/20110121161846: sr Only in Firefox-3.5.17-build1-4.0-MU-beta-with-sr/Firefox/3.5.17/WINNT_x86-msvc/20110121150729: sr Only in Firefox-3.5.17-build1-4.0-MU-with-sr/Firefox/3.5.17/Darwin_x86-gcc3-u-ppc-i386/20110121150727: sr Only in Firefox-3.5.17-build1-4.0-MU-with-sr/Firefox/3.5.17/Linux_x86-gcc3/20110121161846: sr Only in Firefox-3.5.17-build1-4.0-MU-with-sr/Firefox/3.5.17/WINNT_x86-msvc/20110121150729: sr Only in Firefox-3.6.15-build1-4.0-MU-with-sr/Firefox/3.6.15/Darwin_x86-gcc3-u-ppc-i386/20110303024001: sr Only in Firefox-3.6.15-build1-4.0-MU-with-sr/Firefox/3.6.15/Linux_x86-gcc3/20110303024323: sr Only in Firefox-3.6.15-build1-4.0-MU-with-sr/Firefox/3.6.15/WINNT_x86-msvc/20110303024726: sr Only in Firefox-3.6.15-build1-4.0-MU-beta-with-sr/Firefox/3.6.15/Darwin_x86-gcc3-u-ppc-i386/20110303024001: sr Only in Firefox-3.6.15-build1-4.0-MU-beta-with-sr/Firefox/3.6.15/Linux_x86-gcc3/20110303024323: sr Only in Firefox-3.6.15-build1-4.0-MU-beta-with-sr/Firefox/3.6.15/WINNT_x86-msvc/20110303024726: sr
And also from the 3.5.18/3.6.16 snippets:
# cltbld@aus2-staging cd /opt/aus2/snippets/staging for d in Firefox-3.6.16-build1-4.0-MU-beta Firefox-3.6.16-build1-4.0-MU Firefox-3.5.18-build1-4.0-MU-beta Firefox-3.5.18-build1-4.0-MU; do rsync -av $d/ $d-with-sr/ find $d -type d -name sr -exec rm -rfv {} \; done
Verification:
# Verification for d in Firefox-3.6.16-build1-4.0-MU-beta Firefox-3.6.16-build1-4.0-MU Firefox-3.5.18-build1-4.0-MU-beta Firefox-3.5.18-build1-4.0-MU; do diff --brief -r $d/ $d-with-sr/ done
Output:
Only in Firefox-3.6.16-build1-4.0-MU-beta-with-sr/Firefox/3.6.16/Darwin_x86-gcc3-u-ppc-i386/20110319135224: sr Only in Firefox-3.6.16-build1-4.0-MU-beta-with-sr/Firefox/3.6.16/Linux_x86-gcc3/20110319135224: sr Only in Firefox-3.6.16-build1-4.0-MU-beta-with-sr/Firefox/3.6.16/WINNT_x86-msvc/20110319135224: sr Only in Firefox-3.6.16-build1-4.0-MU-with-sr/Firefox/3.6.16/Darwin_x86-gcc3-u-ppc-i386/20110319135224: sr Only in Firefox-3.6.16-build1-4.0-MU-with-sr/Firefox/3.6.16/Linux_x86-gcc3/20110319135224: sr Only in Firefox-3.6.16-build1-4.0-MU-with-sr/Firefox/3.6.16/WINNT_x86-msvc/20110319135224: sr Only in Firefox-3.5.18-build1-4.0-MU-beta-with-sr/Firefox/3.5.18/Darwin_x86-gcc3-u-ppc-i386/20110319140258: sr Only in Firefox-3.5.18-build1-4.0-MU-beta-with-sr/Firefox/3.5.18/Linux_x86-gcc3/20110319140258: sr Only in Firefox-3.5.18-build1-4.0-MU-beta-with-sr/Firefox/3.5.18/WINNT_x86-msvc/20110319140258: sr Only in Firefox-3.5.18-build1-4.0-MU-with-sr/Firefox/3.5.18/Darwin_x86-gcc3-u-ppc-i386/20110319140258: sr Only in Firefox-3.5.18-build1-4.0-MU-with-sr/Firefox/3.5.18/Linux_x86-gcc3/20110319140258: sr Only in Firefox-3.5.18-build1-4.0-MU-with-sr/Firefox/3.5.18/WINNT_x86-msvc/20110319140258: sr
Push Major Updates
#cltbld@aus2-staging cd /opt/aus2/snippets/staging ~/bin/pushsnip Firefox-3.6.15-build1-4.0-MU ~/bin/pushsnip Firefox-3.5.17-build1-4.0-MU ~/bin/pushsnip Firefox-3.6.15-build1-4.0-MU-beta ~/bin/pushsnip Firefox-3.5.17-build1-4.0-MU-beta
Also pushed the 3.5.18/3.6.16 ones ahead of those releases:
~/bin/pushsnip Firefox-3.6.16-build1-4.0-MU ~/bin/pushsnip Firefox-3.6.16-build1-4.0-MU-beta ~/bin/pushsnip Firefox-3.5.18-build1-4.0-MU ~/bin/pushsnip Firefox-3.5.18-build1-4.0-MU-beta
Remove index files
ffxbld@stage
cd /pub/mozilla.org/firefox/releases/4.0 find . -name index.html -exec rm -v {} \;
Update symlinks on FTP
ln -s 4.0 latest-4.0 rm latest ln -s latest-4.0 latest
Remove updates for broken locales
- Removed "ml", and "te" Mac updates from 3.6.15 from the live snippet dirs.
- Synced to PHX with:
cd /opt/aus2/incoming/3/Firefox/3.6.15 rsync -e "ssh -i $HOME/.ssh/auspush" -Pa0 --delete $PWD/ ffxbld@dp-ausstage01.phx.mozilla.com:$PWD/
- Removed "kn", "ml", and "te" Mac updates from 3.5.18 from the live snippet dirs.
find Darwin_* -type d -name kn -o -name ml -o -name te -exec rm -rf {} \
- Synced to PHX with:
cd /opt/aus2/incoming/3/Firefox/3.5.17 rsync -e "ssh -i $HOME/.ssh/auspush" -Pa0 --delete $PWD/ ffxbld@dp-ausstage01.phx.mozilla.com:$PWD/
- Removed these locales from staging snippets:
find Firefox-{3.5.18,3.6.16}-build1-4.0-MU{,-beta} -type d -path '*Darwin*' -a \( -name kn -o -name ml -o -name te \) | xargs rm -rfv
EUBallot Builds
- Kev to provide us these.
- Manually added Bouncer Entry
- Signed with:
PRODUCT=firefox VERSION=4.0 BUILD=1 TAG=FIREFOX_4_0_RELEASE REPO='releases/mozilla-2.0' EMAIL=bhearsum@mozilla.com KEYDIR=d:/2010-keys cd ~/hg-tools hg pull && hg up -r ${TAG} #start signcode mkdir -p ~/signing-work/${PRODUCT}-${VERSION}-repacks/partners cd ~/signing-work/${PRODUCT}-${VERSION}-repacks/partners cp ~/hg-tools/release/signing/* . mkdir unsigned scp cltbld@surf.mozilla.org:/tmp/euballots-40-unsigned.tar . cd unsigned tar xvf ../euballots-40-unsigned.tar cd .. make PRODUCT=${PRODUCT} VERSION=${VERSION} BUILD=${BUILD} TAG=${TAG}REPO=${REPO} EMAIL=${EMAIL} USE_NEW=1 setup # This next step will fail to find the win32 log and/or xpis. # This is expected. cd unsigned/win32 ../../signing/sign-release ${KEYDIR} ../../signing/sign-files . cd ../.. mv unsigned signed cd signed tar -vcf ../euballot-40-signed.tar . cd .. scp euballot-40-signed.tar cltbld@stage.mozilla.org:/tmp Now available at surf:/tmp/euballot-40-signed.tar md5sum is 71668941f6b616d62552cf1ee75bb435u
- Staged with:
# ffxbld@stage mkdir ~ffxbld/euballot-4.0 cd ~ffxbld/euballot-4.0 tar -xvf /tmp/euballot-40-signed.tar rsync -av win32/ ~ffxbld/firefox-4.0/win32-EUballot/ rsync -av ~ffxbld/firefox-4.0/win32-EUballot/ /pub/mozilla.org/firefox/releases/4.0/win32-EUballot/
- Filed bug 643854 to have IT update the website.
Disable Unwanted 3.5.17/3.6.15 Darwin PPC snippets
We forgot to exclude these when generating the MUs :(. 3.5.18/3.6.16 were created with a newer version of the UPDATE_PACKAGING tag, which doesn't create PPC snippets at all. To fix:
# ffxbld@aus2-staging cd /opt/aus2/incoming/3/Firefox/3.5.17 rm -rf Darwin_ppc-gcc3-u-ppc-i386/ cd /opt/aus2/incoming/3/Firefox/3.6.15 rm -rf Darwin_ppc-gcc3-u-ppc-i386/
# ffxbld@dp-ausstage01 cd /opt/aus2/incoming/3/Firefox/3.5.17 rm -rf Darwin_ppc-gcc3-u-ppc-i386/ cd /opt/aus2/incoming/3/Firefox/3.6.15 rm -rf Darwin_ppc-gcc3-u-ppc-i386/
XULRunner
Sign
#!/bin/bash set -x set -e PRODUCT=xulrunner VERSION=2.0 BUILD=3 TAG=FIREFOX_4_0_RELEASE REPO="releases/mozilla-2.0" EMAIL=bhearsum@mozilla.com KEYDIR=d:/2010-keys cd ~/hg-tools hg pull hg up -r ${TAG} mkdir -p ~/signing-work/${PRODUCT}-${VERSION} cd ~/signing-work/${PRODUCT}-${VERSION} 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 -i /home/cltsign/.ssh/xrbld_dsa" \ --exclude=*.txt --exclude=*.checksums --exclude=*-symbols.zip \ xrbld@stage.mozilla.org:/home/ftp/pub/${PRODUCT}/nightly/${VERSION}-candidates/build${BUILD}/ \ unsigned-build${BUILD} rsync -av --exclude=unsigned unsigned-build${BUILD}/ \ signed-build${BUILD}/ rsync -av unsigned-build${BUILD}/unsigned/ \ signed-build${BUILD}/ make checksum-files create-sigs stage verify-sigs \ PRODUCT=${PRODUCT} VERSION=${VERSION} BUILD=${BUILD} \ REPO=${REPO} EMAIL=${EMAIL} KEYDIR=${KEYDIR} USE_NEW=1 rmdir signed-build${BUILD}/contrib{,-localized} rsync -av -e "ssh -i /home/cltsign/.ssh/xrbld_dsa" \ signed-build${BUILD}/ \ xrbld@stage.mozilla.org:/home/ftp/pub/${PRODUCT}/nightly/${VERSION}-candidates/build${BUILD}/
Push to Mirrors
rsync -av --exclude=*.txt --exclude=*unsigned* --exclude=*-symbols.zip --exclude=*.checksums /pub/mozilla.org/xulrunner/nightly/2.0-candidates/build3/ /pub/mozilla.org/xulrunner/releases/2.0/
Update Wiki Pages
Updated the links in these two wiki pages for the version change: