Releases/Fennec 5.0b1/BuildNotes: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
 
(40 intermediate revisions by 2 users not shown)
Line 1: Line 1:
== Build Engineers  ==
== Build Engineers  ==


aki - {{bug|655107}}
aki, lsblakk - {{bug|655107}}


== Bugs encountered ==
== Bugs encountered ==
Line 19: Line 19:
| [http://hg.mozilla.org/releases/mozilla-mobile-5.0/rev/118c549dd79d 118c549dd79d]
| [http://hg.mozilla.org/releases/mozilla-mobile-5.0/rev/118c549dd79d 118c549dd79d]
| [http://hg.mozilla.org/releases/mobile-5.0/rev/ca0f4a7f4413 ca0f4a7f4413]
| [http://hg.mozilla.org/releases/mobile-5.0/rev/ca0f4a7f4413 ca0f4a7f4413]
|-
| build 2
| [http://hg.mozilla.org/releases/mozilla-aurora/rev/b415c95bdb71 b415c95bdb71]
| [http://hg.mozilla.org/releases/mozilla-mobile-5.0/rev/# #]
| [http://hg.mozilla.org/releases/mobile-5.0/rev/# #]
|}
|}


Line 39: Line 44:
| [http://hg.mozilla.org/releases/mobile-5.0/rev/b208794431cc b208794431cc]
| [http://hg.mozilla.org/releases/mobile-5.0/rev/b208794431cc b208794431cc]
|-
|-
| rowspan="2" | build 2
| GECKO50b1_20110512_RELBRANCH
| [http://hg.mozilla.org/releases/mozilla-mobile-5.0/rev/# #]
| [http://hg.mozilla.org/releases/mobile-5.0/rev/# #]
|-
| FENNEC_5_0b1_RELEASE, FENNEC_5_0b1_BUILD2
| [http://hg.mozilla.org/releases/mozilla-mobile-5.0/rev/# #]
| [http://hg.mozilla.org/releases/mobile-5.0/rev/# #]
|}
|}


Line 51: Line 64:
|-
|-
| rowspan="5" | build 1
| rowspan="5" | build 1
| Android
|
| mv-moz2-linux-ix-slave20
|-
| Maemo5-GTK
|
| mv-moz2-linux-ix-slave19
|-
| Linux
|
| mv-moz2-linux-ix-slave18
|-
| Mac
|
| moz2-darwin9-slave20
|-
| Windows
|
| win32-slave46
|-
| rowspan="5" | build 2
| Android
| Android
|  
|  
Line 73: Line 107:


== Notes  ==
== Notes  ==
'''Be very careful if you merge on a build > 1 to not overwrite confvars.sh''' (see build2)
===Build 1===
==== Setup ====
* Pushed [http://hg.mozilla.org/build/mozharness/rev/8f1618c7f468 mozharness changes] after my user-repo staging release.
* Pushed [http://hg.mozilla.org/build/buildbot-configs/rev/22920666a9b3 configs changes without changesets] after my user-repo staging release.
* Got go-to-build for [http://hg.mozilla.org/releases/mozilla-aurora/rev/ad45139f4d29 mozilla-aurora rev ad45139f4d29].
* Pushed mozilla-aurora default to mozilla-mobile-5.0
* moved mozilla-mobile-5.0/mobile to mobile-5.0, removed mozilla-mobile-5.0/mobile (both on 5.0b1_build1 named branch).  This will make future merges conflict-free, though we'll have to do the below for each new changeset:
hg clone http://hg.mozilla.org/releases/mozilla-mobile-5.0
hg clone http://hg.mozilla.org/releases/mobile-5.0
cd mozilla-mobile-5.0
hg pull http://hg.mozilla.org/releases/mozilla-aurora
hg up
hg push -e 'ssh -i ~/.ssh/ffxbld_dsa -l ffxbld' ssh://hg.mozilla.org/releases/mozilla-mobile-5.0
hg ident
# We're already on ad45139f4d29
hg branch
# We're on default
hg branch 5.0b1_build1
cd ../mobile-5.0
hg branch
# We're on default
hg branch 5.0b1_build1
cd ../mozilla-mobile-5.0/mobile
tar cv - . | (cd ../../mobile-5.0; tar xBfp -)
# An |rsync -av . ../../mobile-5.0/.| would probably be better here)
cd ../../mobile-5.0
ls
hg stat
hg branch
hg addremove
hg commit
hg push -e 'ssh -i ~/.ssh/ffxbld_dsa -l ffxbld' ssh://hg.mozilla.org/releases/mobile-5.0
cd ../mozilla-mobile-5.0
hg stat
hg branch
hg rm mobile
hg commit
hg push -e 'ssh -i ~/.ssh/ffxbld_dsa -l ffxbld' ssh://hg.mozilla.org/releases/mozilla-mobile-5.0
* Landed [http://hg.mozilla.org/build/buildbot-configs/rev/3f1eb2114f15 configs] using releases/l10n/mozilla-aurora and the changesets that resulted from the above pushes.
* Landed [http://hg.mozilla.org/build/mozharness/rev/1ca7db57ee3f mozharness changes] to use releases/l10n/mozilla-aurora .  We'll be using releases/l10n/mozilla-beta once we push to mozilla-beta next week.
* Merged buildbot-configs default->production.  My changes were the only MoCo changes in default, so I only reconfiged pm02
* Updated configs-default, buildbotcustom on pm02
* Softlinked l10n-changesets_mobile-5.0.json on pm02:
cd /builds/buildbot/moz2-master
ln -s ../configs-default/mozilla2/l10n-changesets_mobile-5.0.json .
* Reconfiged pm02
* Sent mv-moz2-linux-ix-slave{18,19,20} and moz2-darwin9-slave20 to pm02-bb07 for the release. (win32-slave46 was already there.)
* Sendchange:
buildbot sendchange --user aki --master localhost:9010 --branch=releases/mobile-5.0 "Fennec 5.0b1 build1" doit
==== l10n changesets ====
Axel sent me [http://bit.ly/iNDi5u this link] to the changesets, which I landed without hitting "ship it" at his request.
I doublechecked with mfinkle that this reduced list was ok.
==== Start ====
==== Tag====
mv-moz2-linux-ix-slave20
No issues.
==== Source====
mv-moz2-linux-ix-slave18
No issues.
==== Build/Repack====
* OSX desktop build broke. This smells like branding, and we may want to turn off branding for mobile desktop builds on aurora, beta, release.
** Going to keep going; needs someone to make a call and/or fix the bustage
=====repack=====
'''Respin for build 2 called here because of the branding fail'''


===Build 1===
===Build 2===


==== Setup ====
==== Setup ====


* Pushed [http://hg.mozilla.org/build/buildbot-configs/rev/844547abac09 configs changes without desktop beta branding]
* Got go-to-build for [http://hg.mozilla.org/releases/mozilla-aurora/rev/b415c95bdb71 mozilla-aurora rev b415c95bdb71]
* Prepared repos as outlined below
* Landed [http://hg.mozilla.org/build/buildbot-configs/rev/74e602c113ef release configs] and [http://hg.mozilla.org/build/mozharness/rev/40fec648b2bc mozharness] bumps for build2
* Clobbered mobile_source on mv-moz2-linux-ix-slave18
* Updated pm02 & reconfiged
* Sendchange
buildbot sendchange --user lsblakk --master localhost:9010 --branch=releases/mobile-5.0 "Fennec 5.0b1 build2" doit
=====Preparing the repos=====
Pulled mozilla-aurora b415c95bdb71 to mozilla-mobile-5.0
<pre>
hg clone http://hg.mozilla.org/releases/mozilla-mobile-5.0
cd mozilla-mobile-5.0
hg pull http://hg.mozilla.org/releases/mozilla-aurora -r b415c95bdb71
hg up
hg push -e 'ssh -i ~/.ssh/ffxbld_dsa -l ffxbld' ssh://hg.mozilla.org/releases/mozilla-mobile-5.0
hg ident
# We're already on b415c95bdb71
hg branch
# We're on default
hg branch 5.0b1_build2
</pre>
Moved mozilla-mobile-5.0/mobile to mobile-5.0
<pre>
cd ..
hg clone http://hg.mozilla.org/releases/mobile-5.0
cd mobile-5.0
hg branch
# We're on GECKO50b1_20110512_RELBRANCH
hg branch 5.0b1_build2
cd ../mozilla-mobile-5.0/mobile
rsync -av . ../../mobile-5.0/.
cd ../../mobile-5.0
ls
hg stat
hg branch
hg addremove
hg commit -m "Bug 654838 create a unique branding for Fennec beta (Maemo parts) r+a=blasssey p=mfinkle"
hg push -f -e 'ssh -i ~/.ssh/ffxbld_dsa -l ffxbld' ssh://hg.mozilla.org/releases/mobile-5.0
</pre>
Removed mozilla-mobile-5.0/mobile (both on 5.0b1_build2 named branch).  This will make future merges conflict-free, though we'll have to do the below for each new changeset:
cd ../mozilla-mobile-5.0
hg stat
hg branch
hg rm mobile
hg commit
hg push -f -e 'ssh -i ~/.ssh/ffxbld_dsa -l ffxbld' ssh://hg.mozilla.org/releases/mozilla-mobile-5.0
Merged the 5.0b1_build2 to relbranch for release use & tagging
<pre>
# in mozilla-mobile-5.0 and mobile-5.0
hg up -r GECKO50b1_20110512_RELBRANCH
hg merge -r 5.0b1_build2
hg commit -m "Merge from 5.0b1_build2 branch to relbranch for release tagging"
hg push -e 'ssh -i ~/ssh-prod/ffxbld_dsa -l ffxbld' ssh://hg.mozilla.org/releases/{mozilla-mobile-5.0, mobile-5.0}
</pre>


==== l10n changesets ====
==== l10n changesets ====


Re-using build1 changesets


==== Start ====
==== Start ====
==== Tag====
==== Tag====
mv-moz2-linux-ix-slave19
No problems.
I did not tag our buildbot-configs/buildbotcustom/mozharness/tools repos since this is a test beta release


==== Source====
==== Source====
mv-moz2-linux-ix-slave20
No problems.


==== Build/Repack====
==== Build/Repack====
Build version number in confvars.sh got reset due to my [http://hg.mozilla.org/releases/mobile-5.0/rev/134ab8bdf6a8 merge from aurora] and builds > 1 don't do version bumps in the automation so this build2 is set to 5.0a2 instead of 5.0b1 and updates-to-the-build are broken for this build.
=====repack=====
=====repack=====
No problems.


====Sign Android====
====Sign Android====
Created /home/ftp/pub/mozilla.org/mobile/candidates/5.0b1-candidates/build2/android-r7 as ffxbld@stage.m.o and then ran the sign_android.sh script in ~ on keymaster, with the variables updated.
<pre>
export VERSION=5.0b1
export PRODUCT=fennec
export BUILD=build2
# on keymaster in ~/signing-work
cd ~/signing-work
mkdir $PRODUCT-$VERSION
cd $PRODUCT-$VERSION/
# we sign both en-US and multi
# need sep dirs since they are both named gecko-unsigned-unaligned.apk
echo "Creating directories"
mkdir -p $BUILD/en-US
mkdir $BUILD/multi
echo "Getting the unsigned apks"
# get en-US apk
cd $BUILD/en-US/
wget http://stage.mozilla.org/pub/mozilla.org/mobile/candidates/$VERSION-candidates/$BUILD/unsigned/android-r7/en-US/gecko-unsigned-unaligned.apk
# get multi apk
cd ../multi/
wget http://stage.mozilla.org/pub/mozilla.org/mobile/candidates/$VERSION-candidates/$BUILD/unsigned/android-r7/multi/gecko-unsigned-unaligned.apk
# put the signing script in the ~/signing-work/fennec-4.0rc1/ dir
echo "Copying signing script from hg-tools"
cd  ~/signing-work/$PRODUCT-$VERSION/
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
echo "Prepare to sign en-US"
cp $BUILD/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
echo "en-US signed, cleaning up"
mv gecko-unaligned.apk $BUILD/en-US/
# rename the fennec.apk, then move
mv $PRODUCT.apk $PRODUCT-$VERSION.en-US.eabi-arm.apk
mv $PRODUCT-$VERSION.en-US.eabi-arm.apk $BUILD/en-US/
# clean up any left overs 
rm *.apk
# repeat for multi
echo "Prepare to sign multi"
cp $BUILD/multi/gecko-unsigned-unaligned.apk .
./sign_android.sh
echo "multi signed, cleaning up"
mv gecko-unaligned.apk $BUILD/multi/
mv $PRODUCT.apk $PRODUCT-$VERSION.multi.eabi-arm.apk
mv $PRODUCT-$VERSION.multi.eabi-arm.apk $BUILD/multi/
rm *.apk
# upload to stage
cd $BUILD/
echo "Uploading signed builds"
scp -i ~/.ssh/ffxbld_dsa -r * ffxbld@stage.mozilla.org:/home/ftp/pub/mobile/candidates/$VERSION-candidates/$BUILD/android-r7
</pre>


==== Deb Repos====
==== Deb Repos====
Ran mozilla-mobile-5.0 deb sign release builder. No problems (it looks for http://ftp.mozilla.org/pub/mozilla.org/mobile/candidates/5.0b1-candidates/build2/maemo5-gtk/multi/deb_name.txt so the 5.0a2 version didn't cause breakage)


==== Push Live ====
==== Push Live ====
Line 100: Line 352:


===== Create softlinks =====
===== Create softlinks =====
[http://www.example.com link title]

Latest revision as of 18:23, 13 May 2011

Build Engineers

aki, lsblakk - bug 655107

Bugs encountered

Signed-off Revision(s)

Build # mozilla-aurora mozilla-mobile-5.0 mobile-5.0
build 1 ad45139f4d29 118c549dd79d ca0f4a7f4413
build 2 b415c95bdb71 # #

Tags

Build # Tag Moz Changeset Mobile Changeset
build 1 GECKO50b1_20110512_RELBRANCH d2ea4773226b 8e01091eb1c4
FENNEC_5_0b1_RELEASE, FENNEC_5_0b1_BUILD1 0c59bc5db751 b208794431cc
build 2 GECKO50b1_20110512_RELBRANCH # #
FENNEC_5_0b1_RELEASE, FENNEC_5_0b1_BUILD2 # #

Build data

Build # Type Build ID Build machine
build 1 Android mv-moz2-linux-ix-slave20
Maemo5-GTK mv-moz2-linux-ix-slave19
Linux mv-moz2-linux-ix-slave18
Mac moz2-darwin9-slave20
Windows win32-slave46
build 2 Android
Maemo5-GTK
Linux
Mac
Windows

Notes

Be very careful if you merge on a build > 1 to not overwrite confvars.sh (see build2)

Build 1

Setup


  • Got go-to-build for mozilla-aurora rev ad45139f4d29.
  • Pushed mozilla-aurora default to mozilla-mobile-5.0
  • moved mozilla-mobile-5.0/mobile to mobile-5.0, removed mozilla-mobile-5.0/mobile (both on 5.0b1_build1 named branch). This will make future merges conflict-free, though we'll have to do the below for each new changeset:
hg clone http://hg.mozilla.org/releases/mozilla-mobile-5.0
hg clone http://hg.mozilla.org/releases/mobile-5.0

cd mozilla-mobile-5.0
hg pull http://hg.mozilla.org/releases/mozilla-aurora
hg up
hg push -e 'ssh -i ~/.ssh/ffxbld_dsa -l ffxbld' ssh://hg.mozilla.org/releases/mozilla-mobile-5.0
hg ident
# We're already on ad45139f4d29
hg branch
# We're on default
hg branch 5.0b1_build1

cd ../mobile-5.0
hg branch
# We're on default
hg branch 5.0b1_build1

cd ../mozilla-mobile-5.0/mobile
tar cv - . | (cd ../../mobile-5.0; tar xBfp -)
# An |rsync -av . ../../mobile-5.0/.| would probably be better here)
cd ../../mobile-5.0
ls
hg stat
hg branch
hg addremove
hg commit
hg push -e 'ssh -i ~/.ssh/ffxbld_dsa -l ffxbld' ssh://hg.mozilla.org/releases/mobile-5.0

cd ../mozilla-mobile-5.0
hg stat
hg branch
hg rm mobile
hg commit
hg push -e 'ssh -i ~/.ssh/ffxbld_dsa -l ffxbld' ssh://hg.mozilla.org/releases/mozilla-mobile-5.0
  • Landed configs using releases/l10n/mozilla-aurora and the changesets that resulted from the above pushes.
  • Landed mozharness changes to use releases/l10n/mozilla-aurora . We'll be using releases/l10n/mozilla-beta once we push to mozilla-beta next week.
  • Merged buildbot-configs default->production. My changes were the only MoCo changes in default, so I only reconfiged pm02
  • Updated configs-default, buildbotcustom on pm02
  • Softlinked l10n-changesets_mobile-5.0.json on pm02:
cd /builds/buildbot/moz2-master
ln -s ../configs-default/mozilla2/l10n-changesets_mobile-5.0.json .
  • Reconfiged pm02
  • Sent mv-moz2-linux-ix-slave{18,19,20} and moz2-darwin9-slave20 to pm02-bb07 for the release. (win32-slave46 was already there.)
  • Sendchange:
buildbot sendchange --user aki --master localhost:9010 --branch=releases/mobile-5.0 "Fennec 5.0b1 build1" doit

l10n changesets

Axel sent me this link to the changesets, which I landed without hitting "ship it" at his request.

I doublechecked with mfinkle that this reduced list was ok.

Start

Tag

mv-moz2-linux-ix-slave20

No issues.

Source

mv-moz2-linux-ix-slave18

No issues.

Build/Repack

  • OSX desktop build broke. This smells like branding, and we may want to turn off branding for mobile desktop builds on aurora, beta, release.
    • Going to keep going; needs someone to make a call and/or fix the bustage
repack

Respin for build 2 called here because of the branding fail

Build 2

Setup

buildbot sendchange --user lsblakk --master localhost:9010 --branch=releases/mobile-5.0 "Fennec 5.0b1 build2" doit
Preparing the repos

Pulled mozilla-aurora b415c95bdb71 to mozilla-mobile-5.0

 hg clone http://hg.mozilla.org/releases/mozilla-mobile-5.0
 
 cd mozilla-mobile-5.0
 hg pull http://hg.mozilla.org/releases/mozilla-aurora -r b415c95bdb71
 hg up
 hg push -e 'ssh -i ~/.ssh/ffxbld_dsa -l ffxbld' ssh://hg.mozilla.org/releases/mozilla-mobile-5.0
 hg ident
 # We're already on b415c95bdb71 
 hg branch
 # We're on default
 hg branch 5.0b1_build2

Moved mozilla-mobile-5.0/mobile to mobile-5.0

 cd ..
 hg clone http://hg.mozilla.org/releases/mobile-5.0
 cd mobile-5.0
 hg branch
 # We're on GECKO50b1_20110512_RELBRANCH
 hg branch 5.0b1_build2
 
 cd ../mozilla-mobile-5.0/mobile
 rsync -av . ../../mobile-5.0/.
 cd ../../mobile-5.0
 ls
 hg stat
 hg branch
 hg addremove
 hg commit -m "Bug 654838 create a unique branding for Fennec beta (Maemo parts) r+a=blasssey p=mfinkle"
 hg push -f -e 'ssh -i ~/.ssh/ffxbld_dsa -l ffxbld' ssh://hg.mozilla.org/releases/mobile-5.0

Removed mozilla-mobile-5.0/mobile (both on 5.0b1_build2 named branch). This will make future merges conflict-free, though we'll have to do the below for each new changeset:

cd ../mozilla-mobile-5.0
hg stat
hg branch
hg rm mobile
hg commit
hg push -f -e 'ssh -i ~/.ssh/ffxbld_dsa -l ffxbld' ssh://hg.mozilla.org/releases/mozilla-mobile-5.0

Merged the 5.0b1_build2 to relbranch for release use & tagging

 # in mozilla-mobile-5.0 and mobile-5.0
 hg up -r GECKO50b1_20110512_RELBRANCH
 hg merge -r 5.0b1_build2
 hg commit -m "Merge from 5.0b1_build2 branch to relbranch for release tagging"
 hg push -e 'ssh -i ~/ssh-prod/ffxbld_dsa -l ffxbld' ssh://hg.mozilla.org/releases/{mozilla-mobile-5.0, mobile-5.0}

l10n changesets

Re-using build1 changesets

Start

Tag

mv-moz2-linux-ix-slave19

No problems.

I did not tag our buildbot-configs/buildbotcustom/mozharness/tools repos since this is a test beta release

Source

mv-moz2-linux-ix-slave20

No problems.

Build/Repack

Build version number in confvars.sh got reset due to my merge from aurora and builds > 1 don't do version bumps in the automation so this build2 is set to 5.0a2 instead of 5.0b1 and updates-to-the-build are broken for this build.

repack

No problems.

Sign Android

Created /home/ftp/pub/mozilla.org/mobile/candidates/5.0b1-candidates/build2/android-r7 as ffxbld@stage.m.o and then ran the sign_android.sh script in ~ on keymaster, with the variables updated.

export VERSION=5.0b1
export PRODUCT=fennec
export BUILD=build2

# on keymaster in ~/signing-work
cd ~/signing-work
mkdir $PRODUCT-$VERSION
cd $PRODUCT-$VERSION/

# we sign both en-US and multi 
# need sep dirs since they are both named gecko-unsigned-unaligned.apk
echo "Creating directories"
mkdir -p $BUILD/en-US
mkdir $BUILD/multi
echo "Getting the unsigned apks"
# get en-US apk
cd $BUILD/en-US/
wget http://stage.mozilla.org/pub/mozilla.org/mobile/candidates/$VERSION-candidates/$BUILD/unsigned/android-r7/en-US/gecko-unsigned-unaligned.apk
# get multi apk 
cd ../multi/
wget http://stage.mozilla.org/pub/mozilla.org/mobile/candidates/$VERSION-candidates/$BUILD/unsigned/android-r7/multi/gecko-unsigned-unaligned.apk

# put the signing script in the ~/signing-work/fennec-4.0rc1/ dir
echo "Copying signing script from hg-tools"
cd  ~/signing-work/$PRODUCT-$VERSION/
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
echo "Prepare to sign en-US"
cp $BUILD/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
echo "en-US signed, cleaning up"
mv gecko-unaligned.apk $BUILD/en-US/
# rename the fennec.apk, then move
mv $PRODUCT.apk $PRODUCT-$VERSION.en-US.eabi-arm.apk
mv $PRODUCT-$VERSION.en-US.eabi-arm.apk $BUILD/en-US/
# clean up any left overs  
rm *.apk
# repeat for multi
echo "Prepare to sign multi"
cp $BUILD/multi/gecko-unsigned-unaligned.apk .
./sign_android.sh 
echo "multi signed, cleaning up"
mv gecko-unaligned.apk $BUILD/multi/
mv $PRODUCT.apk $PRODUCT-$VERSION.multi.eabi-arm.apk
mv $PRODUCT-$VERSION.multi.eabi-arm.apk $BUILD/multi/
rm *.apk
# upload to stage
cd $BUILD/ 
echo "Uploading signed builds"
scp -i ~/.ssh/ffxbld_dsa -r * ffxbld@stage.mozilla.org:/home/ftp/pub/mobile/candidates/$VERSION-candidates/$BUILD/android-r7

Deb Repos

Ran mozilla-mobile-5.0 deb sign release builder. No problems (it looks for http://ftp.mozilla.org/pub/mozilla.org/mobile/candidates/5.0b1-candidates/build2/maemo5-gtk/multi/deb_name.txt so the 5.0a2 version didn't cause breakage)

Push Live

Copy bits to releases/
Create bouncer entry for maemo
Create softlinks

link title