Releases/Firefox 8.0b2/BuildNotes

From MozillaWiki
Jump to: navigation, search

Contents

Notes About Releasing

Please update the Notes Template and the Release:Primer for future releases (bug fixes, changes to automation) as needed

Bugs hit

Enter any bugs pre-existing or newly discovered and filed during the release:

  • bug 636101 - xulrunner source timed out
  • bug 692388 - android build failed in mozharness_multilocale.
  • bug 664539 - update verify failures due to empty responses from AUS

Build Engineers

catlee - Tracking bug: bug 692097

Signed-off Revision(s)

Build 1: 0e269b0cf409
Build 2: 0e269b0cf409

Build 2 was required because PGO for Win32, Linux and Linux64 was unintentionally disabled

L10N changesets

Tags

Build # Branch, Tags Changeset
1 MOBILE80_2011100517_RELBRANCH, FENNEC_8_0b2_RELEASE, FENNEC_8_0b2_BUILD1 05b301c266d8
GECKO80_2011100518_RELBRANCH, FIREFOX_8_0b2_BUILD1 FIREFOX_8_0b2_RELEASE 747c148bea02
2 GECKO80_2011100518_RELBRANCH, FIREFOX_8_0b2_BUILD2, FIREFOX_8_0b2_RELEASE a060a22c66d9

Build data

Firefox

Build # Type Build ID Build machine Time to build
1 Linux 20111005184620 mv-moz2-linux-ix-slave10 1 hrs, 8 mins, 50 secs
Linux64 moz2-linux64-slave02 1 hrs, 23 mins, 1 secs
Mac moz2-darwin10-slave53 4 hrs, 30 mins, 49 secs
Windows mw32-ix-slave03 1 hrs, 29 mins, 41 secs
2 Linux 20111006182035 mv-moz2-linux-ix-slave10 2 hrs, 31 mins, 27 secs
Linux64 moz2-linux64-slave12 3 hrs, 37 mins, 31 secs
Mac moz2-darwin10-slave53 4 hrs, 35 mins, 4 secs
Windows mw32-ix-slave03 3 hrs, 6 mins, 33 secs

Fennec

Build # Type Build ID Build machine Time to build
1 android 20111006003041 mv-moz2-linux-ix-slave21 1 hrs, 32 mins, 25 secs
linux 20111005183746 mv-moz2-linux-ix-slave02 1 hrs, 9 mins, 28 secs
macosx 20111005183746 bm-xserve15 2 hrs, 12 mins, 21 secs
win32 20111005183746 mw32-ix-slave04 1 hrs, 23 mins, 29 secs

Notes

Build 1

Preparing to start Automation

  • Requested a clobber for Any master, mozilla-beta, any builder
  • Hit "Ship it" for Firefox & Fennec 8.0b2
  • Update l10n changesets for desktop, mobile
  • Land automation configs
  • Tag buildbot-configs, buildbotcustom, tools, mozharness with {FIREFOX,FENNEC}_8_0b2_{RELEASE,BUILD1}
  • Set reserved_slaves to 10:
# cltbld@buildbot-master08
echo 10 > /builds/buildbot/build1/master/reserved_slaves_bm08-build1
  • Updated master configs, ran checkconfig, reconfiged.
  • Ran release sanity:
cd /builds/buildbot/build1/master
source ../bin/activate
PYTHONPATH=. python ../tools/buildbot-helpers/release_sanity.py -u catlee -pfirefox,fennec -V 8.0b2 --branch mozilla-beta --build-number 1 -c release-firefox-mozilla-beta.py -c release-fennec-mozilla-beta.py --dryrun localhost:9001
  • Started the release:
PYTHONPATH=. python ../tools/buildbot-helpers/release_sanity.py -u catlee -pfirefox,fennec -V 8.0b2 --branch mozilla-beta --build-number 1 -c release-firefox-mozilla-beta.py -c release-fennec-mozilla-beta.py localhost:9001

E-mail mirrors@mozilla.org

They want to know approximately what time push to external mirrors will occur. Ideally this is a 24hr notice to them, with the estimated time.

