Releases/Firefox 2.0.0.16:BuildNotes: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
 
(21 intermediate revisions by the same user not shown)
Line 20: Line 20:
| rowspan="1" | cvsroot/mozilla
| rowspan="1" | cvsroot/mozilla
| MOZILLA_1_8_BRANCH
| MOZILLA_1_8_BRANCH
| FIREFOX_2_0_0_16_BUILD1
| FIREFOX_2_0_0_16_BUILD1<br /> GECKO181_20080612_RELBRANCH
| 2008-07-02 02:13 PDT
| 2008-07-02 02:13 PDT
|-
|-
| rowspan="1" | l10n/l10n
| rowspan="1" | l10n/l10n
| MOZILLA_1_8_BRANCH
| MOZILLA_1_8_BRANCH
| FIREFOX_2_0_0_16_BUILD1
| FIREFOX_2_0_0_16_BUILD1<br /> GECKO181_20080612_RELBRANCH
| 2008-07-02 02:13 PDT
| 2008-07-02 02:13 PDT
|}
|}
Line 98: Line 98:


====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====
-bash-3.2$ time ~/bin/backupsnip 20080703-Firefox-2.0.0.16-beta
Running /bin/tar cfvj /opt/aus2/snippets/backup/20080703-3-pre-20080703-Firefox-2.0.0.16-beta.tar.bz2 .
real 28m28.028s
user 0m23.019s
sys 0m34.685s
~/bin/pushsnip 20080703-Firefox-2.0.0.16-beta


