Releases/Fennec 4.0rc1/BuildNotes
Contents
Build Engineers
lsblakk, aki - bug 639948
Bugs encountered
Signed-off Revision(s)
Build # | mozilla-2.1 | mobile-2.0 |
build 1 | e273946b74c8 | 6b93fd7423c4 |
build 2 | a48366b88253 | fc47c4a659b1 |
build 3 | a0181e3f66fe | 606c14460ded |
Tags
Build # | Tag | Moz Changeset | Mobile Changeset |
build 1 | GECKO21_20110317_RELBRANCH | 8639357d83cd | a6524aca9256 |
FENNEC_4_0rc1_BUILD1, FENNEC_4_0rc1_RELEASE | 8639357d83cd | a6524aca9256 | |
build 2 | GECKO21_20110317_RELBRANCH | [[1]] | [[2]] |
FENNEC_4_0rc1_BUILD2, FENNEC_4_0rc1_RELEASE | [[3]] | [[4]] | |
build 3 | GECKO21_20110317_RELBRANCH, FENNEC_4_0rc1_BUILD3, FENNEC_4_0rc1_RELEASE | [[5]] | [[6]] |
Build data
Build # | Type | Build ID | Build machine |
build 1 | Android | ||
Maemo5-GTK | |||
Linux | |||
Mac | |||
Windows |
Notes
Build 1
Setup
- Took mv-moz2-linux-ix-slave18 from pm03 -> pm02
- Clobbered linux boxes attached to pm02
- Following along with https://wiki.mozilla.org/Releases/Firefox_4.0rc1/BuildNotes#Sync_repositories :
#On an idle slave, cd /builds/slave mkdir rc1-sync wget -O- http://hg.mozilla.org/mozilla-central/raw-file/tip/browser/locales/shipped-locales | grep -v en-US | cut -f1 -d" " > locales.txt wget http://hg.mozilla.org/mobile-browser/raw-file/default/locales/all-locales diff all-locales locales.txt # Note that all-locales is *not* a subset of shipped-locales mv all-locales locales.txt wget http://hg.mozilla.org/mobile-browser/raw-file/default/locales/maemo-locales diff maemo-locales locales.txt # Note that maemo-locales *is* a subset of all-locales # Checked with Axel that pushing the all-locales repos is good. hg clone http://hg.mozilla.org/mozilla-central hg clone http://hg.mozilla.org/mobile-browser cd mozilla-central hg push -e 'ssh -i ~/.ssh/ffxbld_dsa' --new-branch ssh://ffxbld@hg.mozilla.org/releases/mozilla-2.1 cd ../mobile-browser hg push -e 'ssh -i ~/.ssh/ffxbld_dsa' --new-branch ssh://ffxbld@hg.mozilla.org/releases/mobile-2.0 cd .. for i in `cat locales.txt`; do hg clone http://hg.mozilla.org/l10n-central/$i; done for i in `cat locales.txt`; do hg -R $i push -e 'ssh -i ~/.ssh/ffxbld_dsa' ssh://ffxbld@hg.mozilla.org/releases/l10n-mozilla-2.0/$i; done
- Landed configs: 1 2
- Landed debsign bumps.
l10n changesets
We ran into a pretty large rathole in https://l10n-stage-sj.mozilla.org/shipping/milestones however: the dashboard was claiming Fennec 4.0 beta5 instead of RC1.
Stuart and I talked with Stas in #l10n and he created a Fennec 4.0RC milestone, which seems to show that https://bugzilla.mozilla.org/attachment.cgi?id=519817&action=diff is accurate. However, Stuart thinks the dashboard is questionable enough that he's waiting for Axel.
Axel came online ~1am PDT and answered questions.
- repushed ja:
cd /builds/slave/rc1-sync/ cd ja hg pull -u hg push -e 'ssh -i ~/.ssh/ffxbld_dsa' ssh://ffxbld@hg.mozilla.org/releases/l10n-mozilla-2.0/ja # verify that the repo looks right
- landed l10n-changesets that Axel approved; hit "ship it"
Start
- merged to production branch
- updated configs-default + buildbotcustom on pm02, reconfiged
- sendchange:
buildbot sendchange --user aki --master localhost:9010 --branch=releases/mobile-2.0 "Fennec 4.0rc1 build1" go
Tag
moz2-linux-slave42: failed on gd.
- clobbered moz2-linux-slave42
- backed up /builds/buildbot/configs-default/mozilla2/l10n-changesets_mobile-2.0.json
- edited l10n-changesets_mobile-2.0.json to remove all locales up to gd
- reconfiged
- mobile_tag force build
moz2-linux-slave43: failed on mobile-2.0 hg out; that's ok. buildbot-0.8 releases will save us from all of this!
- backed out l10n-changesets_mobile-2.0.json changes
- added a dummy tag factory
- reconfiged
- sendchange:
buildbot sendchange --user aki --master localhost:9010 --branch=releases/mobile-2.0 "Fennec 4.0rc1 build1 part 2" go
Source
moz2-linux-slave45
No problems
Build/Repack
mobile_win32-i686_desktop_build | mobile_linux-i686_desktop_build | mobile_macosx-i686_desktop_build | android-r7 | maemo5-gtk |
win32-slave46 | moz2-linux-slave44 | moz2-darwin9-slave45 | moz2-linux-slave41 | moz2-linux-slave43 |
20110317043755 | 20110317041011 | 20110317045121 | 20110317043525 | 20110317042033 |
repack
l10n: no problems.
partner repack: broken.
RESPIN due to bad l10n bits
Build 2
Setup
Since there are new changes in l10n-central that need to be pushed to l10n-mozilla-2.0:
cd /builds/slave/rc1-sync/ for i in `cat locales.txt`; do hg -R $i pull -u; done for i in `cat locales.txt`; do hg -R $i push -e 'ssh -i ~/.ssh/ffxbld_dsa' ssh://ffxbld@hg.mozilla.org/releases/l10n-mozilla-2.0/$i; done
- clobbered mv-moz2-linux-ix-slave{18,19,21} and moz2-linux-slave43
- landed partner repack fix
l10n changesets
- Added ja to maemo-locales: https://bugzilla.mozilla.org/show_bug.cgi?id=639948#c21 + c22 + c23
- Pulled new changesets from the dashboard (says rc2, but =P ): landed
Start
- landed configs
- cleared dummy factory from pm02, updated configs-default, buildbotcustom
- reconfiged pm02
- sendchange:
buildbot sendchange --user aki --master localhost:9010 --branch=releases/mobile-2.0 "Fennec 4.0rc1 build2" go
Tag
moz2-linux-slave41
No problems.
Source
mv-moz2-linux-ix-slave18
no problems.
Build/Repack
mobile_win32-i686_desktop_build | mobile_linux-i686_desktop_build | mobile_macosx-i686_desktop_build | android-r7 | maemo5-gtk |
win32-slave46 | mv-moz2-linux-ix-slave21 | moz2-darwin9-slave45 | mv-moz2-linux-ix-slave19 | moz2-linux-slave45 |
20110317161754 |
repack
Sign Android
ffxbld@stage mkdir /home/ftp/pub/mobile/candidates/4.0rc1-candidates/build2/android-r7
# on keymaster in ~/signing-work mkdir fennec-4.0rc1 cd fennec-4.0rc1/ # we sign both en-US and multi # need sep dirs since they are both named gecko-unsigned-unaligned.apk mkdir -p build2/en-US mkdir build2/multi # get en-US apk cd build2/en-US/ wget http://stage.mozilla.org/pub/mozilla.org/mobile/candidates/4.0rc1-candidates/build2/unsigned/android-r7/en-US/gecko-unsigned-unaligned.apk # get multi apk cd ../multi/ wget http://stage.mozilla.org/pub/mozilla.org/mobile/candidates/4.0rc1-candidates/build2/unsigned/android-r7/gecko-unsigned-unaligned.apk # put the signing script in the ~/signing-work/fennec-4.0rc1/ dir cd ~/signing-work/fennec-4.0rc1/ cp ~/hg-tools/release/signing/* . # copy the en-US apk up to pwd for signing -- there is a bug on this # (608432), it's because sign_android.sh relies on mozpass.py and that has to # be in the same dir as .apk to work cp build2/en-US/gecko-unsigned-unaligned.apk . ./sign_android.sh * if any problems with signing, remove gecko-unaligned.apk and start again # signing successful? copy back to the en-US mv gecko-unaligned.apk build2/en-US/ # rename the fennec.apk, then move mv fennec.apk fennec-4.0rc1.en-US.eabi-arm.apk mv fennec-4.0rc1.en-US.eabi-arm.apk build2/en-US/ # clean up any left overs rm *.apk # repeat for multi cp build2/multi/gecko-unsigned-unaligned.apk . ./sign_android.sh mv gecko-unaligned.apk build2/multi/ mv fennec.apk fennec-4.0rc1.multi.eabi-arm.apk mv fennec-4.0rc1.multi.eabi-arm.apk build2/multi/ rm *.apk # upload to stage cd build2/ scp -i ~/.ssh/ffxbld_dsa -r * ffxbld@stage.mozilla.org:/home/ftp/pub/mobile/candidates/4.0rc1-candidates/build2/android-r7
Deb Repos
Full stop here due to a security issue bug 642395 and then also some last-minute mobile code changes for lang repack issues bug 642755
Build 3
Setup
- debsign bumps
- config bumps
- set pm02 to clobber
- manual clobber of mv-moz2-linux-ix-slave18 mobile_source dir
- landed configs and merged to production
- pull in configs-default on pm02
- reconfig moz2-master
- sendchange:
buildbot sendchange --user lsblakk --master localhost:9010 --branch=releases/mobile-2.0 "Fennec 4.0rc1 build3" go
l10n changesets
same as last build
Tag
moz2-linux-slave43
No problems.
Tagged buildbot-configs, buildbotcustom, tools, and mozharness with FENNEC_4_0rc1_BUILD3 and _RELEASE
Source
got slow non-ix slave timeout fail. waiting for repacks to finish to try and get an ix slave to do source.
Build/Repack
repack
no problems
partner repack
no problems
Sign Android
Ran this as fennec_sign.sh:
#!/bin/bash cd ~/signing-work/fennec-4.0rc1/ mkdir -p build3/en-US mkdir build3/multi cd build3/en-US/ wget http://stage.mozilla.org/pub/mozilla.org/mobile/candidates/4.0rc1-candidates/build3/unsigned/android-r7/en-US/gecko-unsigned-unaligned.apk cd ../multi/ wget http://stage.mozilla.org/pub/mozilla.org/mobile/candidates/4.0rc1-candidates/build3/unsigned/android-r7/multi/gecko-unsigned-unaligned.apk cd ~/signing-work/fennec-4.0rc1/ cp ~/hg-tools/release/signing/* . cp build3/en-US/gecko-unsigned-unaligned.apk . ./sign_android.sh mv gecko-unaligned.apk build3/en-US/ mv fennec.apk fennec-4.0rc1.en-US.eabi-arm.apk mv fennec-4.0rc1.en-US.eabi-arm.apk build3/en-US/ rm *.apk cp build3/multi/gecko-unsigned-unaligned.apk . ./sign_android.sh mv gecko-unaligned.apk build3/multi/ mv fennec.apk fennec-4.0rc1.multi.eabi-arm.apk mv fennec-4.0rc1.multi.eabi-arm.apk build3/multi/ rm *.apk cd build3/ scp -i ~/.ssh/ffxbld_dsa -r * ffxbld@stage.mozilla.org:/home/ftp/pub/mobile/candidates/4.0rc1-candidates/build3/android-r7
Deb Repos
Failed - turned out debsign had been failing on nightlies since a 0.3 Mozharness merge on March 5, 2011 - Aki put together a patch which was landed and the next force build went fine.
- Aki put together another patch in bug 642992 that addresses missing en-US and multi repos, but was able to manually run that patch for rc1 build 3.
Push Live
Copy bits to releases/
# ffxbld@stage /home/ftp/pub/mobile/releases mkdir 4.0rc1 cd 4.0rc1 # exclude *old* to avoid copying in the old original android apk # exclude maemo5-gtk to skip single locale repacks rsync --dry-run -av --exclude=unsigned --exclude=*.txt --exclude=*crashreporter* --exclude=*tests* --exclude=*unaligned* --exclude=*old* --exclude=maemo5-gtk ../../candidates/4.0rc1-candidates/build3/. . rsync -av --exclude=unsigned --exclude=*.txt --exclude=*crashreporter* --exclude=*tests* --exclude=*unaligned* --exclude=*old* --exclude=maemo5-gtk ../../candidates/4.0rc1-candidates/build3/. . mkdir maemo5-gtk cd maemo5-gtk rsync --dry-run -av --exclude=unsigned --exclude=*.txt --exclude=*crashreporter* --exclude=*tests* --exclude=*unaligned* --exclude=*old* ../../../candidates/4.0rc1-candidates/build3/maemo5-gtk/multi . rsync -av --exclude=unsigned --exclude=*.txt --exclude=*crashreporter* --exclude=*tests* --exclude=*unaligned* --exclude=*old* --exclude=maemo5-gtk ../../../candidates/4.0rc1-candidates/build3/maemo5-gtk/multi . cd .. # and repos mkdir repos rsync -av --exclude=*.install ../../candidates/4.0rc1-candidates/repos/ repos/ # symlink repos ln -s repos maemo cd .. rm latest-*; ln -s 4.0rc1 latest-beta; ln -s 4.0rc1 latest-alpha # link freemantle to chinook for multi deb repo # in /home/ftp/pub/mobile/releases/4.0rc1/maemo/multi/dists ln -s freemantle chinook
Create new .install files
# in mobile/releases/maemo/ LOCALES=`find . -maxdepth 1 -mindepth 1 -type d` for locale in $LOCALES; do rm $locale/firefox.install (cd $locale; ln -s firefox-fremantle.install firefox.install) ls -l $locale/firefox.install done
Create bouncer entry for maemo
# did not create android link as bits are stored on android market Firefox-Mobile-4.0rc1 maemo /mobile/releases/maemo/:lang/firefox-beta.install
Push Final Live
Copy bits to releases/
First I fixed a few things:
- remove all deb repos except multi
- rename the android apks to s,4.0rc1,4.0,
# ffxbld@stage /home/ftp/pub/mobile/releases mkdir 4.0 cd 4.0 rsync -azv ../4.0rc1/. .
Create new .install files
Already done for rc1
Create bouncer entry for maemo
# did not create android link as bits are stored on android market # Hardcoding multi due to no single locale debs Firefox-Mobile-4.0 maemo /mobile/releases/maemo/multi/firefox.install
Create softlinks
cd /home/ftp/pub/mobile/releases rm latest-alpha ln -s 4.0 latest-alpha rm latest-beta ln -s 4.0 latest-beta ln -s 4.0 latest