Releases/Firefox 16.0.1/BuildNotes

From MozillaWiki
Jump to: navigation, search

Checklist

Bugs Hit

  • bug 799806 - Need extra mozconfig line --enable-stdcxx-compat to build libmar. bhearsum fixed
  • bug 800277 - Update generation has problems when latest-1 --> latest partial isn't generated
  • bug 798609 - disable android armv6 on mozilla-release

Notes

Build 1

  • Nothing to do with l10n milestone for chemspills.
  • Reserved slaves set to 8
  • Master had enough slaves to do all builds/repacks, no need to move any around.
  • Landed config file updates
  • Tagged buildbot-configs, buildbotcustom, tools with {FIREFOX,FENNEC}_16_0_1_{RELEASE,BUILD1}
  • Updated and reconfiged bm12
  • Ran release sanity:
cd /builds/buildbot/build1/master
source ../bin/activate
PYTHONPATH=. python ../tools/buildbot-helpers/release_sanity.py -u bhearsum \
    -V 16.0.1 --branch mozilla-release --build-number 1 \
    --release-config release-firefox-mozilla-release.py \
    --release-config release-fennec-mozilla-release.py --products firefox,fennec  \
    --dryrun localhost:9001
    • Got error about mozconfig, just like 16.0. This one is ignorable. Turns out that armv6 shouldn't have been enabled at all. bug 798609:
