Confirmed users
4,293
edits
(39 intermediate revisions by 3 users not shown) | |||
Line 5: | Line 5: | ||
==Build Engineers== | ==Build Engineers== | ||
nthomas <br /> | nthomas, bhearsum <br /> | ||
[https://bugzilla.mozilla.org/show_bug.cgi?id=506708 Tracking release bug] | [https://bugzilla.mozilla.org/show_bug.cgi?id=506708 Tracking release bug] | ||
==Bonsai queries== | ==Bonsai queries== | ||
* cvsroot | * [http://bonsai.mozilla.org/cvsquery.cgi?treeid=default&module=PhoenixTinderbox&branch=GECKO190_20090706_RELBRANCH&branchtype=match&dir=&file=&filetype=match&who=&whotype=match&sortby=Date&hours=2&date=explicit&mindate=2009-07-30+19%3A18+PDT&maxdate=2009-07-06+09%3A14+PDT&cvsroot=%2Fcvsroot cvsroot] | ||
* l10n | * [http://bonsai-l10n.mozilla.org/cvsquery.cgi?treeid=default&module=all&branch=GECKO190_20090706_RELBRANCH&branchtype=match&dir=&file=&filetype=match&who=&whotype=match&sortby=Date&hours=2&date=explicit&mindate=2009-07-06+09%3A14&maxdate=2009-07-30+19%3A18&cvsroot=%2Fl10n l10n] | ||
==Tags== | ==Tags== | ||
Line 23: | Line 23: | ||
|- | |- | ||
| cvsroot/mozilla | | cvsroot/mozilla | ||
| | | GECKO190_20090706_RELBRANCH | ||
| | | FIREFOX_3_0_13_BUILD1 FIREFOX_3_0_13_RELEASE | ||
| | | 2009-07-30 19:18 PDT | ||
|- | |- | ||
| l10n/l10n | | l10n/l10n | ||
| | | GECKO190_20090706_RELBRANCH | ||
| | | FIREFOX_3_0_13_BUILD1 FIREFOX_3_0_13_RELEASE | ||
| | | 2009-07-30 19:18 PDT | ||
|} | |} | ||
Line 89: | Line 89: | ||
====Update Verify==== | ====Update Verify==== | ||
* linux - full PASS | * linux - full PASS | ||
* win32 - .chk files differ, as always, otherwise fine. | |||
* mac - full PASS | |||
====Stage==== | ====Stage==== | ||
No problems | |||
====Partner Repacks==== | ====Partner Repacks==== | ||
'''no longer need to do these since we've shipped 3.5''' {{bug|507961}} to disable them | |||
==== XULRunner ==== | ==== XULRunner ==== | ||
automated, no problems | |||
==== Sign Installers ==== | ==== Sign Installers ==== | ||
Done manually using these installer-signing-instructions [https://intranet.mozilla.org/Build:Signing#Installer.2Farchive_signing_before_release here]. NB: Doc location change, content unmodified. | Done manually using these installer-signing-instructions [https://intranet.mozilla.org/Build:Signing#Installer.2Farchive_signing_before_release here]. NB: Doc location change, content unmodified. | ||
* Had to locally modify sign-release because it hardcodes 'e:/2008-keys' for the key loocation {{bug|507660}} | |||
'''On Stage complete stage-merged:''' | |||
# on stage | |||
cd /data/cltbld/firefox-3.0.13/ | |||
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.13/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 ==== | ==== Update Bouncer ==== | ||
done | done | ||
==== 3.0.13 -> 3.5.x Major Update Refresh ==== | ==== 3.0.13 -> 3.5.x Major Update Refresh ==== | ||
be sure to land [https://bugzilla.mozilla.org/attachment.cgi?id=391870 this AUS patch] | |||
===== Snippet Generation ===== | ===== Snippet Generation ===== | ||
# ssh cltbld@prometheus-vm.build.mozilla.org | |||
mkdir -p /builds/3.0.13-3.5.2-major-update/snippets | |||
cd /builds/3.0.13-3.5.2-major-update/snippets | |||
cvs -d:ext:ffxbld@cvs.mozilla.org:/cvsroot co -d patcher-configs mozilla/tools/patcher-configs | |||
cvs -d:ext:ffxbld@cvs.mozilla.org:/cvsroot co -r UPDATE_PACKAGING_R9 -d patcher mozilla/tools/patcher | |||
cd patcher | |||
cvs -d:ext:ffxbld@cvs.mozilla.org:/cvsroot co -r UPDATE_PACKAGING_R9 -d MozBuild mozilla/tools/release/MozBuild | |||
export CVSROOT=:ext:ffxbld@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.2 3.0.13-3.5.2 | |||
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 ===== | ===== Quick verify ===== | ||
Check that releasetest = beta = release. | |||
cd temp/firefox/3.0.13-3.5.2 | |||
# releasetest == beta | |||
find aus2.test -type d -iregex '.*/releasetest$' | perl -nle '$a = $_; $a =~ s/releasetest/beta/; $a =~ s/aus2\.test/aus2/; system("diff -r -u $_ $a");' | |||
find aus2 -type d -iregex '.*/beta$' | perl -nle '$a = $_; $a =~ s/beta$/releasetest/; $a =~ s/aus2/aus2.test/; system("diff -r -u $_ $a");' | |||
# beta == release | |||
find aus2 -type d -iregex '.*/beta$' | perl -nle '$a = $_; $a =~ s/beta/release/; system("diff -r -u $_ $a");' | |||
find aus2 -type d -iregex '.*/release$' | perl -nle '$a = $_; $a =~ s/release$/beta/; system("diff -r -u $_ $a");' | |||
===== Push to AUS ===== | ===== Push to AUS ===== | ||
cd /builds/3.0.13-3.5.2-major-update/snippets/patcher/temp/firefox/3.0.13-3.5.2 | |||
rsync -e 'ssh -i /home/cltbld/.ssh/aus' -av aus2.test/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20090731-Firefox-3.0.13-3.5.2-MU-test | |||
rsync -e 'ssh -i /home/cltbld/.ssh/aus' -av aus2/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20090731-Firefox-3.0.13-3.5.2-MU | |||
===== Enable test snippets ===== | ===== Enable test snippets ===== | ||
Backupsnip was run for 20090731-Firefox-3.0.13, so I didn't run it again. | |||
# cltbld@aus-staging | |||
~/bin/pushsnip 20090731-Firefox-3.0.13-3.5.2-MU-test | |||
===== Update verify ===== | ===== Update verify ===== | ||
Ran update verify on fx-{linux,mac,win32}-1.9-slave2 as follows: | |||
mkdir -p /builds/verify/firefox-3013-352-major/ | |||
cd /builds/verify/firefox-3013-352-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 | |||
'''results''' everything the same as 3.0.12 -> 3.5.1 MU. aka, everything is OK | |||
==== Push updates to beta channel ==== | |||
# cltbld@aus2-staging.m.o | |||
# make sure scripts are up to date | |||
cd bin | |||
cvs update | |||
cd /opt/aus2/snippets/staging/ | |||
~/bin/backupsnip 20090731-Firefox-3.0.13-beta | |||
~/bin/pushsnip 20090731-Firefox-3.0.13-beta | |||
Make sure that [https://bugzilla.mozilla.org/attachment.cgi?id=391871 this AUS throttling update] gets landed after beta snippets are pushed, otherwise 3.0.12 beta users will not be passively updated. | |||
==== Disable 3.0.12 -> 3.5.1 MU ==== | |||
Drivers requested in {{bug|507967}} that we disable the current MU, so that people don't end up going 3.0.12 -> 3.5.1 -> 3.5.2 if they hear that a new firefox release is coming. | |||
# cltbld@aus2-staging | |||
cd /opt/aus2/snippets/staging/ | |||
rsync -a 20090721-Firefox-3.0.12-3.5.1-MU/ 20090802-Firefox-3.0.12-3.5.1-MU-null/ | |||
cd 20090802-Firefox-3.0.12-3.5.1-MU-null/ | |||
find . -depth -type d -iregex '.*/beta$' -exec rm -rf {} \; | |||
for f in `find . -type f`; do rm $f; touch $f; done | |||
Checked that there 370 empty snippets, to match 370 useful ones in the source dir, release channel only. | |||
~/bin/backupsnip 20090802-Firefox-3.0.12-3.5.1-MU-null | |||
~/bin/pushsnip 20090802-Firefox-3.0.12-3.5.1-MU-null | |||
==== Push to mirrors ==== | |||
Make sure that you use ffxbld for 'push to mirrors' , rather than cltbld (this is a change, but a desired one). | |||
* push the stage-merged directory to the releases area: | |||
# on stage | |||
rsync -av /data/cltbld/firefox-3.0.13/stage-merged/ /home/ftp/pub/firefox/releases/3.0.13/ | |||
* edit the exclude file (as cltbld) /pub/mozilla.org/zz/rsyncd-mozilla-current.exclude to add the new release (3.0.13) and remove the previous release (3.0.12). | |||
==== Final Verification ==== | |||
hg clone http://hg.mozilla.org/build/tools | |||
cd tools/release/updates | |||
cat moz19-firefox-*.cfg | grep -v major | sed 's/betatest/releasetest/' > 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 | |||
** A couple of 404 errors, eg for http://mozilla2.snt.utwente.nl so checked again when verify was done and the directory at http://mozilla2.snt.utwente.nl/firefox/releases/3.0.12/win32/zh-TW/ was populated | |||
* Before pushing final updates, verify that "release" and "releasetest" channel match: | |||
# on aus2-staging | |||
cd /opt/aus2/snippets/staging/20090731-Firefox-3.0.13 | |||
find -type d -iregex '.*release.*' | perl -nle '$a = $_; $a =~ s/release/releasetest/; system("diff -r -u $_ ../20090731-Firefox-3.0.13-test/$a");' | |||
==== Publish Updates to Release Channel ==== | ==== Publish Updates to Release Channel ==== | ||
updated AUS' config-dist.php and pushed because of the new MU at this time. | |||
# cltbld@aus2-staging | |||
cd /opt/aus2/snippets/staging | |||
###### | |||
# skipped backupsnip, as it was done for FF3.5.2 this morning | |||
# ~/bin/backupsnip 20090731-Firefox-3.0.13 | |||
###### | |||
time ~/bin/pushsnip 20090731-Firefox-3.0.13 | |||
real 2m21.174s | |||
user 0m0.427s | |||
sys 0m16.176s | |||
time ~/bin/pushsnip 20090731-Firefox-3.0.13-3.5.2-MU | |||
real 0m20.744s | |||
user 0m0.069s | |||
sys 0m2.347s | |||
Made sure that [https://bugzilla.mozilla.org/attachment.cgi?id=391872 this AUS throttle update] got landed, tagged, and pushed (instructions are in the bug). | |||
==== Release ==== | ==== Release ==== | ||
# ffxbld@stage | |||
cd /home/ftp/pub/firefox/releases | |||
rm latest-3.0 && ln -s 3.0.13 latest-3.0 | |||
==== Release matching XULRunner build ==== | ==== Release matching XULRunner build ==== | ||
XULRunner builds are produced by the automation, this is to groom them and push to the mirrors. | |||
# cltbld@stage | |||
VERSION=1.9.0.13 | |||
FX_VERSION=3.0.13 | |||
BUILD=1 | |||
mkdir -p ~/xulrunner-${VERSION}/batch1/stage-unsigned/{runtimes,source,sdk} | |||
cd ~/xulrunner-${VERSION}/batch1/stage-unsigned | |||
rsync -av --exclude=*sdk* --exclude=*info* \ | |||
/home/ftp/pub/xulrunner/nightly/${VERSION}-candidates/build${BUILD}/ runtimes/ | |||
rsync -av --include=*sdk* --exclude=* \ | |||
/home/ftp/pub/xulrunner/nightly/${VERSION}-candidates/build${BUILD}/ sdk/ | |||
cp -pv ~/firefox-${FX_VERSION}/stage-merged/source/firefox-${FX_VERSION}-source.tar.bz2 \ | |||
source/xulrunner-${VERSION}-source.tar.bz2 | |||
cd ~/xulrunner-${VERSION}/batch1 | |||
rsync -av stage-unsigned/ stage-signed/ | |||
Then create detached signatures per [https://intranet.mozilla.org/Build:Signing#Installer.2Farchive_signing_before_release usual process] (with PRODUCT=xulrunner, VERSION=1.9.0.13, don't need BUILD or TAG), skip the win32 signing section, do pgp, verify and upload. Back on stage: | |||
cd ~/xulrunner-${VERSION}/batch1/stage-signed | |||
cp ~/firefox-${FX_VERSION}/stage-merged/KEY . | |||
~/bin/checksum-files . | |||
chown -R cltbld:xulrunner . | |||
find . -type f -exec chmod -v 644 {} \; | |||
find . -type d -exec chmod -v 755 {} \; | |||
cd ~/xulrunner-${VERSION}/batch1 | |||
rsync -nav stage-signed/* /home/ftp/pub/xulrunner/releases/${VERSION}/ | |||
If all is fine then | |||
rsync -av stage-signed/* /home/ftp/pub/xulrunner/releases/${VERSION}/ | |||
(Mirror updating can take a bit, 10-15 mins this time) | |||
Ping mfinkle or Mossop to update the links in these two wiki pages for the version change | |||
* [https://developer.mozilla.org/En/XULRunner_1.9_Release_Notes Release Notes] | |||
* [https://developer.mozilla.org/En/Gecko_SDK Gecko_SDK] |