Releases/Firefox 3.0.16/BuildNotes

Build Engineer(s)

coop

Tracking release bug

Bonsai queries

Tags

Build 1:

Module Branch Tag Pull date
cvsroot/mozilla HEAD GECKO190_20091130_RELBRANCH FIREFOX_3_0_16_BUILD1 FIREFOX_3_0_16_RELEASE 2009-11-19 10:28 PDT (wrong timezone!)
l10n/l10n HEAD GECKO190_20091130_RELBRANCH FIREFOX_3_0_16_BUILD1 FIREFOX_3_0_16_RELEASE 2009-09-22 05:34 PDT

Build 2:

Module Branch Tag Pull date
cvsroot/mozilla HEAD GECKO190_20091130_RELBRANCH FIREFOX_3_0_16_BUILD2 FIREFOX_3_0_16_RELEASE 2009-11-30 18:29 PST
l10n/l10n HEAD GECKO190_20091130_RELBRANCH FIREFOX_3_0_16_BUILD2 FIREFOX_3_0_16_RELEASE 2009-09-22 05:34 PDT

Build 3:

Module Branch Tag Pull date
cvsroot/mozilla HEAD GECKO190_20091130_RELBRANCH FIREFOX_3_0_16_BUILD3 FIREFOX_3_0_16_RELEASE 2009-12-01 15:18 PST
l10n/l10n HEAD GECKO190_20091130_RELBRANCH FIREFOX_3_0_16_BUILD3 FIREFOX_3_0_16_RELEASE 2009-09-22 05:34 PDT

Notes

Build 1

  • on fx-linux-1.9-slave2 deleted:
    • /builds/verify/firefox-3.0.15
    • /builds/verify/firefox-3015-355-major
    • /builds/source/firefox-3.0.15
    • /builds/data/cltbld/firefox-3.0.15
    • /builds/tinderbox/Xr-Mozilla1.9-Release/Linux_2.6.18-53.1.13.el5_Depend
    • /builds/tinderbox/Fx-Mozilla1.9-l10n-Release//Linux_2.6.18-53.1.13.el5_Depend
  • On fx-mac-1.9-slave2 deleted:
    • /builds/verify/firefox-3.0.15
    • /builds/verify/firefox-3015-354-major
    • /builds/verify/firefox-3015-355-major
  • On fx-win32-1.9-slave2 deleted:
    • /e/xr19rel/WINNT_5.2_Depend
    • /e/fx19l10nrel/WINNT_5.2_Depend
    • /e/fx19rel/WINNT_5.2_Depend
  • Available space on slaves:
    • fx-linux-1.9-slave2 35 GB on /builds
    • fx-mac-1.9-slave2 17 GB on /
    • fx-win32-1.9-slave2 15.0 GB on D: / 14.1 GB on E:
  • Kicked off automation:
buildbot sendchange --username=coop --master=localhost:9989 -m"Firefox 3.0.16build1 release" DOOOOOEEEEET!

Tag

Two aborted tag attempts prior to a successful one. Forgot to reconfig the master the first time, and then forgot to update the RELEASE_AUTOMATION_M15 tag on the bootstrap configs to point to the latest version.

Source

No problems.

Build & Repack

  • Linux - No problems
  • Mac - No problems
  • Win32 - *** RESPIN CALLED FOR bug 529401 ***

Build 2

  • on fx-linux-1.9-slave2 deleted:
    • nothing
  • On fx-mac-1.9-slave2 deleted:
    • /builds/partners/partner-repacks/scripts/original_builds
    • /builds/partners/partner-repacks/scripts/repacked_builds
  • On fx-win32-1.9-slave2 deleted:
    • /e/fx19l10nrel/WINNT_5.2_Depend
    • /e/fx19rel/WINNT_5.2_Depend
  • Available space on slaves:
    • fx-linux-1.9-slave2 31 GB on /builds
    • fx-mac-1.9-slave2 17 GB on /
    • fx-win32-1.9-slave2 15.0 GB on D: / 14.1 GB on E:
  • Update the bootstrap configs
  • Check them in and tag them or tag will fail
  • Kicked off automation:
buildbot sendchange --username=coop --master=localhost:9989 -m"Firefox 3.0.16build2 release" DOOOOOEEEEET!

