Releases/Firefox 14.0b11/BuildNotes

From MozillaWiki
Jump to: navigation, search

Checklist

Notes

Build 1

Starting the Release

Tracking bug is Bug 760629

  • L10N Changesets *

Currently we have separate changesets files for Fennec and Firefox. Both are generated from the l10n dashboard
First log in to the dashboard with your LDAP and then follow the instructions below

Creating L10N milestones

armenzg	kmoir: can you please load https://l10n.mozilla.org/shipping/milestones and sign-in?
armenzg	you should see "You may be able to create new milestones. " at the bottom of the page
kmoir	armenzg: okay yes
armenzg	then hit "clear aurora" and all other products that you are not releasing
armenzg	you can bump one or more products' milestones
armenzg	s/bump/create/
kmoir	armenzg: okay, but I assume I have to wait for the go to build to create the milestones?
armenzg	kmoir: that is correct
kmoir	armengz: thanks
armenzg	kmoir: did the instructions up to there make sense?
kmoir	armengz: yes definitely
armenzg	ok cool
armenzg	I will document it and close the bug for documenting it

I didn't have rights to create the milestones so Armen created them and emailed Axel to grant my permissions for next time.

Fennec

android
  • In the 'Add a multi-locale file for' field put
android-multilocale
  • select "Add"
    • repo: "releases/mozilla-beta"
    • branch: "default"
    • path: "mobile/android/locales/maemo-locales"
  • select "Generate it"
  • Copy and paste it into your repo's l10n-changesets_mobile-{version}.json
  • go back to the original page
  • select "Ship it" to preserve the record of what was shipped

Firefox

  • Click "ship it" to load up the milestone (eg: Firefox 14 Beta Build 11)
  • This will take you to https://l10n.mozilla.org/shipping/confirm-ship?ms=fx14_beta_b11
  • Open in a new tab the "l10n-changesets" URL (don't touch any of the other fields) record the URL on the build notes
  • copy and paste the list into your l10n-changesets_mozilla-{version}
  • go back to the original page
  • select "Ship it"
    • if you forget the URL, you can recreate the URL by judicious modification of the URL from the prior build notes
  • Set reserved_slaves:
on buildbot-master13
cd /builds/buildbot/build1
echo 8 > master/reserved_slaves
  • Made sure had enough slaves to do the release.
    • 5 lion, 6 win32, plenty of linux - no need to do any additional locking
  • Created the candidates directory:
# ffxbld@stage
version=14.0b11
product=firefox
cd /pub/mozilla.org/$product/nightly/
mkdir ../candidates/$version-candidates
ln -s ../candidates/$version-candidates $version-candidates
  • Landed l10n-changesets and release config updates
  • Tagged buildbot-configs, buildbotcustom, tools with {FIREFOX,FENNEC}_14_0b11_{RELEASE,BUILD1}
  • Updated and reconfiged buildbot-master13
 cd /builds/buildbot/build1 om bm13
 make update
 make checkconfig
 make reconfig
  • Ran release sanity:
cd /builds/buildbot/build1/master
source ../bin/activate
PYTHONPATH=. python ../tools/buildbot-helpers/release_sanity.py -u kmoir -V 14.0b11 --branch mozilla-beta --build-number 1 \
    --release-config release-firefox-mozilla-beta.py --release-config release-fennec-mozilla-beta.py --products firefox,fennec  \
    --dryrun localhost:9001
  • Release sanity revealed that the Android build should have been set to buildNumber 1. Also, I fixed oldBuildNumber which should have been 2. Reconfiged and ran release sanity again which ran cleanly. I started the release:
PYTHONPATH=. python ../tools/buildbot-helpers/release_sanity.py -u kmoir -V 14.0b11 --branch mozilla-beta --build-number 1     --release-config release-firefox-mozilla-beta.py --release-config release-fennec-mozilla-beta.py --products firefox,fennec  localhost:9001

The release emails indicated that the Fennec build being created was 14.0b2 which was completely unexpected. After talking with rail, callek, bhearsum and catlee, they determined that the problem was that bm12 took the Fennec build instead of bm13 and it was pointing to mozilla-beta since the 14.0 release was run from mozilla-beta. The sendchange to trigger 14.0b11 builds triggered 14.0 build2 again. The fennec release configs point to mozilla-beta, so they advised me to change release-fennec-mozilla-release.py to point to mozilla-release, land in production, retag the buildbot-configs, reconfig bm12 and bm13 and trigger the Fennec build again.

I started the Fennec build with the following command after running a successful release sanity.

cd /builds/buildbot/build1/master
source ../bin/activate
PYTHONPATH=. python ../tools/buildbot-helpers/release_sanity.py -u kmoir -V 14.0b11 --branch mozilla-beta --build-number 1 \
   --release-config release-fennec-mozilla-beta.py --products fennec  \
   localhost:9001

The Firefox build stopped because of problems running the antivirus scans, I had to restart the push to mirrors script.

E-mailed Metrics

Sent mail with the following body to metrics-alerts@mozilla.org:

Firefox,firefox,firefox,14.0b11,14.0
Fennec,firefox-mobile,fennec,14.0b11,14.0

Sign Android Builds

As cltsign@signing1:

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

Reset reserved_slaves

cd /builds/buildbot/build1/master
echo 0 > reserved_slaves

Publish to Beta Channel

As ffxbld@aus3-staging.mozilla.org:

cd /opt/aus2/snippets/staging
~/bin/pushsnip Firefox-14.0b11-build1

Publish Fennec

  • Updated push_fennec.sh as ffxbld@stage and ran it.
  • Uploaded APK to Google Play store and activated it.

DONE TO HERE

Bugs Hit

  • Fennec build was uploaded to 14.0-candidates
    • Recover 14.0-candidates files (by chance we uploaded them to nightly/test14):
# ffxbld@stage
/pub/mozilla.org/mobile/candidates/
rsync -avP 14.0-candidates/ 14.0-candidates-borked-by-14.0b11/
rsync -avP --delete /pub/mozilla.org/mobile/nightly/test14/ /pub/mozilla.org/mobile/candidates/14.0-candidates/
  • bug 771034 Downgrade clamav* installs on upload1/upload2.dmz.scl3 to 0.97.4 to avoid bug in 0.97.5. This caused antivirus to fail and I had to restart the push to mirrors script.
  • Kmoir's account wasn't yet updated with the correct permissions so Rail uploaded the build to Google Play.