Releases/Thunderbird 2.0.0.19/BuildNotes
Contents
- 1 Build Engineers
- 2 Bonsai queries
- 3 Tags
- 4 Build data
- 5 Notes
- 5.1 Build 1
- 5.1.1 Tag
- 5.1.2 Source
- 5.1.3 Build/Repack
- 5.1.4 Sign
- 5.1.5 l10n verification
- 5.1.6 Generate Updates
- 5.1.7 Publish Updates to Test Channels (betatest & releasetest)
- 5.1.8 Update Verify
- 5.1.9 Push updates to beta channel
- 5.1.10 Sign Installers
- 5.1.11 Update Bouncer
- 5.1.12 Push to mirrors
- 5.1.13 Update rsync module
- 5.1.14 Final Verification
- 5.1.15 Publish Updates to Release Channel
- 5.1.16 Update symlink
- 5.1 Build 1
Build Engineers
nthomas, joduinn
Version/config bump/tracking in bug 468741
Bonsai queries
Build 1: cvsroot
Tags
Build 1:
Module | Branch | Tag | Pull date |
cvsroot/mozilla | GECKO181_20081202_RELBRANCH | THUNDERBIRD_2_0_0_19_BUILD1 THUNDERBIRD_2_0_0_9_RELEASE | 2008-12-09 20:01 PST |
l10n/l10n | GECKO181_20081202_RELBRANCH | THUNDERBIRD_2_0_0_19_BUILD1 THUNDERBIRD_2_0_0_9_RELEASE | 2008-12-09 20:30 PST |
Build data
Type | Build machine |
[Windows installer/zip] | production-patrocles |
[Mac compressed] | bm-xserve05 |
[Linux compressed] | production-crazyhorse |
Notes
Build 1
Using RELEASE_AUTOMATION_M11, same as for recent releases
Slave cleanup
- production-prometheus-vm
- need ~10GB for tag, source, update generation and linux verify, stage; already had 18GB free
- production-crazyhorse
- 22GB free on /builds
- update tinderbox to automation tag
- cd /builds/tinderbox/mozilla/tools/tinderbox; cvs up -CPd -r RELEASE_AUTOMATION_M11
- bm-xserve05
- need ~20GB for mac builds, l10n_verify, mac update verify (but 16GB already allocated for builds); 15G free already
- update tinderbox to automation tag
- cd /builds/tinderbox/mozilla/tools/tinderbox; cvs up -CPd -r RELEASE_AUTOMATION_M11
- production-patrocles
- 51GB free
- update tinderbox to automation tag
- cd /cygdrive/e/builds/tinderbox/mozilla/tools/tinderbox; cvs up -CPd -r RELEASE_AUTOMATION_M11
- Land changes and retag tb-moz18-bootstrap.cfg
- cvs tag -d RELEASE_AUTOMATION_M11 tb-moz18-bootstrap.cfg # to delete the tag on the old version
- cvs tag RELEASE_AUTOMATION_M11 tb-moz18-bootstrap.cfg # to tag the new version
Setup master before starting:
- update mozilla/tools/buildbot-configs/automation/production/tb-master.cfg for most recent milestone of bootstrap (no change this release)
- as buildmaster@production-1.8-master, cd /builds/buildbot/Thunderbird-Automation/buildbot-configs. Check for local diff, revert any changes from last release, dry run a cvs up, then cvs up (only had to revert previous changes, nothing to pull in for this release)
- master.cfg is "Locally Modified" to contain passwords; identical to repository version otherwise.
- Ran 'buildbot reconfig /home/buildmaster/Thunderbird-Automation'
- Buildbot waterfall is here (MPT-VPN); this is a separate instance from the Firefox master, with production-prometheus-vm and bm-xserve05 running a slave for each master
- Stop nightly builds on bm-xserve05 (~cltbld $ buildbot stop macosx-1.8-slave2/) and annotate Mozilla1.8 tree to explain its absence
Start automation run:
buildbot sendchange --username=nthomas --master=localhost:9990 -m"Thunderbird 2.0.0.19 build 1" release
Tag
Automated, no problems
Source
Automated, no problems
Build/Repack
Automated, no problems. Symbols uploaded to talkback OK.
Sign
l10n verification
Automated, no problems found
Generate Updates
Automated, no problems
Publish Updates to Test Channels (betatest & releasetest)
Automated, no problems
Update Verify
Automated, both mac and linux had errors due to AUS not returning updates for the couple of locales. Ran both again after moving /builds/release/logs/updates_verify.log to updates_verify.log.1 (mac aliases mv to cp!), both were green.
Push updates to beta channel
$ sudo su - cltbld $ cd /opt/aus2/snippets/staging $ time ~/bin/backupsnip 20081210-Thunderbird-2.0.0.19-beta real 28m9.114s user 0m26.064s sys 0m26.851s
Waited for formal "go" to beta.
$ sudo su - cltbld $ cd /opt/aus2/snippets/staging $ time ~/bin/pushsnip 20081210-Thunderbird-2.0.0.19-beta real 2m22.590s user 0m0.130s sys 0m3.794s
Sign Installers
- Done manually using these installer-signing-instructions here
- complete stage-merged:
# on stage cd /data/cltbld/thunderbird-2.0.0.19/ rsync -av batch1/mar/ stage-merged/ rsync -av batch1/stage-signed/ stage-merged/
- Create MD5 and SHA1 checksum files
# on stage cd /data/cltbld/thunderbird-2.0.0.19/stage-merged/ ~/bin/checksum-files .
- Fix permissions & ownership (on the two SUM files, and the detached sigs)
chown -R cltbld:thunderbird . chmod 644 *SUMS
Update Bouncer
- Manually added entries to download.mozilla.org
- Note for next release: Do not remove the Check Now bit on the Thunderbird-2.0.0.19 Products until well after the change to the rsync module (to prevent the likes of bug 464566)
Push to mirrors
- push the stage-merged directory to the releases area:
# on stage (as cltbld) rsync -av /data/cltbld/thunderbird-2.0.0.19/stage-merged/ /home/ftp/pub/thunderbird/releases/2.0.0.19/
Update rsync module
On stage.mozilla.org, add the new release to the smaller, faster, rsync module:
# on stage (as cltbld) cd /pub/mozilla.org/zz/ vi rsyncd-mozilla-current.exclude
and replace the previous latest release (Tb2.0.0.18) with:
+ thunderbird/releases/2.0.0.19 + thunderbird/releases/2.0.0.19/**
Final Verification
- Verify that releasetest points to valid bouncer links:
# this can be run from anywhere cvs co mozilla/testing/release cd mozilla/testing/release/updates cat moz18-thunderbird-*.cfg | grep -v major | sed 's/betatest/releasetest/' | grep -v 2.0a | grep -v 2.0b > 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
...found 42 mirrors returned 404. Manual testing confirmed that :
http://mozilla.ftp.iij.ad.jp http://mirror.waia.asn.au http://ftp.twaren.net
...were now ok, but the following sites failed manual testing and were removed from mirror pool before release.
http://www.mirrorservice.org http://mozilla.mirror.facebook.com
- Look for mirrors that do not respond
grep FAIL quickVerify.log
...one FAIL found, but passed when tried manually.
- Before pushing final updates,verify that "release" and "releasetest" channel match:
# on aus2-staging cd /opt/aus2/snippets/staging/20081210-Thunderbird-2.0.0.19 find -type d -iregex '.*release.*' | perl -nle '$a = $_; $a =~ s/release/releasetest/; system("diff -r -u $_ ../20081210-Thunderbird-2.0.0.19-test/$a");'
Publish Updates to Release Channel
- In case you need to cancel/abort updates, the quickest way to do this is here
- While waiting for QA to finish testing, do a backup:
# on aus2-staging verify we have correct tools $ sudo su - cltbld $ cd ~/bin $ cvs update -dP # backup snippets on release/live channel $ time ~/bin/backupsnip 20081210-Thunderbird-2.0.0.19 real 32m43.309s user 0m27.978s sys 0m35.344s
- After QA finished testing the releasetest channel and go from release driver, enable release channel:
# on aus2-staging # put snippets on release/live channel $ sudo su - cltbld $ time ~/bin/pushsnip 20081210-Thunderbird-2.0.0.19 real 1m26.141s user 0m0.072s sys 0m3.123s
Update symlink
On stage.m.o, change symlink to point to new release:
$ cd /pub/mozilla.org/thunderbird/releases # confirm where latest symlinks point to where before starting $ ls -la latest* lrwxrwxrwx 1 cltbld thunderbird 8 Nov 19 15:21 latest -> 2.0.0.18 lrwxrwxrwx 1 root thunderbird 8 Feb 26 2008 latest-1.5 -> 1.5.0.14 lrwxrwxrwx 1 cltbld thunderbird 8 Nov 19 15:21 latest-2.0 -> 2.0.0.18 $ rm latest # (note no trailing slash) $ ln -s 2.0.0.19 latest $ rm latest-2.0 # (note no trailing slash) $ ln -s 2.0.0.19 latest-2.0 # confirm latest symlinks point to newest release $ ls -la latest* lrwxrwxrwx 1 cltbld thunderbird 8 Dec 30 11:44 latest -> 2.0.0.19 lrwxrwxrwx 1 cltbld thunderbird 8 Feb 26 2008 latest-1.5 -> 1.5.0.14 lrwxrwxrwx 1 cltbld thunderbird 8 Dec 30 11:44 latest-2.0 -> 2.0.0.19