Tag

  • Forgot to tag the bumped configs, so the first tag run failed.
  • Discovered that the build 1 timestamp specified PDT instead of PST, so we missed the last change when creating the relbranch
  • interrupted source and en-US builds
  • merged the change over to the branch, creating rev 3.216.4.1, and moved the FIREFOX_3_0_16_RELEASE and FIREFOX_3_0_16_BUILD2 tags onto that
  • patched production-1.9-master:/build/buildbot/master.cfg and reconfiged
Index: master.cfg
===================================================================
RCS file: /cvsroot/mozilla/tools/buildbot-configs/automation/production-1.9/master.cfg,v
retrieving revision 1.56
diff -u -r1.56 master.cfg
--- master.cfg	5 Aug 2009 03:43:58 -0000	1.56
+++ master.cfg	1 Dec 2009 03:11:29 -0000
@@ -449,13 +449,17 @@
  haltOnFailure=1,
 )
 
+from buildbot.process.factory import BuildFactory
+from buildbot.steps.dummy import Dummy
+dummyFactory = BuildFactory()
+dummyFactory.addStep(Dummy())
 c['builders'].append(
  { 
   'name': 'tag',
   'slavename': 'fx-linux-1.9-slave2',
   'category': 'release',
   'builddir': 'tag',
-  'factory': tagFactory,
+  'factory': dummyFactory,
  },
 )
  • cleaned up fx-linux-1.9-slave2:/builds/source/firefox-3.0.16/batch-source/build2
  • cleaned up /builds/config/firefox-3.0.16-build2 on all three slaves
  • removed FIREFOX_3_0_16_BUILD2_l10n and FIREFOX_3_0_16_BUILD2 tags from mozilla/tools/tinderbox-configs/firefox
  • stopped buildbot on win32 slave, clean up link/make/perl processes, start buildbot
  • give another sendchange
buildbot sendchange --username=nthomas --master=localhost:9989 -m"Firefox 3.0.16build2 release - restart" DOOOOOEEEEET!

In retrospect, merging the change to the relbrnach and doing build 3 would have been much easier!

Source

No problems

Build & Repack

  • Linux - No problems
  • Mac - No problems
  • Win32 - No problems

Sign

L10nVerify

  • No problems

Generate Updates

  • No problems

Publish Updates to Test Channels (betatest & releasetest)

Update Verify

  • linux - No problems
  • win32 - .chk files problems (EXPECTED)
  • mac - No problems

Stage

No problems

*** RESPIN CALLED FOR bug 504862 ***

Build 3

  • on fx-linux-1.9-slave2 deleted:
    • /builds/source/firefox-3.0.16
    • /builds/updates/firefox-3.0.16
    • /builds/verify/firefox-3.0.16
    • /builds/tags/FIREFOX_3_0_16_BUILD1
    • /builds/tinderbox/Xr-Mozilla1.9-Release/Linux_2.6.18-53.1.13.el5_Depend
    • /builds/tinderbox/Fx-Mozilla1.9-l10n-Release/Linux_2.6.18-53.1.13.el5_Depend
  • On fx-mac-1.9-slave2 deleted:
    • nothing
  • On fx-win32-1.9-slave2 deleted:
    • /e/fx19l10nrel/WINNT_5.2_Depend
    • /e/fx19rel/WINNT_5.2_Depend
    • /e/xr19rel/WINNT_5.2_Depend
  • Available space on slaves:
    • fx-linux-1.9-slave2 29 GB on /builds
    • fx-mac-1.9-slave2 24 GB on /
    • fx-win32-1.9-slave2 15.0 GB on D: / 14.1 GB on E:
  • reverted dummy factory change in master.cfg on production-1.9-master
  • Updated the bootstrap configs
  • Checked them in and tagged them with RELEASE_AUTOMATION_M15, otherwise tagging will fail.
  • Kicked off automation:
buildbot sendchange --username=coop --master=localhost:9989 -m"Firefox 3.0.16build3 release" DOOOOOEEEEET!
  • forgot to reconfig master, shutdown builds as quickly as possible, reconfig-ed , and then sent another sendchange

Tag

  • No problems

Source

  • No problems

