Releases/Thunderbird 16.0/BuildNotes

From MozillaWiki
Jump to: navigation, search

Checklist

Notes

Build 1

  • Set reserved slaves to 2 (windows is our slowest platform and we only 2 slaves available for repacks, so there's no benefit to end2end time by setting it higher)
    • Ended up setting back to 0 because there were no slaves available to do on-change ESR win32 builds. Sucks.
  • Moved 2 64-bit linux ix slaves, 1 64-bit windows slave, and 2 32-bit windows slaves to bm34 to make sure we have enough of the right slaves to do the release.
  • Created l10n milestone
  • Shipped l10n milestone
  • Downloaded l10n changesets from https://l10n.mozilla.org/shipping/l10n-changesets?ms=tb16
  • Checked in release config + l10n-changesets
  • Tagged buildbot-configs, buildbotcustom, and tools with THUNDERBIRD_16_0_{RELEASE,BUILD1}
  • Ran release sanity in dry run mode:
cd /builds/buildbot/build1/master
source ../bin/activate
PYTHONPATH=. python ../tools/buildbot-helpers/release_sanity.py -u bhearsum \
 -V 16.0 --build-number 1 --branch comm-release \
 --release-config release-thunderbird-comm-release.py --product thunderbird \
 --l10n-dashboard-version=16 --dryrun localhost:9001
  • Passed, ran without --dryrun to start the release.

Reset reserved slaves

Reset to 0

Rebuild 'de' locale

QA discovered some string issues with the "de" locale and we opted to just rebuild this locale inside of build1 rather than doing a full build2. This means that when the next release happens, anyone that downloaded the original "de" builds will have failed partials, but will fallback to the complete.

Tag

Tagged https://hg.mozilla.org/releases/l10n/mozilla-release/de's "435ffc2817d3" with THUNDERBIRD_16_0_{RELEASE,BUILD1}. Had to do this as ffxbld because my own account lacked permission.

Repack

Used the standalone builders for each platform to rebuild only "de" with the following information in the "force build" form:

  • branch: releases/comm-release
  • revision: THUNDERBIRD_16_0_RELEASE
  • properties:
    • locale: de
    • release_config: mozilla/release-thunderbird-comm-release.py
    • script_repo_revision: THUNDERBIRD_16_0_RELEASE

Updates

Used "force build" to rerun the updates builder. Failed because no configs were being modified. I manually changed an update verify file and rerun updates. Failed in pushsnip with:

mv: cannot move `/opt/aus2/snippets/staging/Thunderbird-16.0-build1-test' to `/opt/aus2/snippets/pushed/Thunderbird-16.0-build1-test': File exists

However, it already did the push so we can just finish up manually. Did that by running the following on mv-moz2-linux-ix-slave07:

rsync -av -e 'ssh -oIdentityFile=~/.ssh/auspush' aus2/ tbirdbld@aus3-staging.mozilla.org:/opt/aus2/snippets/staging/Thunderbird-16.0-build1/

Used "force build" to start the chunk #1 of update verify for each platform.

Checksums

bug 799940 reported that the checksums for german builds were wrong. This was because I forgot to "rebuild" the checksums builder prior to pushing out the release. To fix:

  • Tried to use "force build" to retrigger the checksums builder, which updated the checksums files in the candidates directory.
    • Failed with:
mkdir: cannot create directory `/pub/mozilla.org/thunderbird/nightly/16.0-candidates/build1//contrib': File exists
mkdir: cannot create directory `/pub/mozilla.org/thunderbird/nightly/16.0-candidates/build1//contrib-localized': File exists
  • Ran the following by hand on bld-centos5-32-vmw-001.build.releng.scl3.mozilla.com to workaround:
export MOZ_SIGN_CMD='/tools/python-2.6.5/bin/python /builds/slave/tb-rel-c-rel-thunderbird-checksums/scripts/release/signing/signtool.py --cachedir /builds/slave/tb-rel-c-rel-thunderbird-checksums/signing_cache -t /builds/slave/tb-rel-c-rel-thunderbird-checksums/token -n /builds/slave/tb-rel-c-rel-thunderbird-checksums/nonce -c /builds/slave/tb-rel-c-rel-thunderbird-checksums/scripts/release/signing/host.cert -H signing3.srv.releng.scl3.mozilla.com:9120'
/tools/python/bin/python /builds/slave/tb-rel-c-rel-thunderbird-checksums/scripts/scripts/release/generate-sums.py -c mozilla/production_config.py -r mozilla/release-thunderbird-comm-release.py -b http://hg.mozilla.org/build/buildbot-configs -t THUNDERBIRD_16_0_RELEASE --product thunderbird --ssh-user tbirdbld --ssh-key tbirdbld_dsa --create-contrib-dirs
  • Verified the new sums by hand as tbirdbld@stage by running and grepping the new SHA512SUMS file for the sum that was returned:
 sha512sum /pub/mozilla.org/thunderbird/candidates/16.0-candidates/build1/win32/de/Thunderbird\ Setup\ 16.0.exe 
  • Ran the following to sync the new files to the releases directory:
# tbirdbld@stage.mozilla.org
rsync -n -av --exclude=*tests* --exclude=*crashreporter* --exclude=*.log --exclude=*.txt --exclude=*unsigned* --exclude=*update-backup* --exclude=*partner-repacks* --exclude=*.checksums --exclude=*.checksums.asc --exclude=logs --exclude=jsshell* --exclude=*.zip --exclude=*.zip.asc /pub/mozilla.org/thunderbird/nightly/16.0-candidates/build1/ /pub/mozilla.org/thunderbird/releases/16.0/

Push to Mirrors

Had some problems related to the work in bug 785965:

  • index files were created/pushed when they shouldn't have been
  • initial index file failed to upload
  • tried to create index files in 'contrib' subdirectories, where we don't have permission to

To fix, had to retag tools to pick up https://hg.mozilla.org/build/tools/rev/b9d8e3cfe2d6. The other problems were non-fatal.

The index files got removed later when the "postrelease" builder ran.

Post release

Triggered the post release builder with "force build".