Releases/Firefox 3.5.10/BuildNotes: Difference between revisions

Line 223: Line 223:


==== Major update generation and verification (3.5.10 -> 3.6.4 build7) ====
==== Major update generation and verification (3.5.10 -> 3.6.4 build7) ====
* Unfortunately there is a regression somewhere and I don't have the wonderful "major_update" builder anymore. I have to generate the MU manually based on [[Releases/Firefox_3.5.8/BuildNotes#Major_update_.283.5.8_to_3.6.0.29 this notes]]
NOTE for post-mortem:
* pm02 was pointing to release-mozilla-central.py instead of release-mozilla-1.9.1.py. Therefore I did not see any "major_update" builder. After a while I realized about this.
* pm was turned off so I turned it on. I got a slave and started doing "final_verification".
* I landed a change for changing release_config1.py to point at release-mozilla-1.9.1.py. Unfortunately I had landed it on the buildbot-0.8.0 branch and therefore I was not able to see any "major_update" builder.
* I started preparing the patches for manual generation of the MU until catlee noticed that the "major_update" builder was there (There was too much going and I probably missed it).
* I made sure that now my patches were correctly landed on default and reconfigured.
* I have now "force build" the builder


===== Snippet generation =====
TODO complete
* Slave fx-linux-1.9-slave2
* Based off [[Releases/Firefox_3.6/BuildNotes#Snippet_generation|snippet generation notes for 3.6]]
mkdir -p /builds/3.5.10-3.6.4-major-update
cd /builds/3.5.10-3.6.4-major-update
export CVSROOT=:ext:cltbld@cvs.mozilla.org:/cvsroot
cvs co -d patcher-configs mozilla/tools/patcher-configs
cvs co -r UPDATE_PACKAGING_R10 -d patcher mozilla/tools/patcher
cd patcher
cvs co -r UPDATE_PACKAGING_R10 -d MozBuild mozilla/tools/release/MozBuild 
# build tools
./patcher2.pl --build-tools --app=firefox --tools-rev=UPDATE_PACKAGING_R10  --config=../patcher-configs/moz191-branch-major-update-patcher2.cfg 2>&1 | tee  ../firefox_build-tools.log
# fake 3.5.10 mars, which aren't used for anything but take time to d/l
mkdir -p temp/firefox/3.5.10/ftp/
# I don't know where this link of locales comes from
# maybe http://hg.mozilla.org/releases/mozilla-1.9.1/raw-file/1e0223b57404/browser/locales/shipped-locales?
# it seems to match 3.5.8's http://hg.mozilla.org/releases/mozilla-1.9.1/raw-file/9165e7415f91/browser/locales/shipped-locales
for l in af ar as be bg bn-BD bn-IN ca cs cy da de el en-GB en-US eo es-AR es-CL es-ES es-MX et eu fa fi fr fy-NL ga-IE gl gu-IN he hi-IN hr hu id is it ja ja-JP-mac ka kk kn ko ku lt lv mk ml mn mr nb-NO nl nn-NO oc or pa-IN pl pt-BR pt-PT rm ro ru si sk sl sq sr sv-SE ta ta-LK te th tr uk vi zh-CN zh-TW; do
  touch temp/firefox/3.5.10/ftp/firefox-3.5.10.${l}.{linux-i686,mac,win32}.complete.mar
done
# download mars
./patcher2.pl --download --app=firefox --config=../patcher-configs/moz191-branch-major-update-patcher2.cfg 2>&1 | tee ../firefox_download.log
 
'''DONE TO HERE'''
<i>
# FIXME - patcher needs to see that the MARs that it thinks are partials
#            are there or else it will not attempt to generate patchinfo
cd temp/firefox
mkdir 3.5.10-3.6.4
ln -s ../3.6.4/ftp 3.5.10-3.6.4/ftp
cd ../..
# Create partial patches and snippets
./patcher2.pl --create-patches --app=firefox --config=../patcher-configs/moz191-branch-major-update-patcher2.cfg 2>&1 | tee ../firefox-create-patches.log
 
===== Quick verify =====
Check that releasetest = beta = release .
cd temp/firefox/3.5.10-3.6.4
# releasetest == beta
find aus2.test -type d -iregex '.*/releasetest$' | perl -nle '$a = $_; $a =~ s/releasetest/beta/; $a =~ s/aus2\.test/aus2/; system("diff -r -u $_ $a");'
find aus2 -type d -iregex '.*/beta$' | perl -nle '$a = $_; $a =~ s/beta$/releasetest/; $a =~ s/aus2/aus2.test/; system("diff -r -u $_ $a");'
# beta == release
find aus2 -type d -iregex '.*/beta$' | perl -nle '$a = $_; $a =~ s/beta/release/; system("diff -r -u $_ $a");'
find aus2 -type d -iregex '.*/release$' | perl -nle '$a = $_; $a =~ s/release$/beta/; system("diff -r -u $_ $a");'
# beta == betatest
find aus2.test -type d -iregex '.*/betatest$' | perl -nle '$a = $_; $a =~ s/betatest$/beta/; $a =~ s/aus2\.test/aus2/; system("diff -r -u $_ $a");'
find aus2 -type d -iregex '.*/beta$' | perl -nle '$a = $_; $a =~ s/beta$/betatest/; $a =~ s/aus2/aus2.test/; system("diff -r -u $_ $a");'
No output, as expected.
 
===== Push to AUS =====
rsync -e 'ssh -i /home/cltbld/.ssh/aus' -av aus2.test/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20100210-Firefox-3.5.10-3.6.4-MU-test
rsync -e 'ssh -i /home/cltbld/.ssh/aus' -av aus2/      cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20100210-Firefox-3.5.10-3.6.4-MU
 
===== Enable test snippets =====
# cltbld@aus2-staging
~/bin/backupsnip 20100210-Firefox-3.5.10-3.6.4-MU-test
~/bin/pushsnip  20100210-Firefox-3.5.10-3.6.4-MU-test
 
===== Update verify =====
 
Ran update verify on fx-{linux,mac,win32}-1.9-slave2 as follows:
mkdir -p /builds/verify/firefox-3510-364-major/
cd /builds/verify/firefox-3510-364-major/
hg clone http://hg.mozilla.org/build/tools
# get patch to trawl "Only in" directories
cd tools/release/common
# on mac & linux
curl -sL https://bugzilla.mozilla.org/attachment.cgi?id=367544 | patch -p3
# on win32
wget --no-check-certificate -O patch https://bugzilla.mozilla.org/attachment.cgi?id=367544
patch -p3 < patch
# everyone ...
cd ../updates
platform=linux  # or mac or win32
./verify.sh -c moz191-firefox-$platform-major.cfg 2>&1 | tee $platform.log
 
Results:
* No update found for mn, but that's not available for 3.6 so that's fine
* Linux - no files or directories left over
* Mac - leftover empty directories (updater not allowed to remove them)
<pre>Only in source/Firefox.app/Contents: Plug-Ins
Contents of source/Firefox.app/Contents/Plug-Ins dir only in source or target
1775958570    0 drwxr-xr-x    3 cltbld  cltbld        102 Feb  2 16:58 source/Firefox.app/Contents/Plug-Ins/PrintPDE.plugin
1775958571    0 drwxr-xr-x    4 cltbld  cltbld        136 Feb 10 15:00 source/Firefox.app/Contents/Plug-Ins/PrintPDE.plugin/Contents
1775958572    0 drwxr-xr-x    2 cltbld  cltbld        68 Feb 10 15:00 source/Firefox.app/Contents/Plug-Ins/PrintPDE.plugin/Contents/MacOS
1775958573    0 drwxr-xr-x    3 cltbld  cltbld        102 Feb  2 16:58 source/Firefox.app/Contents/Plug-Ins/PrintPDE.plugin/Contents/Resources
1775958574    0 drwxr-xr-x    3 cltbld  cltbld        102 Feb 10 15:00 source/Firefox.app/Contents/Plug-Ins/PrintPDE.plugin/Contents/Resources/English.lproj
1775958575    0 drwxr-xr-x    2 cltbld  cltbld        68 Feb 10 15:00 source/Firefox.app/Contents/Plug-Ins/PrintPDE.plugin/Contents/Resources/English.lproj/PrintPDE.nib
</pre>
* Windows: All the normal suspects, no problems with this (chk files will go away with bug 489961)
<pre>Only in source/bin: .autoreg
Binary files source/bin/freebl3.chk and target/bin/freebl3.chk differ
Binary files source/bin/nssdbm3.chk and target/bin/nssdbm3.chk differ
Only in source/bin: removed-files
Binary files source/bin/softokn3.chk and target/bin/softokn3.chk differ
</pre>
 
 
</i>


==== Publish updates to beta channel  ====
==== Publish updates to beta channel  ====
Confirmed users
3,990

edits