Subject: Firefox {VERSION} coming to mirrors tomorrow
Body:
We're planning on pushing our Firefox {VERSION} release to mirrors sometime over 
the next 24 hours in time.
# If this is a chemspill, please mention that in the email as it will mean pinging 
# for CDN to be enabled when the push to internal mirrors happens

If you believe these releases or these dates will cause any problems,
please notify release at mozilla.com. If you have any problems with mirror
status/weights/etc, please notify mirror-submissions at mozilla.org.

This is not necessary for rapid release betas, as the files don't go to the external mirrors. The template has been updated. (NThomas 14:58, 10 October 2011 (PDT))

Tag

No problems

Bouncer Submitter

No problems

Source

No problems

Start autosign

PRODUCT=firefox
VERSION=8.0b2
BUILD=1
TAG=FIREFOX_8_0b2_RELEASE
REPO='releases/mozilla-beta'
EMAIL=release@mozilla.com
KEYDIR=d:/2010-keys
RELCONFIG=mozilla/release-firefox-mozilla-beta.py

cd ${HOME}/hg-tools/ # if it exists, otherwise create a fresh clone
hg pull && hg up -r ${TAG}
mkdir -p ~/signing-work/${PRODUCT}-${VERSION}/lib/python
cd ~/signing-work/${PRODUCT}-${VERSION}
cp ~/hg-tools/release/signing/* .
rsync -av ~/hg-tools/lib/python/ ./lib/python/
make autosign PRODUCT=${PRODUCT} VERSION=${VERSION} BUILD=${BUILD} REPO=${REPO} EMAIL=${EMAIL} KEYDIR=${KEYDIR} RELCONFIG=${RELCONFIG}

Build

Firefox

Ok!

Fennec

Android

Failed due to bug 692388; aki fixed up

Desktop Builds

Ok

Desktop repacks

Ok

Unittests / Talos

XULRunner

Source

Timed out trying to clone mozilla-beta. Ignored.

xrBuild

Ok

(renaming to xrBuild because it collides with the general Build2 title)

Signing

Signed with:

#!/bin/bash
set -x
set -e

PRODUCT=xulrunner
VERSION=8.0b2
BUILD=1
TAG=FIREFOX_8_0b2_RELEASE
REPO="releases/mozilla-beta"
EMAIL=catlee@mozilla.com
KEYDIR=d:/2010-keys

cd ~/hg-tools
hg pull
hg up -r ${TAG}

mkdir -p ~/signing-work/${PRODUCT}-${VERSION}
cd ~/signing-work/${PRODUCT}-${VERSION}
cp ~/hg-tools/release/signing/* .

make setup PRODUCT=${PRODUCT} VERSION=${VERSION} \
  BUILD=${BUILD} REPO=${REPO} EMAIL=${EMAIL} KEYDIR=${KEYDIR}
rsync -av -e "ssh -i /home/cltsign/.ssh/xrbld_dsa" \
  --exclude=*.txt --exclude=*-symbols.zip \
  xrbld@stage.mozilla.org:/home/ftp/pub/${PRODUCT}/nightly/${VERSION}-candidates
/build${BUILD}/ \
 unsigned-build${BUILD}
rsync -av --exclude=unsigned unsigned-build${BUILD}/ \
 signed-build${BUILD}/
rsync -av unsigned-build${BUILD}/unsigned/ \
 signed-build${BUILD}/

make checksum-files create-sigs stage verify-sigs \
  PRODUCT=${PRODUCT} VERSION=${VERSION} BUILD=${BUILD} \
  REPO=${REPO} EMAIL=${EMAIL} KEYDIR=${KEYDIR}

rmdir signed-build${BUILD}/contrib{,-localized}

rsync -av -e "ssh -i /home/cltsign/.ssh/xrbld_dsa" \
  signed-build${BUILD}/ \
  xrbld@stage.mozilla.org:/home/ftp/pub/${PRODUCT}/nightly/${VERSION}-candidates
/build${BUILD}/

Repacks

Firefox

Ok

Fennec

Ok

Firefox Signing

Ok

Android Signing

No problems

Android Signature Verification

No problems

L10N verify

Ok

Updates

Update verify

Several failures:

  • macosx64 chunks 1,5,6,8
  • win32 chunk 3

Due to bug 664539; updates are present when checked manually

Reset reserved slaves

echo 0 > reserved_slaves_bm08-build1

Check permissions / AV scan

Ok

Push files to internal mirrors

Used "Force build" to starting the push to mirrors builder with the following property:

  • script_repo_revision: FIREFOX_8_0b2_RELEASE

Final verification

Push to beta

Push XULRunner to Mirrors

Update XULRunner wiki page

Push index file to mirrors

Push to external mirrors

if this is a chemspill you will want to ping justdave (or other sysadmin) in #release-drivers 
and ask them to enable CDN

Publish Fennec

Publish to the Android Market

IMPORTANT - Make sure to follow instructions! See 6.0b6's push to Market.


Push to Release Channel

Update symlinks

Once we're signed off on the release channel.

Build 2

  • Requested a clobber for Any master, mozilla-beta, any builder
  • Land automation configs
  • Tag buildbot-configs, buildbotcustom, tools, mozharness with FIREFOX_8_0b2_{RELEASE,BUILD2}
  • Set reserved_slaves to 10:
# cltbld@buildbot-master08
echo 10 > /builds/buildbot/build1/master/reserved_slaves_bm08-build1
  • Updated master configs, ran checkconfig, reconfiged.
  • Ran release sanity:
cd /builds/buildbot/build1/master
source ../bin/activate
PYTHONPATH=. python ../tools/buildbot-helpers/release_sanity.py -u jhford -p firefox -V 8.0b2 --branch mozilla-beta --build-number 2 -c release-firefox-mozilla-beta.py --dryrun localhost:9001
  • Started the release:
PYTHONPATH=. python ../tools/buildbot-helpers/release_sanity.py -u jhford -p firefox -V 8.0b2 --branch mozilla-beta --build-number 2 -c release-firefox-mozilla-beta.py localhost:9001

E-mail mirrors@mozilla.org

They want to know approximately what time push to external mirrors will occur. Ideally this is a 24hr notice to them, with the estimated time.

Subject: Firefox {VERSION} coming to mirrors tomorrow
Body:
We're planning on pushing our Firefox {VERSION} release to mirrors sometime over 
the next 24 hours in time.
# If this is a chemspill, please mention that in the email as it will mean pinging 
# for CDN to be enabled when the push to internal mirrors happens

If you believe these releases or these dates will cause any problems,
please notify release at mozilla.com. If you have any problems with mirror
status/weights/etc, please notify mirror-submissions at mozilla.org.

Tag

OK!

Bouncer Submitter

Source

OK!

Start autosign

PRODUCT=firefox
VERSION=8.0b2
BUILD=2
TAG=FIREFOX_8_0b2_RELEASE
REPO='releases/mozilla-beta'
EMAIL=release@mozilla.com
KEYDIR=d:/2010-keys
RELCONFIG=mozilla/release-firefox-mozilla-beta.py
cd ${HOME}/hg-tools/ # if it exists, otherwise create a fresh clone
hg pull && hg up -r ${TAG}

mkdir -p ~/signing-work/${PRODUCT}-${VERSION}/lib/python
cd ~/signing-work/${PRODUCT}-${VERSION}
cp ~/hg-tools/release/signing/* .
rsync -av ~/hg-tools/lib/python/ ./lib/python/
make autosign PRODUCT=${PRODUCT} VERSION=${VERSION} BUILD=${BUILD} REPO=${REPO} EMAIL=${EMAIL} KEYDIR=${KEYDIR} RELCONFIG=${RELCONFIG}

Build

Firefox

OK.

Unittests / Talos

XULRunner

Source

OK.

Build

OK.

Signing

#!/bin/bash
set -x
set -e

PRODUCT=xulrunner
VERSION=8.0b2
BUILD=2
TAG=FIREFOX_8_0b2_RELEASE
REPO="releases/mozilla-beta"
EMAIL=jhford@mozilla.com
KEYDIR=d:/2010-keys

cd ~/hg-tools
hg pull
hg up -r ${TAG}

mkdir -p ~/signing-work/${PRODUCT}-${VERSION}
cd ~/signing-work/${PRODUCT}-${VERSION}
cp ~/hg-tools/release/signing/* .

make setup PRODUCT=${PRODUCT} VERSION=${VERSION} \
  BUILD=${BUILD} REPO=${REPO} EMAIL=${EMAIL} KEYDIR=${KEYDIR}
rsync -av -e "ssh -i /home/cltsign/.ssh/xrbld_dsa" \
  --exclude=*.txt --exclude=*-symbols.zip \
  xrbld@stage.mozilla.org:/home/ftp/pub/${PRODUCT}/nightly/${VERSION}-candidates
/build${BUILD}/ \
 unsigned-build${BUILD}
rsync -av --exclude=unsigned unsigned-build${BUILD}/ \
 signed-build${BUILD}/
rsync -av unsigned-build${BUILD}/unsigned/ \
 signed-build${BUILD}/

make checksum-files create-sigs stage verify-sigs \
  PRODUCT=${PRODUCT} VERSION=${VERSION} BUILD=${BUILD} \
  REPO=${REPO} EMAIL=${EMAIL} KEYDIR=${KEYDIR}

rmdir signed-build${BUILD}/contrib{,-localized}

rsync -av -e "ssh -i /home/cltsign/.ssh/xrbld_dsa" \
  signed-build${BUILD}/ \
  xrbld@stage.mozilla.org:/home/ftp/pub/${PRODUCT}/nightly/${VERSION}-candidates
/build${BUILD}/

Repacks

Firefox

All green

Firefox Signing

OK.

L10N verify

OK.

Updates

OK.

Update verify

  • Linux: All green
  • Win32: failed run 7/10
  • Linux64: failed run 1/10 and 3/10, 1/10 rebuild passed
    • 3/10: se-SV, en-GB failed. verified that snippets are there and that the mar is there
    • rebuilt 3/10 once more and it passed
  • Mac: failed 4/10, rebuild passed

All failing tests retriggered

Reset reserved slaves

[cltbld@buildbot-master08 master]$ pwd
/builds/buildbot/build1/master
[cltbld@buildbot-master08 master]$ cat reserved_slaves_bm08-build1 
10
[cltbld@buildbot-master08 master]$ echo 0 > reserved_slaves_bm08-build1

Check permissions / AV scan

Push files to internal mirrors

Forced build for release-mozilla-beta-push_to_mirrors using

script_repo_revision 	FIREFOX_8_0b2_RELEASE

This failed because we've already pushed build1. I nuked

ssh -l ffxbld -i /home/cltbld/.ssh/ffxbld_dsa stage.mozilla.org
cd /pub/mozilla.org/firefox/releases/
rm -rf 8.0b2

will force a second build for release-mozilla-beta-push_to_mirrors using

script_repo_revision 	FIREFOX_8_0b2_RELEASE

Final verification

Linux, Linux64 and Win32 failed because of issues with a mirror, manually trying files worked. Mac OS green

Push to beta

cltbld@aus2-staging
~/bin/backupsnip Firefox-8.0b2-build2
real    48m3.080s
user    0m7.480s
sys     0m36.626s
~/bin/pushsnip Firefox-8.0b2-build2
real    17m29.168s
user    0m3.921s
sys     0m22.596s
real    4m38.988s
user    0m1.952s
sys     0m8.256s


Push XULRunner to Mirrors

rsync  -av --exclude=*.txt --exclude=*unsigned* --exclude=*-symbols.zip \
--exclude=*.checksums --exclude=jsshell* \
/pub/mozilla.org/xulrunner/nightly/8.0b2-candidates/build2/ \
/pub/mozilla.org/xulrunner/releases/8.0b2/

Update XULRunner wiki page

Publish Fennec

Push the files

# as ffxbld@stage in ~ dir
vim push_fennec_beta.sh # update VERSION,BUILDNUM
# RUN IT
./push_fennec_beta.sh

Publish to the Android Market

IMPORTANT - Make sure to follow instructions! See 6.0b6's push to Market.