Releases/Firefox 3.0.13/BuildNotes: Difference between revisions

 
(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
| HEAD
| GECKO190_20090706_RELBRANCH
|  
| FIREFOX_3_0_13_BUILD1 FIREFOX_3_0_13_RELEASE
|
| 2009-07-30 19:18 PDT
|-
|-
| l10n/l10n
| l10n/l10n
| HEAD
| 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
==== Push updates to beta channel ====


==== 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
==== Push to mirrors ====
==== Final Verification ====


==== 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]
Confirmed users
4,293

edits