Confirmed users
4,293
edits
(Final steps) |
|||
| (23 intermediate revisions by 2 users not shown) | |||
| Line 50: | Line 50: | ||
|- | |- | ||
| [Windows installer] | | [Windows installer] | ||
| RC1: | | RC1:2008021305 | ||
| | | | ||
| | | | ||
| patrocles (cerberus-vm for l10n) | | patrocles (cerberus-vm for l10n) | ||
|- | |- | ||
| [Mac compressed] | | [Mac compressed] | ||
| RC1: | | RC1:2008021304 | ||
| | | | ||
| | | | ||
| Line 68: | Line 62: | ||
|- | |- | ||
| [Linux compressed] | | [Linux compressed] | ||
| RC1: 2008021305 | | RC1:2008021305 | ||
| | | | ||
| | | | ||
| Line 110: | Line 104: | ||
at the top of <tt>Bootstrap/Step/PatcherConfig.pm</tt>. Only need this on prometheus-vm anyway, which has it. | at the top of <tt>Bootstrap/Step/PatcherConfig.pm</tt>. Only need this on prometheus-vm anyway, which has it. | ||
===Tag=== | |||
On production-1.8-master in <tt>/builds/release</tt>: | |||
./release -o Tag 2>&1 | tee logs/release-Tag-RC1.log | |||
Had to come back to fix the 45 files in l10n/uk/editor, which had been tagged with MOZILLA_1_8_BRANCH by a localiser, rather than properly branched. The were all at rev 1.1 and had seen no changes on trunk, so it was straightforward to delete the existing tag, branch to MOZILLA_1_8_BRANCH, update to that, branch to the relbranch, and tag ..._RELEASE and ..._RC1. | |||
===Source=== | ===Source=== | ||
On production-1.8-master in <tt>/builds/release</tt>: | On production-1.8-master in <tt>/builds/release</tt>: | ||
./release -o Source 2>&1 | tee logs/release-Source-RC1.log | |||
===Build=== | ===Build=== | ||
| Line 127: | Line 125: | ||
===Repack=== | ===Repack=== | ||
On the tinderboxes in the table above, | |||
./release -o Repack -e 2>&1 | tee logs/release-Repack-Execute.log | |||
./release -o Repack -p 2>&1 | tee logs/release-Repack-Push.log | |||
./release -o Repack -a 2>&1 | tee logs/release-Repack-Announce.log | |||
Had to rerun Linux & Mac for the uk tagging issue (see above), but was able to manually checkout the files on the win32 box before it got to that locale. | |||
After win32 l10n, had to set cerberus-vm back to text mode | After win32 l10n, had to set cerberus-vm back to text mode | ||
mount -t -sc /cygdrive | mount -t -sc /cygdrive | ||
so that tinderbox would run. | so that tinderbox would run. This box was very slow, taking 7 hours to complete the repack. | ||
rsync -av stage. | |||
===Signing=== | |||
As per the [https://intranet.mozilla.org/Build:Signing doc]. | |||
===l10n-Verify=== | |||
Ran this on bm-xserve05, | |||
./release -o Repack -v 2>&1 | tee logs/release-Repack-Verify.log | |||
===Update Generation=== | |||
Generated on production-prometheus-vm, | |||
./release -o PatcherConfig 2>&1 | tee logs/release-PatcherConfig.log | |||
./release -o Updates -e 2>&1 | tee logs/release-Updates-Execute.log | |||
./release -o Updates -p 2>&1 | tee logs/release-Updates-Push.log | |||
Push dirs were 20080218-Thunderbird-2.0.0.12 (& -test & -beta) | |||
NB: DisableCompleteJump will need to be manually added to the rc block of the patcher config if we do an rc2, then regenerate the snippets. | |||
QA found a problem with the details url - {{bug|418450}}. So we fix the config and regenerate the snippets: | |||
cd /builds/updates/thunderbird-2.0.0.12/config | |||
cvs up | |||
cd ../patcher/temp/thunderbird/2.0.0.9-2.0.0.12 | |||
mkdir wrong-details-url | |||
mv aus2* wrong-details-url/ | |||
cd ../../.. | |||
./patcher2.pl --create-patchinfo --app=thunderbird \ | |||
--config=../config/moz18-branch-patcher2.cfg 2>&1 | tee thunderbird-create-patchinfo.log | |||
Do some quick verification | |||
cd temp/thunderbird/2.0.0.9-2.0.0.12 | |||
diff -r aus2.test/ wrong-details-url/aus2.test/ | less | |||
diff -r aus2.beta/ wrong-details-url/aus2.beta/ | less | |||
diff -r aus2/ wrong-details-url/aus2/ | less | |||
Only the detailsURL differs. | |||
Push to aus2-staging as 20080219-Thunderbird-2.0.0.12{-test,-beta,}, then manually push 20080219-Thunderbird-2.0.0.12-test live. | |||
===Update Verify=== | |||
Run on the tinderboxes | |||
./release -o Updates -v 2>&1 | tee logs/release-Updates-Verify.log | |||
On crazyhorse, verify failed because wget is too old. Removed <tt>--no-check-certificate</tt> argument in updates/verify.sh, common/download_mars.sh, and common/download_builds.sh, then reran. | |||
patrocles doesn't have wget, so used production-pacifica-vm instead - needed to modify the win32_logDir from /cygdrive/e/... to /cygdrive/c/... in the bootstrap config. | |||
Get expected FAIL's for 2.0b2/gu-IN/all platforms and 2.0b2/he/mac - no longer shipped. Also non-binary warnings for installed-chrome.txt and removed-files, which we no longer ignore. | |||
===Updates to Beta Channel=== | |||
After QA gives "ok" to push to beta channel, on aus2-staging do: | |||
# put snippets on beta | |||
$ screen | |||
$ sudo su - cltbld | |||
$ cd /opt/aus2/snippets/staging | |||
$ ~/bin/pushsnip 20080219-Thunderbird-2.0.0.12-beta | |||
===Stage=== | |||
On production-1.8-master | |||
./release -o Stage 2>&1 | tee logs/release-Stage.log | |||
Backed up /data/cltbld/bin/verify-locales.pl before running this, and modified the three regex's on the file name (firefox -> thunderbird, Firefox -> Thunderbird). This is {{bug|409232}}. | |||
===Sign Installers=== | |||
* ''NOTE'' - production-1.8-master is not used from here on | |||
* pull stage:/data/cltbld/thunderbird-2.0.0.12/batch1/stage-signed/ to signing machine | |||
* follow 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/thunderbird-2.0.0.12/ | |||
rsync -av batch1/mar/ stage-merged/ | |||
rsync -av batch1/stage-signed/ stage-merged/ | |||
* Create MD5 and SHA1 checksum files | |||
# on stage | |||
cd /data/cltbld/thunderbird-2.0.0.12/stage-merged/ | |||
~/bin/checksum-files . | |||
* Fix permissions & ownership (on the two SUM files, and the detached sigs) | |||
chown -R cltbld:thunderbird . | |||
chmod 644 *SUMS | |||
===Release=== | |||
* get the last formal "go" from QA/Dev/website/IT/release-drivers | |||
* push the stage-merged directory to the releases area (had to create target dir as root first): | |||
# on stage | |||
rsync -av /data/cltbld/thunderbird-2.0.0.12/stage-merged/ /home/ftp/pub/thunderbird/releases/2.0.0.12/ | |||
* After pushing live, move forward the "latest" and "latest-2.0" symlinks. | |||
cd /home/ftp/pub/thunderbird/releases/ | |||
rm latest | |||
ln -s 2.0.0.12 latest | |||
rm latest-2.0 | |||
ln -s 2.0.0.12 latest-2.0 | |||
* Update stage:/etc/rsyncd-mozilla-current.exclude - not critical that this happens immediately. | |||
===Update Bouncer=== | |||
* Add entries to download.mozilla.org | |||
===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-thunderbird-*.cfg | sed 's/betatest/releasetest/' > 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/20080219-Thunderbird-2.0.0.12 | |||
find -type d -iregex '.*release.*' | perl -nle '$a = $_; $a =~ s/release/releasetest/; system("diff -r -u $_ ../20080219-Thunderbird-2.0.0.12-test/$a");' | |||
===Enable update channel=== | |||
* Wait for QA to finish testing update snippets on releasetest channel, then enable update snippets on release channel | |||
# on aus2-staging | |||
# put snippets on release/live channel | |||
$ screen | |||
$ sudo su - cltbld | |||
$ cd /opt/aus2/snippets/staging | |||
$ ~/bin/pushsnip 20080219-Thunderbird-2.0.0.12 | |||