Firefox 2.0.0.12:BuildNotes

Revision as of 19:54, 4 February 2008 by Rhelmer (talk | contribs) (separate backup from deploy)

Build Engineers

Version/config bump bug 414327

Bonsai queries

Tags

Module Tag Pull date
cvsroot/mozilla RC1: GECKO181_20080128_RELBRANCH FIREFOX_2_0_0_12_RC1 FIREFOX_2_0_0_12_RELEASE 2008-01-28 16:00 PST
cvsroot/mozilla RC2: FIREFOX_2_0_0_12_RC2 FIREFOX_2_0_0_12_RELEASE 2008-01-30 13:00 PST
mofo/talkback/fullsoft RC1: GECKO181_20080128_RELBRANCH FIREFOX_2_0_0_12_RC1 2008-01-28 16:00 PST
l10n/l10n RC1: GECKO181_20080128_RELBRANCH FIREFOX_2_0_0_12_RC1 2008-01-28 16:00 PST

Build data

Type Build ID SHA1 Push date Build machine
[Windows installer/zip] RC1: production-pacifica-vm
[Mac compressed] RC1: bm-xserve05
[Linux compressed] RC1: production-prometheus-vm

Notes

RC1

Bootstrap tag: RELEASE_AUTOMATION_M7

Setup before starting:

  • used existing version bump bug to attached diff for bootstrap.cfg
    • "cvs update" in /home/buildmaster/Automation/bootstrap-configs/ after checkin. Did a cvs stat first to work out if any local patches or if unexpected changes would be pulled in
    • restarted master
  • ensure that machines have enough resources (bug 393274)
    • On production-prometheus-vm remove the contents of /builds/updates/* - didn't need to do this, plenty of space
    • On bm-xserve05 remove the contents of /builds/verify/*
    • On build-console, make sure both private and public areas are synced to stage:
      • rsync -nav /home/ftp/pub/firefox/nightly/2.0.0.11-candidates/ stage.mozilla.org:/home/ftp/pub/firefox/nightly/2.0.0.11-candidates/
      • removed /home/ftp/pub/thunderbird/ after comparing to staging like above
      • rsync -nav /data/cltbld/firefox-2.0.0.11/ stage:/data/cltbld/firefox-2.0.0.11/
        • expect new directories, but file contents should be the same
    • On build-console, remove private and public areas:
      • rm -rf /data/cltbld/firefox-*
      • rm -rf /builds/tags/* - did not do this, plenty of space
      • in /home/ftp/pub/firefox/nightly/, remove all except the 2.0.0.x-candidates directory for the previous release
  • kick off buildbot (run as cltbld):
    • buildbot sendchange --master=localhost:9989 -u joduinn -m"Firefox 2.0.0.12 RC1" release

Tag

Source

  • permissions problems in /home/ftp/pub/firefox/nightly prevented rsync to stage
    • to resolve: chmod a-s /home/ftp/pub/firefox/nightly
    • need to investigate what's causing this

Build

  • win32 build failed, CVS_RSH was not set in environment
    • buildbot slave was started from cmd.exe not cygwin
    • FIXME make this run on boot so we can't get it wrong :)
    • removed FIREFOX_2_0_0_12_* tags on tinder-config.pl/mozconfig and re-ran
  • mac build failed
    • removed FIREFOX_2_0_0_12_* tags on tinder-config.pl/mozconfig and re-ran
    • intermittent failure seen on staging:
----------- Output from MozillaAliveTest ------------- 
 2008-01-28 22:14:33.998 firefox-bin[9432] CFLog (0): CFMessagePort: bootstrap_register(): failed 1100 (0x44c), port = 0x3d03, name = 'Processes-0.2228225'
 See /usr/include/servers/bootstrap_defs.h for the error codes.
 2008-01-28 22:14:33.999 firefox-bin[9432] CFLog (99): CFMessagePortCreateLocal(): failed to name Mach port (Processes-0.2228225)
 CFMessagePortCreateLocal failed (name = Processes-0.2228225 error = 0)
----------- End Output from MozillaAliveTest ---------

Sign

Signing doc

L10nVerify

  • Automated verify ran. For linux & mac, worked fine, nothing to do. For win32, failed out with expected error.

Updates to Test Channels (betatest & releasetest)

  • automated, nothing to do.

update Verify

  • automated, nothing to do.

Stage

  • automated, nothing to do.
  • waiting for QA go/nogo.
  • bug 414856 declared showstopper.

RC2

Bootstrap tag: RELEASE_AUTOMATION_M7

Setup before starting:

  • used existing version bump bug to attached diff for bootstrap.cfg
  • ensure that machines have enough resources (bug 393274)
    • On production-prometheus-vm remove the contents of /builds/updates/* - didn't need to do this, plenty of space
    • On bm-xserve05 remove the contents of /builds/verify/*
    • On build-console, make sure both private and public areas are synced to stage:
      • rsync -nav /home/ftp/pub/firefox/nightly/2.0.0.11-candidates/ stage.mozilla.org:/home/ftp/pub/firefox/nightly/2.0.0.11-candidates/
      • rsync -nav /data/cltbld/firefox-2.0.0.11/ stage:/data/cltbld/firefox-2.0.0.11/
        • expect new directories, but file contents should be the same
    • On build-console, remove private and public areas:
      • rm -rf /data/cltbld/firefox-*
      • rm -rf /builds/tags/* - did not do this, plenty of space
      • in /home/ftp/pub/firefox/nightly/, remove all except the 2.0.0.x-candidates directory for the previous release
  • kick off buildbot (run as cltbld):
    • buildbot sendchange --master=localhost:9989 -u joduinn -m"Firefox 2.0.0.12 RC1" release

Tag

  • tag respin code determined relbranch incorrectly

Source

  • automated, nothing to do.

Build

  • had to disable part of tag workaround bug 414966 so win32 and mac builds would work
  • linux, mac builds handed over to QA
  • unsigned win32 builds were waiting to be signed, when QA discovered that bug 413250 has another exploit path. QA declare "nogo". Stopped waiting to respin.



RC3

Bootstrap tag: RELEASE_AUTOMATION_M7

Setup before starting:

  • used existing version bump bug to attached diff for bootstrap.cfg
  • ensure that machines have enough resources (bug 393274)
    • On production-prometheus-vm remove the contents of /builds/updates/* - didn't need to do this, plenty of space
    • On bm-xserve05 remove the contents of /builds/verify/*
    • On production-1.8-master, make sure both private and public areas are synced to stage:
      • rsync -nav /home/ftp/pub/firefox/nightly/2.0.0.11-candidates/ stage.mozilla.org:/home/ftp/pub/firefox/nightly/2.0.0.11-candidates/
      • rsync -nav /data/cltbld/firefox-2.0.0.11/ stage:/data/cltbld/firefox-2.0.0.11/
        • expect new directories, but file contents should be the same
    • On production-1.8-master, remove private and public areas:
      • rm -rf /data/cltbld/firefox-*
      • rm -rf /builds/tags/* - did not do this, plenty of space
      • in /home/ftp/pub/firefox/nightly/, remove all except the 2.0.0.x-candidates directory for the previous release
        • rm -rf /home/ftp/pub/firefox/nightly/2008*
        • rm -rf /home/ftp/pub/firefox/nightly/2.0.0.12-candidates
  • kick off buildbot (run as cltbld):
    • buildbot sendchange --master=localhost:9989 -u joduinn -m"Firefox 2.0.0.12 RC3" release

Tag

  • automated, nothing to do.

Source

  • automated, nothing to do.

Build

  • automated, nothing to do.

Sign

Signing doc

L10nVerify

Updates to Test Channels (betatest & releasetest)

  • Initially failed due to existing /builds/updates/firefox-2.0.0.12/patcher/mozilla, removed /builds/updates/firefox-2.0.0.12/ and restarted.

update Verify

  • Linux and Mac update verify failed initially, config bumper code problem bug 415261
  • Win32 should have failed, but warned instead. reopened bug 408157

Stage

Updates to Beta Channel

  • beta updates getting served completes not partials bug 388524
    • fixed this bug, had to regenerate and re-push snippets
  • verify beta snippets versus betatest snippets
cd /opt/aus2/snippets/staging/20080201-02-Firefox-2.0.0.12-beta/
find -type d -iregex '.*beta.*' | perl -nle '$a = $_; $a =~ s/beta/betatest/; system("diff -r -u $_ ../20080201-02-Firefox-2.0.0.12-test/$a");' 2>&1 | tee /tmp/beta.log
  • QA declare "nogo". Stopped waiting to respin.

RC4

Bootstrap tag: RELEASE_AUTOMATION_M7

Setup before starting:

  • used existing version bump bug to attached diff for bootstrap.cfg
  • attach diff to update verify, remove current version due to bug 415261
  • ensure that machines have enough resources
    • FIXME should be automatically backed up or removed - bug needed
  • On production-prometheus-vm remove the contents of /builds/updates/
    • FIXME need to do this or updates will fail - bug needed
  • On bm-xserve05, production-pacifica-vm, production-prometheus-vm remove the contents of /builds/verify/*
    • FIXME should be automatically backed up or removed - bug needed
  • On stage, rename ~/firefox-2.0.0.12 to ~/firefox-2.0.0.12-rc3
    • FIXME should be automatically backed up or removed - bug needed
  • On production-1.8-master, remove private and public areas:
    • FIXME should be automatically backed up or removed - bug needed
    • rm -rf /data/cltbld/firefox-*
    • rm -rf /builds/tags/* - did not do this, plenty of space
    • in /home/ftp/pub/firefox/nightly/, remove all except the 2.0.0.x-candidates directory for the previous release
      • rm -rf /home/ftp/pub/firefox/nightly/2008*
      • rm -rf /home/ftp/pub/firefox/nightly/2.0.0.12-candidates
  • kick off buildbot (run as cltbld):
    • buildbot sendchange --master=localhost:9989 -u joduinn -m"Firefox 2.0.0.12 RC4" release

Tag

  • automated, nothing to do.

Source

  • automated, nothing to do.

Build

  • automated, nothing to do.

Sign

Signing doc

L10nVerify

  • automated, nothing to do.

Updates to Test Channels (betatest & releasetest)

  • PatcherConfig undid the DisableCompleteUpdates change in bug 388524, bug reopened.
    • landed fix and re-generated AUS config:
# backup current config
cd /builds/updates/firefox-2.0.0.12/patcher/temp/firefox/2.0.0.11-2.0.0.12
mkdir rc4.1
mv aus2.* rc4.1
# pull in fixed config
cd /builds/updates/firefox-2.0.0.12/config/
cvs up
# regenerate AUS config
cd /builds/updates/firefox-2.0.0.12/patcher/
./patcher2.pl --app=firefox --config=../config/moz18-branch-patcher2.cfg --create-patchinfo 2>&1 | tee patchinfo-rc4_2.log
  • push new config to AUS
rsync -e ssh -av aus2.beta/ aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20080203-Firefox-2.0.0.12-beta/
rsync -e ssh -av aus2.test/ aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20080203-Firefox-2.0.0.12-test/
rsync -e ssh -av aus2/ aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20080203-Firefox-2.0.0.12/ 
  • verify beta snippets versus betatest snippets
cd /opt/aus2/snippets/staging/20080203-Firefox-2.0.0.12-beta/
find -type d -iregex '.*beta.*' | perl -nle '$a = $_; $a =~ s/beta/betatest/; system("diff -r -u $_ ../20080203-Firefox-2.0.0.12-test/$a");' 2>&1 | tee /tmp/beta.log

update Verify

  • automated, nothing to do.
  • FIXME - should verify all previous releases, not just the immediately previous bug 408453

Stage

  • automated, nothing to do.

Updates to Beta Channel

After QA gives "ok" to push to beta channel, on aus2-staging do:

 # put snippets on beta
 $ cd /opt/aus2/snippets/staging
 $ sudo ~cltbld/bin/pushsnip 20080203-Firefox-2.0.0.12-beta
  • FIXME pushsnip does backup before pushing; we could do this backup in the Updates->Push() method instead. needs bug filed

Sign Installers

Release

Update Bouncer

Final Verification

Enable update channel

Free Software builds

Wall clock timings