Releases/Firefox 3.0.13/BuildNotes: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
No edit summary
Line 153: Line 153:
be sure to land [https://bugzilla.mozilla.org/attachment.cgi?id=391870 this AUS patch]
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 =====
===== Push to AUS =====
===== Push to AUS =====

Revision as of 20:30, 31 July 2009

Please be sure to use

  • UPDATE_PACKAGING_R9 in the bootstrap config
  • RELEASE_AUTOMATION_M15 in the buildbot master config (for bug 496491)

Build Engineers

nthomas
Tracking release bug

Bonsai queries

  • cvsroot
  • l10n

Tags

Build 1:

Module Branch Tag Pull date
cvsroot/mozilla HEAD
l10n/l10n HEAD

Notes

Build 1

  • On fx-win32-1.9-slave2:
    • Deleted /e/xr19rel/WINNT_5.2_Depend
    • Deleted /e/fx19l10nrel/WINNT_5.2_Depend
    • Deleted /e/fx19rel/WINNT_5.2_Depend
  • On fx-linux-1.9-slave2:
    • Deleted /builds/verify/firefox-3.0.12
    • Deleted /builds/verify/firefox-3011-35rc3build2-major-test
    • Deleted /builds/updates/firefox-3.0.12
    • Deleted /builds/source/firefox-3.0.12
    • Deleted /builds/tags/FIREFOX_3_0_8_BUILD2
    • Deleted /builds/data/cltbld/firefox-3.0.12
    • Deleted /builds/tinderbox/Tb-Mozilla1.9-l10n-Release/Linux_2.6.18-53.1.13.el5_Depend/ (one-off)
    • Deleted /builds/tinderbox/Xr-Mozilla1.9-Release/Linux_2.6.18-53.1.13.el5_Depend
  • On fx-mac-1.9-slave2:
    • Deleted /builds/verify/firefox-3.0.12 (and some old major update test runs, a one off)
  • Space free on slaves:
    • fx-mac-1.9-slave2: 24G free on /
    • fx-win32-1.9-slave2: 16.4G free on D, 14G free on E
    • fx-linux-1.9-slave2: 21G free on /builds
  • Kicked off automation:
 buildbot sendchange --username=nthomas --master=localhost:9989 -m"Firefox 3.0.13build1 release" go

Tag

No problems

Source

No problems

Build & Repack

  • Linux - no problems
  • Win32 - no problems
  • Mac - no problems

Sign

  • Signing doc
  • NB: Doc change - do only the linked section.
  • no problems

L10nVerify

No l10n changes at all

Generate Updates

No problems with update generation

Publish Updates to Test Channels (betatest & releasetest)

No problems

Update Verify

  • linux - full PASS
  • win32 - .chk files differ, as always, otherwise fine.
  • mac - full PASS

Stage

Partner Repacks

no longer need to do these since we've shipped 3.5

XULRunner

automated, no problems

Sign Installers

Done manually using these installer-signing-instructions 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

done

Push to mirrors

NOT DONE YET 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

NOT DONE YET

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


  • 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");'
$

3.0.13 -> 3.5.x Major Update Refresh

NOT DONE YET be sure to land this AUS patch

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
Push to AUS
Enable test snippets
Update verify

Push updates to beta channel

NOT DONE YET

  # 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 this AUS throttling update gets landed after beta snippets are pushed, otherwise 3.0.12 beta users will not be passively updated.

Also need to push 3.0.13 -> 3.5.2 MU beta channel snippets.

Publish Updates to Release Channel

NOT DONE YET updated AUS' config-dist.php and pushed because of the new MU at this time.

# cltbld@aus2-staging
cd /opt/aus2/snippets/staging
~/bin/backupsnip 20090731-Firefox-3.0.13
~/bin/pushsnip 20090731-Firefox-3.0.13

Make sure that this AUS throttle update gets landed, tagged, and pushed (instructions are in the bug).

Also need to push 3.0.13 -> 3.5.2 MU release channel snippets.

Release

NOT DONE YET

# ffxbld@stage
cd /home/ftp/pub/firefox/releases
rm latest-3.0 && ln -s 3.0.13 latest-3.0

Release matching XULRunner build

NOT DONE YET 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 /home/ftp/pub/firefox/releases/${FX_VERSION}/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 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 /home/ftp/pub/firefox/releases/${FX_VERSION}/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