====Sign Installers====
====Sign Installers====
Done manually using these installer-signing-instructions [https://intranet.mozilla.org/Build:Unified_Release_Process#Sign_builds here]
* complete stage-merged:
# on stage
cd /data/cltbld/firefox-2.0.0.16/
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.16/stage-merged/
~/bin/checksum-files .
* Fix permissions & ownership (on the two SUM files, and the detached sigs)
chown -R cltbld:firefox .
chmod 644 *SUMS


====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.15) with:
+ firefox/releases/2.0.0.16
+ firefox/releases/2.0.0.16/**


==== Push to mirrors ====
==== Push to mirrors ====
* push the stage-merged directory to the releases area:
# on stage (as cltbld)
rsync -av /data/cltbld/firefox-2.0.0.16/stage-merged/ /home/ftp/pub/firefox/releases/2.0.0.16/


====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/20080703-Firefox-2.0.0.16
find -type d -iregex '.*release.*' | perl -nle '$a = $_; $a =~ s/release/releasetest/; system("diff -r -u $_ ../20080703-Firefox-2.0.0.16-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:
  # as cltbld on aus2-staging.mozilla.org
  $ cd /opt/aus2/snippets/staging
  $ time ~/bin/backupsnip 20080703-Firefox-2.0.0.16
real 34m11.108s
user 0m22.534s
sys 0m32.862s


====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_16build1_FS.log
* Stage
# as cltbld@stage
mkdir -p ~/firefox-2.0.0.16-fs/batch1/prestage
cd ~/firefox-2.0.0.16-fs/batch1
# rsync from push dirs
rsync -av /home/ftp/pub/firefox/nightly/2008-07-03-07-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.16.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.16/contrib/free-software/

Latest revision as of 21:46, 16 July 2008

Build Engineers

bhearsum
Version/config bump bug

Bonsai queries

Build 1: http://bonsai.mozilla.org/cvsquery.cgi?treeid=default&module=AviarySuiteBranchTinderbox&branch=HEAD&branchtype=match&dir=&file=&filetype=match&who=&whotype=match&sortby=Date&hours=2&date=explicit&mindate=2008-07-02+01%3A49+PDT&maxdate=2008-07-02+01%3A51+PDT&cvsroot=%2Fcvsroot

Tags

Updated CVS Tags devmo page.

Build 1:

Module Branch Tag Pull date
cvsroot/mozilla MOZILLA_1_8_BRANCH FIREFOX_2_0_0_16_BUILD1
GECKO181_20080612_RELBRANCH
2008-07-02 02:13 PDT
l10n/l10n MOZILLA_1_8_BRANCH FIREFOX_2_0_0_16_BUILD1
GECKO181_20080612_RELBRANCH
2008-07-02 02:13 PDT

Build data

Type Build ID SHA1 Push date Build machine
[Windows installer/zip] 2008070205 production-pacifica-vm
[Mac compressed] 2008070205 bm-xserve05
[Linux compressed] 2008070204 production-prometheus-vm

Notes

Build 1

Bootstrap tag: RELEASE_AUTOMATION_M10 Setup before starting:

  • Updated /builds/buildbot/Automation/buildbot-configs on production-1.8-master.
    • master.cfg is "Locally Modified" to contain passwords. Identical to repository version otherwise.
    • 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"
    • Ran 'buildbot reconfig'
  • update /builds/tinderbox/mozilla/tools/tinderbox to the Bootstrap tag (need to revert this before restarting nightlies)
    • Had to tag this first. It was missed when RELEASE_AUTOMATION_M10 was created.
  • ensure that machines have enough resources
    • production-prometheus-vm - 32G on /
    • production-1.8-master - 11G on /builds, 4G on /data
    • production-pacifica-vm - 33.4G on c:
    • bm-xserve05 - 32G on /

Tag

Automated, no problems.

Source

Automated, no problems.

Build

Automated, no problems.

Repack

No problems

Sign

  • Signing doc
  • Accidentally ran 'find . -size +10000 -exec rm {} \;' in ~/signing-work while signing 2.0.0.16. This command deleted a ton of old builds, and broke the 2.0.0.16 signing. Had to restart signing from the beginning.

L10nVerify

No changes

Generate Updates

  • No problems.

Publish Updates to Test Channels (betatest & releasetest)

No problems

Update Verify

No problems

Stage

No problems

Push Updates to Beta Channels

-bash-3.2$ time ~/bin/backupsnip 20080703-Firefox-2.0.0.16-beta
Running /bin/tar cfvj /opt/aus2/snippets/backup/20080703-3-pre-20080703-Firefox-2.0.0.16-beta.tar.bz2 .

real	28m28.028s
user	0m23.019s
sys	0m34.685s
~/bin/pushsnip 20080703-Firefox-2.0.0.16-beta

Sign Installers

Done manually using these installer-signing-instructions here

  • complete stage-merged:
# on stage
cd /data/cltbld/firefox-2.0.0.16/
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.16/stage-merged/
~/bin/checksum-files .
  • Fix permissions & ownership (on the two SUM files, and the detached sigs)
chown -R cltbld:firefox .
chmod 644 *SUMS

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.15) with:

+ firefox/releases/2.0.0.16
+ firefox/releases/2.0.0.16/**

Push to mirrors

  • push the stage-merged directory to the releases area:
# on stage (as cltbld)
rsync -av /data/cltbld/firefox-2.0.0.16/stage-merged/ /home/ftp/pub/firefox/releases/2.0.0.16/


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/20080703-Firefox-2.0.0.16
find -type d -iregex '.*release.*' | perl -nle '$a = $_; $a =~ s/release/releasetest/; system("diff -r -u $_ ../20080703-Firefox-2.0.0.16-test/$a");'

Publish Updates to Release Channel

  • In case you need to cancel/abort updates, the quickest way to do this is here
  • While waiting for QA to finish testing, do a backup:
 # as cltbld on aus2-staging.mozilla.org
 $ cd /opt/aus2/snippets/staging
 $ time ~/bin/backupsnip 20080703-Firefox-2.0.0.16
real	34m11.108s
user	0m22.534s
sys	0m32.862s

Release

Free Software Builds

  • Bump the BuildTag definition in the three tinder-config.pl, 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_16build1_FS.log
  • Stage
# as cltbld@stage
mkdir -p ~/firefox-2.0.0.16-fs/batch1/prestage
cd ~/firefox-2.0.0.16-fs/batch1
# rsync from push dirs
rsync -av /home/ftp/pub/firefox/nightly/2008-07-03-07-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.16.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.16/contrib/free-software/