Releases/Firefox 2.0.0.15:BuildNotes: Difference between revisions

 
(40 intermediate revisions by 2 users not shown)
Line 43: Line 43:
| rowspan="1" | cvsroot/mozilla
| rowspan="1" | cvsroot/mozilla
| GECKO181_20080612_RELBRANCH
| GECKO181_20080612_RELBRANCH
| FIREFOX_2_0_0_15_BUILD2 FIREFOX_2_0_0_15_RELEASE
| FIREFOX_2_0_0_15_BUILD2
| N/A
| N/A
|-
|-
| rowspan="1" | l10n/l10n
| rowspan="1" | l10n/l10n
| GECKO181_20080612_RELBRANCH
| GECKO181_20080612_RELBRANCH
| FIREFOX_2_0_0_15_BUILD2 FIREFOX_2_0_0_15_RELEASE
| FIREFOX_2_0_0_15_BUILD2
| N/A
| N/A
|}
|}
Line 81: Line 81:
|-
|-
| [Windows installer/zip]
| [Windows installer/zip]
|
| 2008062306
|
|
|  
|  
Line 87: Line 87:
|-
|-
| [Mac compressed]
| [Mac compressed]
|  
| 2008062305
|  
|  
|  
|  
Line 93: Line 93:
|-
|-
| [Linux compressed]
| [Linux compressed]
|  
| 2008062305
|  
|  
|  
|  
Line 109: Line 109:
** Turned off the nightly builders on production-1.8-master to make sure they don't interfere with the release. (We need to figure out how to avoid this in the future).
** Turned off the nightly builders on production-1.8-master to make sure they don't interfere with the release. (We need to figure out how to avoid this in the future).
** update mozilla1.8 tinderbox to say "no nightlies right now"
** update mozilla1.8 tinderbox to say "no nightlies right now"
** Updated /builds/tinderbox/mozilla/tools/tinderbox to automation tag on all slaves
** Ran 'buildbot reconfig'
** Ran 'buildbot reconfig'
* update /builds/tinderbox/mozilla/tools/tinderbox to the Bootstrap tag (need to revert this before restarting nightlies)
* update /builds/tinderbox/mozilla/tools/tinderbox to the Bootstrap tag (need to revert this before restarting nightlies)
Line 189: Line 188:


====Sign Installers====
====Sign Installers====
* Had to manually delete old asc files from build2 installer signing:
# On stage
cd /data/cltbld/firefox-2.0.0.15/batch1/stage-signed
find . -iname "*.asc" -exec rm {} \;