2012-10-10 14:14:13,814 : ERROR : found in mobile/android/config/mozconfigs/android-armv6/release but not in mobile/android/config/mozconfigs/android-armv6/nightly: ac_add_options --enable-updater
2012-10-10 14:14:13,815 : ERROR : found in mobile/android/config/mozconfigs/android-armv6/release but not in mobile/android/config/mozconfigs/android-armv6/nightly: ac_add_options --with-branding=mobile/android/branding/official
2012-10-10 14:14:13,815 : WARNING : ac_add_options --with-branding=mobile/android/branding/beta not in android-armv6 ['ac_add_options --enable-update-channel=nightly', 'ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL}', 'ac_add_options --enable-warnings-as-errors', 'ac_add_options --with-ccache=/usr/bin/ccache']!
2012-10-10 14:14:13,815 : ERROR : found in mobile/android/config/mozconfigs/android-armv6/nightly but not in mobile/android/config/mozconfigs/android-armv6/release: ac_add_options --with-branding=mobile/android/branding/beta
2012-10-10 14:14:15,754 : ERROR : Error verifying mozconfigs
    • Got error about l10n dashboard milestone not existing. Also ignorable (we don't take l10n changes for chemspills):
2012-10-10 14:14:33,429 : ERROR : cannot find l10n dashboard at https://l10n.mozilla.org/shipping/l10n-changesets?ms=fennec16.0.1
2012-10-10 14:14:33,430 : ERROR : Error verifying l10n dashboard changesets
2012-10-10 14:16:32,045 : ERROR : cannot find l10n dashboard at https://l10n.mozilla.org/shipping/l10n-changesets?ms=fx16.0.1
2012-10-10 14:16:32,045 : ERROR : Error verifying l10n dashboard changesets
  • With the only errors being ignorable, started the release with -b:
PYTHONPATH=. python ../tools/buildbot-helpers/release_sanity.py -u bhearsum     -V 16.0.1 --branch mozilla-release --build-number 1     --release-config release-firefox-mozilla-release.py     --release-config release-fennec-mozilla-release.py --products firefox,fennec      -b localhost:9001

Fix repacks

Due to bug 799806, we need to add --enable-stdcxx-compat to our Linux l10n mozconfigs. This was done in https://hg.mozilla.org/build/buildbot-configs/rev/0029772efc8d. That revision was retagged, and 'rebuild' was used on all of the failed repacks (linux + linux64) to get them going again.

Sign Android Builds

Ran the following as cltsign@signing1:

cd ~/signing-work/mozharness
hg pull -u && hg up -C
cd ..
python2.6 mozharness/scripts/sign_android.py --config-file signing/android_mozilla-release.py

r-d was mailed automatically.

Publish Fennec

Google Play

Published through the Google Play store per docs.

Push the files

Edited ~ffxbld/push_fennec.sh on stage to point at 16.0 build1 and android/androidv6, ran it.

Updates

Update generation builder went red because we don't really support not generating a partial from the previous release, bug 800277.

Generate 16.0 -> 16.0.1 complete update

The locales list changed between 15.0.1 and 16.0, adding ach but we're going to neglect that here, so we can just grab the 15.0.1 snippets, munge the buildID and zap the partial.txt files.

 # ffxbld@aus3-staging
 cd /opt/aus2/snippets/staging/
 mkdir -p Firefox-16.0.1-build1-16.0-test/Firefox
 rsync -av ../pushed/Firefox-16.0.1-build1-test/Firefox/15.0.1/ \
          Firefox-16.0.1-build1-16.0-test/Firefox/16.0/
 for d in Firefox-16.0.1-build1-16.0-test/Firefox/16.0/*; do 
   mv -v $d/20120905151427 $d/20121005155445
 done
 find Firefox-16.0.1-build1-16.0-test/Firefox/16.0/ -type f -name partial.txt -exec rm {} \;
 pushsnip Firefox-16.0.1-build1-16.0-test

Manually announced to r-d.

Release snippets, carrying straight on from the block above

 rsync -av Firefox-16.0.1-build1/Firefox/15.0.1/ \
           Firefox-16.0.1-build1/Firefox/16.0/
 for d in Firefox-16.0.1-build1/Firefox/16.0/*; do 
   mv -v $d/20120905151427 $d/20121005155445
 done
 find Firefox-16.0.1-build1/Firefox/16.0/ -type f -name partial.txt -exec rm {} \;

Generate update verify configs and trigger

Do this one all manually, since it's fairly trival.

In each of the four each config files (tools/release/updates/mozRelease-firefox-*.cfg)

  • copy the two 15.0 lines up to the top of the file, and make some modifications ...
  • change to release="16.0" in both copied lines
  • change the build_id to 20121005155445 in both copied lines
  • change the 15.0's to 16.0's in the from="/firefox..." var in the first line
  • move aus_server and to definitions to the first line, updating the to line to 16.0.1

Commit and move FIREFOX_16_0_1_{RELEASE,BUILD1}_RUNTIME tags.

Then forced update verify builders (from local machine)

for p in linux linux64 macosx64 win32; do
  for i in 1 2 3 4; do
    curl "http://buildbot-master12.build.mozilla.org:8001/builders/release-mozilla-release-${p}_update_verify_${i}%2F4/force" > /dev/null
    sleep 5
  done
done

Reset reserved slaves

Reset to 0.

Push to mirrors

After getting the go from RelMan, used "force build" to start the "push to mirrors" builder.

Run pushsnip

# ffxbld@aus3-staging
cd /opt/aus2/snippets/staging
~/bin/pushsnip Firefox-16.0.1-build1

Unthrottle

RelMan asked us to unthrottle right after pushing. this patch was landed and retagged with AUS2_PRODUCTION. The push was done in bug 800473

Watched https://aus3.mozilla.org/update/1/Firefox/10.0.2/20120215223356/Darwin_x86_64-gcc3-u-i386-x86_64/ta/release/update.xml to verify that it landed successfully.

Update XULRunner wiki pages

Updated the links on https://developer.mozilla.org/en/XULRunner and https://developer.mozilla.org/en/Gecko_SDK

Update bouncer link

Updated https://bounceradmin.mozilla.com/admin/mirror/location/?product__id__exact=1948 to point at 16.0.1.

Post release

Triggered the "post release" builder with "force build".

Update browser choice website

Filed bug 800491 to get the website updated.