Releases/Fennec 4.0b1/BuildNotes
Contents
Build Engineers
aki - bug 595977
Bugs encountered
- bug 589985 Maemo release build uploads to wrong location for non-multilocale builds
- bug 589986 Deb signing needs to be more flexible
- bug 601323 Fennec desktop release builds upload to tinderbox-builds
- bug 602329 betatest channel switch issue.
- bug 602327 Android snippet creation needs to happen after signing
Signed-off Revision(s)
Build # | mozilla-central | mobile-browser |
build 1 | 4791cfde3ca0 | 840649eabc3b |
build 2 | 6bd3e0d8c5d1 | 7b91493b311b |
build 3 | 54ee8240f2f9 | 7b91493b311b |
Tags
On mozilla-central:
Build # | Tag | Moz Changeset | Mobile Changeset |
build 1 | GECKO20b7pre_20100929_RELBRANCH | cd8b5689ffbf | 840649eabc3b |
FENNEC_4_0b1_RELEASE, FENNEC_4_0b1_BUILD1 | 4791cfde3ca0 | 840649eabc3b | |
build 2 | FENNEC_4_0b1_RELEASE, FENNEC_4_0b1_BUILD2 | 6bd3e0d8c5d1 | 7b91493b311b |
build 3 | FENNEC_4_0b1_RELEASE, FENNEC_4_0b1_BUILD3 | 54ee8240f2f9 | 7b91493b311b |
Build data
Build # | Type | Build ID | Build machine |
build 1 | Android | 20101001204052 | mv-moz2-linux-ix-slave04 |
Maemo5-GTK | 20101001194104 | linux-ix-slave14 | |
Linux | 20101001204635 | linux-ix-slave14 | |
Mac | 20101001203726 | bm-xserve06 | |
Windows | 20101001195559 | mw32-ix-slave13 | |
build 2 | Android | 20101005195720 | mv-moz2-linux-ix-slave14 |
Maemo5-GTK | 20101005191355 | mv-moz2-linux-ix-slave16 | |
Linux | 20101005195231 | moz2-linux-slave38 | |
Mac | 20101005210655 | moz2-darwin9-slave46 | |
Windows | 20101005205414 | win32-slave46 | |
build 3 | Android | 20101006203925 | moz2-linux-slave39 |
Maemo5-GTK | 20101006201705 | moz2-linux-slave28 | |
Linux | 20101006193552 | mv-moz2-linux-ix-slave15 | |
Mac | 20101006211756 | moz2-darwin9-slave46 | |
Windows | 20101006195146 | mw32-ix-slave20 |
Notes
Build 1
- I created the relbranch manually on Sept29 (at Stuart's request), on both m-c and m-b, and bumped the mobile-browser/default-version.txt to 4.0b1.
- Checked in Android release updates (buildbotcustom) (buildbot-configs)
- Landed version bumps, debsign config updates, mozconfig updates here
- Updated debsigning configs in mozharness here and bumped PRODUCTION tag
- brought over linux-ix-slave14 to pm:8011
- reconfiged pm:8011, then noticed jhford had been using it. Checked, nothing broken. Left a note in his build notes.
- sent r-d email since there had been a lag since go-to-build to get ducks in a row
- closed m-c
- Kicked off automation with
buildbot sendchange --username aki --master=localhost:9011 --branch=mobile-browser "Fennec 4.0b1 build1" doit
- tagged buildbot-configs and buildbotcustom with FENNEC_4_0b1_RELEASE and FENNEC_4_0b1_BUILD1
- reconfiged pmm:8011 for deb signing
Tag
mv-moz2-linux-ix-slave04
No problems; re-opened m-c
Source
mv-moz2-linux-ix-slave04
No problems.
Build/Repack
Hit bug 589985 again; needed to move build1/fennec* and build1/maemo* to build1/maemo5-gtk/
Hit bug 601323 -- make upload on Fennec desktop is uploading to tinderbox-builds for release builds =P
Fixed by finding the tinderbox-builds directories and moving them to build1/PLATFORM
Sign Android
Followed https://intranet.mozilla.org/Build:MobileSigning ; I need to update that script and check it in when Android packaging changes.
Deb Repos
Died on non-multilocale again :(
Checked in a fix; on smm:
cd /scratchbox/users/cltbld/home/cltbld/deb-unknown #this can be any mozharness checkout hg pull hg up -C # This is copied from the output from the deb signing factory, # but with |--locale en-US| added. scripts/signdebs.py --config-file deb_repos/4.0_release.json --work-dir deb-unknown --log-level info --platform fremantle --locale en-US
I need to fix this.
Update testing
Push Live
Copy bits to releases/
Create new .install files
Create bouncer entries
Updates to beta channel
Build 2
- Checked in fix for release desktop fennec uploads: configs custom
- Checked in debsign bump + tagged PRODUCTION
- Reconfiged pm02:8010
- Started automation with
buildbot sendchange --username aki --master=localhost:9010 --branch=mobile-browser "Fennec 4.0b1 build2" doit
- Reconfiged production-mobile-master:8011 (debsign)
- tagged buildbot-configs and buildbotcustom with FENNEC_4_0b1_BUILD2 and bumped FENNEC_4_0b1_RELEASE tag
Tag
moz2-linux-slave40
no issues
reopened tree
Source
moz2-linux-slave42
no problems
Build/Repack
- maemo5-gtk uploaded to build2/ rather than build2/maemo5-gtk (bug 589985 again). Manually created the maemo5-gtk directory and moved *.* there.
- Hit bug 601323 again.
- linux-i686 uploaded to /pub/mozilla.org/mobile/nightly/4.0b1-candidates/build2/
cd /home/ftp/pub/mobile/candidates/4.0b1-candidates/build2 mkdir linux-i686 mv ../../../nightly/4.0b1-candidates/build2/*linux* linux-i686/
- win32-i686 uploaded to /pub/mozilla.org/mobile/nightly/4.0b1-candidates/build2/unsigned
cd /home/ftp/pub/mobile/candidates/4.0b1-candidates/build2 mv ../../../nightly/4.0b1-candidates/build2/unsigned win32-i686
- macosx-i686 uploaded to /pub/mozilla.org/mobile/nightly/4.0b1-candidates/build2/
cd /home/ftp/pub/mobile/candidates/4.0b1-candidates/build2 mkdir macosx-i686 mv ../../../nightly/4.0b1-candidates/build2/*mac* macosx-i686/ cd ../../../nightly ls -lR 4.0b1-candidates rm -rf 4.0b1-candidates
Sign Android
https://intranet.mozilla.org/Build:MobileSigning is pretty seamless, minus the dvorak switching.
This will change shortly after 4.0b1, with make upload/the disappearance of gecko-unsigned-unaligned.apk.
Deb Repos
This went awesome due to the configs having
- "locales": ["en-US"],
which kept it from erroring out on multi and the l10n repacks, and
- "deb_name_url": "http://ftp.mozilla.org/pub/mozilla.org/mobile/candidates/4.0b1-candidates/build2/maemo5-gtk/deb_name.txt",
- "en_us_dir_url": "http://ftp.mozilla.org/pub/mozilla.org/mobile/candidates/4.0b1-candidates/build2/maemo5-gtk/",
which kept it from looking for multi/deb_name.txt and en-US/*.deb, respectively.
In a multilocale build with single locale repacks, we'll have to undo those changes.
Update testing
- Ran into bug 602329 betatest channel switch issue. I pushed the snippets to the beta channel since no users have any builds that can update.
- Ran into bug 602327 (complete.txt has wrong size/hash). Updated manually.
Once I fixed the complete.txt hash/filesize on the beta channel, updates worked smoothly.
Push Live
Copy bits to releases/
ffxbld@stage
cd /home/ftp/pub/mobile/releases mkdir 4.0b1 cd 4.0b1 rsync -av --exclude=unsigned ../../candidates/4.0b1-candidates/build2/. . rsync -av ../../candidates/4.0b1-candidates/repos . ln -s repos maemo cd .. rm latest-alpha; ln -s 4.0b1 latest-alpha rm latest-beta; ln -s 4.0b1 latest-beta
Create new .install files
I had to create new softlinks for the Firefox-beta.install files (no longer point to chinook; point to fremantle).
cd /home/ftp/pub/mobile/releases/maemo for locale in * ; do if [ $locale = "firefox.install" ] ; then continue fi rm $locale/firefox-beta.install (cd $locale; ln -s firefox-fremantle-beta.install firefox-beta.install) done
The .install files almost all look good. We need to switch for 4.0 (firefox.install -> firefox-fremantle.install) and if we add locales, but soon these will be mostly static.
Create bouncer entries
Created Firefox-Mobile-4.0b1 maemo /mobile/releases/maemo/:lang/firefox-beta.install
Also android /mobile/releases/4.0b1/android-r7/fennec.apk
Updates to beta channel
There are no releases out there that can update. Will do this for 4.0b2.
Build 3
- Manually clobbered moz2-linux-slave42 mobile_source due to bug 537426
- Checked in mozharness update for deb signing here and moved PRODUCTION tag
- Checked in config update
- Reconfiged pm02:8010
- Closed tree
- Started build with
buildbot sendchange --username aki --master localhost:9010 --branch=mobile-browser "Fennec 4.0b1 build3" doit
- Reconfiged pmm:8011 (debsign) before remembering that I didn't need to (no debsign buildbot changes), but it doesn't hurt
- Tagged buildbotcustom and buildbot-configs with FENNEC_4_0b1_BUILD3 and moved FENNEC_4_0b1_RELEASE tag
Tag
mv-moz2-linux-ix-slave16
No problems, but the 2nd 2.0b7pre RELBRANCH gave me a total scare.
Reopened tree.
Source
moz2-linux-slave41
No problems.
Build/Repack
- bug 601323 - desktop builds still uploading to nightly w/o platform. moved them to the right location manually.
- bug 589985 - maemo non-multilocale still uploading to buildN/ rather than buildN/maemo5-gtk/. moved to the right location manually.
Sign Android
https://intranet.mozilla.org/Build:MobileSigning is pretty seamless, minus the dvorak switching.
This will change shortly after 4.0b1, with make upload/the disappearance of gecko-unsigned-unaligned.apk.
After uploading, I:
openssl dgst -sha512 fennec.apk SHA512(fennec.apk)= 75276b5391b5ea98c4bc38661fb8e4995bcc4fa4c8d021a2ac8661080d576d63aa8657d840367305ef4d3fd6f26e47dab884e8101a767c88a0e754e5f37d5884 ls -l fennec.apk -rwxr-xr-x 1 ffxbld firefox 12404946 Oct 6 20:58 fennec.apk
Then I ssh'ed to aus2-staging and
/opt/aus2/incoming/3/Fennec/4.0b1/Android_arm-eabi-gcc3/20101001204052/en-US mv betatest beta-cck-test # try mfinkle's idea for bug 602329 vi beta-cck-test/complete.txt # put the sha512 hash and filesize into the complete.txt # do the same for build2
Deb Repos
- Forced a mozilla-central deb sign release on pmm:8011, no problems.
Update testing
- I had manually set beta-cck-test channel for build1 and build2 -> build3 (manual filesize+hash too).
- nhirata tested build1 and build2 on beta-cck-test (see here) by setting app.partner.test = test. Worked.
Push Live
Copy bits to releases/
cd /home/ftp/pub/mobile/releases mkdir 4.0b1-real cd 4.0b1-real rsync --dry-run -av --exclude=unsigned --exclude=*.txt --exclude=*crashreporter* --exclude=*tests* --exclude=*unaligned* ../../candidates/4.0b1-candidates/build3/. . rsync -av --exclude=unsigned --exclude=*.txt --exclude=*crashreporter* --exclude=*tests* --exclude=*unaligned* ../../candidates/4.0b1-candidates/build3/. . rsync -av ../../candidates/4.0b1-candidates/repos . ln -s repos maemo cd .. rm -rf 4.0b1 # get rid of build2 to avoid confusion rm latest-alpha latest-beta ln -s 4.0b1-real latest-alpha ln -s 4.0b1-real latest-beta # hack chinook for now... long term fix later? cd 4.0b1-real/repos/en-US/dists ln -s fremantle chinook
Create new .install files
The .install files from build2 should be fine.
Create bouncer entries
Changed the 4.0b1 android bouncer entry to point to 4.0b1-real
Updates to beta channel
n/a for 4.0b1, will start on 4.0b2.