* Done manually using these installer-signing-instructions [https://intranet.mozilla.org/Build:Unified_Release_Process#Sign_builds here]
* Done manually using these installer-signing-instructions [https://intranet.mozilla.org/Build:Unified_Release_Process#Sign_builds here]
Line 205: Line 208:
  chmod 644 *SUMS
  chmod 644 *SUMS


====Update Bouncer====
'''Stop for respin'''
 
==== Push to mirrors ====
 
====Final Verification====
 
==== Publish Updates to Release Channel ====
 
====Release====
 
====Free Software Builds====
* Bump the BuildTag definition in the three tinder-config.pl, [http://bonsai.mozilla.org/cvsquery.cgi?treeid=default&module=all&branch=MOZILLA_1_8_BRANCH_release_free_software&branchtype=regexp&dir=mozilla%2Ftools%2Ftinderbox-configs%2F&file=&filetype=match&who=&whotype=match&sortby=Date&hours=2&date=day&mindate=2008-02-07+08%3A00&maxdate=2008-02-07+08%3A45&cvsroot=%2Fcvsroot like this]
 
* Done on production machines:
** production-pacifica-vm (win32)
** bm-xserve05 (macosx)
** production-prometheus-vm (linux)
 
* Start builds:
cd /builds/tinderbox/Fx-Mozilla1.8-FS
./build-seamonkey.pl --once --depend --config-cvsup-dir `pwd`/tinderbox-configs/ 2>&1 | tee FIREFOX_2_0_0_15_FS.log
 
* Stage:
# as cltbld@stage
mkdir -p ~/firefox-2.0.0.15-fs/batch1/prestage
cd ~/firefox-2.0.0.15-fs/batch1
# rsync from push dirs
rsync -av /home/ftp/pub/firefox/nightly/2008-06-13-11-mozilla1.8-fs/ ./prestage/
rsync -av /home/ftp/pub/firefox/nightly/2008-06-13-12-mozilla1.8-fs/ ./prestage/
rsync -av /home/ftp/pub/firefox/nightly/2008-06-16-05-mozilla1.8-fs/ ./prestage/
rsync -av prestage/ prestage-trimmed/
rm -v prestage-trimmed/*.zip
rsync -av prestage-trimmed/ stage/
cd stage
~/bin/groom-files --long="2.0.0.14.fs" .
chown -R cltbld:firefox * .
find . -type f -exec chmod -v 644 {} \;
find . -type d -exec chmod -v 755 {} \;
cd ../


===Build 3===
===Build 3===
Line 266: Line 231:


====L10nVerify====
====L10nVerify====
Two things of note:
* {{bug|351476}} changed the line endings on a bunch of files. This caused some spurious output.
* production-prometheus-vm had its kernel bumped. A preprocessed JS file in each package contains the kernel version, which obviously changed between 2.0.0.14 and 2.0.0.15, and caused more spurious output.


====Generate Updates====
====Generate Updates====
* backupsnip took 34 minutes
* No problems
=====Updates for 2.0.0.15build2 to 2.0.0.15build3=====
* Used this patcher config: https://bugzilla.mozilla.org/attachment.cgi?id=326467
* Ran the following on production-prometheus-vm:
export CVSROOT=":ext:cltbld@cvs.mozilla.org:/cvsroot"
cvs co -d patcher mozilla/tools/patcher
cd patcher
cvs co -d MozBuild mozilla/tools/release/MozBuild
cd ../
wget https://bugzilla.mozilla.org/attachment.cgi?id=326467
mv attachment.cgi?id=326467 moz18-branch-2.0.0.15build2-to-build3.cfg
cd patcher
./patcher2.pl --app=firefox --config=../moz18-branch-2.0.0.15build2-to-build3.cfg --build-tools --tools-revision=UPDATE_PACKAGING_R4
./patcher2.pl --app=firefox --config=../moz18-branch-2.0.0.15build2-to-build3.cfg --download | tee ../firefox2.0.0.15build2-to-build3-download.log
./patcher2.pl --app=firefox --config=../moz18-branch-2.0.0.15build2-to-build3.cfg --create-patches --partial-patchlist-file=patchlist.cfg | tee ../firefox2.0.0.15build2-to-build3-create-patches.log
rsync -av -e 'ssh -i ~/.ssh/aus' temp/firefox/2.0.0.15build2-2.0.0.15build3/aus2/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20080624-Firefox-2.0.0.15build2-to-build3
rsync -av -e 'ssh -i ~/.ssh/aus' temp/firefox/2.0.0.15build2-2.0.0.15build3/aus2.beta/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20080624-Firefox-2.0.0.15build2-to-build3-beta
rsync -av -e 'ssh -i ~/.ssh/aus' temp/firefox/2.0.0.15build2-2.0.0.15build3/aus2.test/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20080624-Firefox-2.0.0.15build2-to-build3-test
Partials created here were invalid because DisableCompleteJump was set. Tried a few things to fix this, but couldn't. nthomas suspects it is because the version is the same. To work around, all partial.txt files were deleted so force aus to fallback on complete.txt.
On aus2-staging:
cd /opt/aus2/snippets/staging
cp -R 20080624-Firefox-2.0.0.15build2-to-build3 20080624-Firefox-2.0.0.15build2-to-build3-with-partials
find 20080624-Firefox-2.0.0.15build2-to-build3/ -iname partial.txt -exec rm {} \;
cp -R 20080624-Firefox-2.0.0.15build2-to-build3-beta 20080624-Firefox-2.0.0.15build2-to-build3-beta-with-partials
find 20080624-Firefox-2.0.0.15build2-to-build3-beta/ -iname partial.txt -exec rm {} \;
cp -R 20080624-Firefox-2.0.0.15build2-to-build3-test 20080624-Firefox-2.0.0.15build2-to-build3-test-with-partials
find 20080624-Firefox-2.0.0.15build2-to-build3-test/ -iname partial.txt -exec rm {} \;
Ran backupsnip and pushsnip for test channels:
~/bin/backupsnip 20080624-Firefox-2.0.0.15build2-to-build3-test
~/bin/pushsnip 20080624-Firefox-2.0.0.15build2-to-build3-test
Backupsnip took approx. 40 minutes.
Ran backupsnip on beta && release snippets:
-bash-3.2$ time ~/bin/backupsnip 20080624-Firefox-2.0.0.15build2-to-build3-beta
Running /bin/tar cfvj /opt/aus2/snippets/backup/20080624-2-pre-20080624-Firefox-2.0.0.15build2-to-build3-beta.tar.bz2 .
real 33m58.907s
user 0m21.440s
sys 0m28.649s
-bash-3.2$ time ~/bin/backupsnip 20080624-Firefox-2.0.0.15build2-to-build3
Running /bin/tar cfvj /opt/aus2/snippets/backup/20080624-3-pre-20080624-Firefox-2.0.0.15build2-to-build3.tar.bz2 .
real 32m36.029s
user 0m21.309s
sys 0m28.029s


====Publish Updates to Test Channels (betatest & releasetest)====
====Publish Updates to Test Channels (betatest & releasetest)====
* No problems


====Update Verify====
====Update Verify====
* No problems


====Stage====
====Stage====
* No problems


====Push Updates to Beta Channels====
====Push Updates to Beta Channels====
Two pushes here, one for 2.0.0.14 -> 2.0.0.15build3, one for 2.0.0.15build2 -> 2.0.0.15build3.
~/bin/pushsnip 20080623-Firefox-2.0.0.15-beta
~/bin/pushsnip 20080624-Firefox-2.0.0.15build2-to-build3-beta


====Sign Installers====
====Sign Installers====
* Done manually using these installer-signing-instructions [https://intranet.mozilla.org/Build:Unified_Release_Process#Sign_builds here]
* push signed bits back to same location on stage
* complete stage-merged:
# on stage
cd /data/cltbld/firefox-2.0.0.15/
rsync -av batch1/mar/ stage-merged/
rsync -av batch1/stage-signed/ stage-merged/
* Create MD5 and SHA1 checksum files
# on stage
cd /data/cltbld/firefox-2.0.0.15/stage-merged/
~/bin/checksum-files .
* Fix permissions & ownership (on the two SUM files, and the detached sigs)
chown -R cltbld:firefox .
chmod 644 *SUMS
# extra verification to make sure no build2 files are still here
find . -mtime +2
./contrib
./contrib-localized
# it's okay for those to have old modification dates


====Update Bouncer====
====Update Bouncer====
* Manually added entries to download.mozilla.org
==== Add release to rsync module ====
On stage.mozilla.org, add the new release to the smaller, faster, rsync module:
# on stage (as cltbld)
cd /pub/mozilla.org/zz/
vi rsyncd-mozilla-current.exclude
and replace the previous latest release (FF2.0.0.14) with:
+ firefox/releases/2.0.0.15
+ firefox/releases/2.0.0.15/**


==== Push to mirrors ====
==== Push to mirrors ====
* get the last formal "go" from QA/Dev/website/IT/release-drivers
* push the stage-merged directory to the releases area:
# on stage (as cltbld)
rsync -av /data/cltbld/firefox-2.0.0.15/stage-merged/ /home/ftp/pub/firefox/releases/2.0.0.15/


====Final Verification====
====Final Verification====
* Verify that releasetest points to valid bouncer links:
# this can be run from anywhere
cvs co mozilla/testing/release
cd mozilla/testing/release/updates
cat moz18-firefox-*.cfg | grep -v major | sed 's/betatest/releasetest/' | grep -v 2.0a | grep -v 2.0b > update.cfg
./verify.sh -t update.cfg 2>&1 | tee quickVerify.log
* Look for any HTTP error codes besides 200 ("OK") and 302 ("Found"):
grep HTTP quickVerify.log | grep -v 200 | grep -v 302
* Before pushing final updates,verify that "release" and "releasetest" channel match:
# on aus2-staging
cd /opt/aus2/snippets/staging/20080623-Firefox-2.0.0.15
find -type d -iregex '.*release.*' | perl -nle '$a = $_; $a =~ s/release/releasetest/; system("diff -r -u $_ ../20080623-Firefox-2.0.0.15-test/$a");'


==== Publish Updates to Release Channel ====
==== Publish Updates to Release Channel ====
* '''In case you need to cancel/abort updates, the quickest way to do this is [https://intranet.mozilla.org/Build:Updates here]'''
* While waiting for QA to finish testing, do a backup:
  # on aus2-staging
  # put snippets on release/live channel
  $ cd /opt/aus2/snippets/staging
  $ sudo su - cltbld
  $ time ~/bin/backupsnip 20080623-Firefox-2.0.0.15
real    33m19.706s
user    0m22.414s
sys    0m33.259s
* After QA finished testing the releasetest channel, enabled release channel:
  # on aus2-staging
  # put snippets on release/live channel
  $ cd /opt/aus2/snippets/staging
  $ sudo su - cltbld
  $ time ~/bin/pushsnip 20080623-Firefox-2.0.0.15
* ''VERIFYFIX: Had to chmod +x ~/bin/pushsnip


====Release====
====Release====


====Free Software Builds====
====Free Software Builds====
* Bump the BuildTag definition in the three tinder-config.pl, [http://bonsai.mozilla.org/cvsquery.cgi?treeid=default&module=all&branch=MOZILLA_1_8_BRANCH_release_free_software&branchtype=regexp&dir=mozilla%2Ftools%2Ftinderbox-configs%2F&file=&filetype=match&who=&whotype=match&sortby=Date&hours=2&date=day&mindate=2008-02-07+08%3A00&maxdate=2008-02-07+08%3A45&cvsroot=%2Fcvsroot like this]
* Done on production machines:
** production-pacifica-vm (win32)
** bm-xserve05 (macosx)
** production-prometheus-vm (linux)
* Start builds:
cd /builds/tinderbox/Fx-Mozilla1.8-FS
./build-seamonkey.pl --once --depend --config-cvsup-dir `pwd`/tinderbox-configs/ 2>&1 | tee FIREFOX_2_0_0_15build3_FS.log
* Stage
# as cltbld@stage
mkdir -p ~/firefox-2.0.0.15-fs/batch1/prestage
cd ~/firefox-2.0.0.15-fs/batch1
# rsync from push dirs
rsync -av /home/ftp/pub/firefox/nightly/2008-06-26-05-mozilla1.8-fs/ ./prestage/
rsync -av /home/ftp/pub/firefox/nightly/2008-06-26-06-mozilla1.8-fs/ ./prestage/
rsync -av prestage/ prestage-trimmed/
rm -v prestage-trimmed/*.zip
rsync -av prestage-trimmed/ stage/
cd stage
~/bin/groom-files --long="2.0.0.15.fs" .
chown -R cltbld:firefox * .
find . -type f -exec chmod -v 644 {} \;
find . -type d -exec chmod -v 755 {} \;
cd ../
rsync -av stage/ /home/ftp/pub/firefox/releases/2.0.0.15/contrib/free-software/
canmove, Confirmed users
6,439

edits