Build & Repack

  • 1st attempt - The aborted first run got as far as Tinderconfig before I could kill it. :/
    • Linux - failed in Tinderconfig
    • Mac - failed in Tinderconfig
    • Win32 - slave lost???
  • 2nd attempt, with Tinderconfig step commented out:
    • Linux - No problems
    • Mac - No problems
    • Win32 - slow, but no problems

Sign

L10nVerify

  • No problems

Generate Updates

  • No problems

Publish Updates to Test Channels (betatest & releasetest)

  • No problems

Update Verify

  • linux - No problems
  • win32 - .chk files problems (EXPECTED)
  • mac - No problems

Stage

  • solaris builds had been uploaded to contrib/ already, so rsync "failed" to sync contrib/ due to permissions issues, but everything else synced fine.

XULRunner

  • kicked off by hand due to stage step "failing." No problems

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 20091202-Firefox-3.0.16-beta

Then on official "go" email do pushsnip:

~/bin/pushsnip 20091202-Firefox-3.0.16-beta

3.0.16 -> 3.5.6 Major Update Refresh

Snippet Generation

On fx-linux-1.9-slave2:

mkdir -p /builds/3.0.16-3.5.6-major-update/snippets
cd /builds/3.0.16-3.5.6-major-update/snippets

cvs -d:ext:cltbld@cvs.mozilla.org:/cvsroot co -d patcher-configs mozilla/tools/patcher-configs
cvs -d:ext:cltbld@cvs.mozilla.org:/cvsroot co -r UPDATE_PACKAGING_R9 -d patcher mozilla/tools/patcher
cd patcher
cvs -d:ext:cltbld@cvs.mozilla.org:/cvsroot co -r UPDATE_PACKAGING_R9 -d MozBuild mozilla/tools/release/MozBuild

export CVSROOT=:ext:cltbld@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.6 3.0.16-3.5.6
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

Check that releasetest = beta = release. New in 3.0.15 we now use a new dir for beta

cd temp/firefox/3.0.16-3.5.6
# releasetest == beta
find aus2.test -type d -iregex '.*/releasetest$' | perl -nle '$a = $_; $a =~ s/releasetest/beta/; $a =~ s/aus2\.test/aus2.beta/; system("diff -r -u $_ $a");'
find aus2.beta -type d -iregex '.*/beta$' | perl -nle '$a = $_; $a =~ s/beta$/releasetest/; $a =~ s/aus2\.beta/aus2.test/; system("diff -r -u $_ $a");'
# beta == release
find aus2.beta -type d -iregex '.*/beta$' | perl -nle '$a = $_; $a =~ s/aus2\.beta/aus2/; $a =~ s/beta/release/; system("diff -r -u $_ $a");'
find aus2 -type d -iregex '.*/release$' | perl -nle '$a = $_; $a =~ s/release$/beta/; $a =~ s/aus2/aus2.beta/; system("diff -r -u $_ $a");'
Push to AUS

New in 3.0.15 - 3 dirs to sync now instead of 2

cd /builds/3.0.16-3.5.6-major-update/snippets/patcher/temp/firefox/3.0.16-3.5.6
rsync -e 'ssh -i /home/cltbld/.ssh/aus' -av aus2.test/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20091202-Firefox-3.0.16-3.5.6-MU-test
rsync -e 'ssh -i /home/cltbld/.ssh/aus' -av aus2.beta/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20091202-Firefox-3.0.16-3.5.6-MU-beta
rsync -e 'ssh -i /home/cltbld/.ssh/aus' -av aus2/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20091202-Firefox-3.0.16-3.5.6-MU
Enable test snippets
ssh -i ~/.ssh/aus2 cltbld@aus2-staging
cd /opt/aus2/snippets/staging
~/bin/backupsnip 20091202-Firefox-3.0.16-3.5.6-MU-test
~/bin/pushsnip   20091202-Firefox-3.0.16-3.5.6-MU-test
Update verify

Ran update verify on fx-{linux,mac,win32}-1.9-slave2 as follows:

mkdir -p /builds/verify/firefox-3016-356-major/
cd /builds/verify/firefox-3016-356-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

Check logs for results - whatever is after "succeeded", known issues are here

Verify succeeded if in the results everything is the same as 3.0.16 -> 3.5.6 MU. aka, everything is OK

*** DONE TO HERE ***

Sign Installers

Update Bouncer

Push to mirrors

Final Verification

Publish Updates to Release Channel

Release

Release matching XULRunner build