Confirmed users
2,679
edits
(21 intermediate revisions by 2 users not shown) | |||
Line 126: | Line 126: | ||
# then push the builds back to stage (instructions on the signing doc) | # then push the builds back to stage (instructions on the signing doc) | ||
===== Resigning of af->fr (excluding en-US) ====== | |||
When restarting signing we should've been calling sign-release.pl with '-p' to make sure the en-US doesn't get signed again. Unfortunately, the 3.0.2 build notes (where we first had to do this) did not get updated properly. To correct this, we had to resign af->fr so all locales + en-US have the same bits inside. | |||
To do so, did the following: | |||
# delete af -> fr from signed-build1 | |||
cd ~/signing-work/firefox-3.0.3 | |||
cp signed-build1/*en-US* signed-build1-partial/ | |||
cp unsigned-build1/*en-US* unsigned-build1-partial/ | |||
# copied everything from af -> fr from unsigned-build1 to unsigned-build1-partial/ | |||
# NOTE THE '-p' ON THIS COMMAND | |||
perl ./signing/sign-release.pl -o signed-build${BUILD}-partial -M dir -d unsigned-build${BUILD}-partial -a ${PRODUCT} --release ${TAG} -p 2>&1 | tee -a win32_signing_build${BUILD}.log | |||
# to merge back together | |||
mv signed-build1-partial/* signed-build1/ | |||
# to verify all of internals are signed the same, did: | |||
mkdir ~/tmp | |||
cd ~/tmp | |||
cp ~/signing-work/firefox-3.0.3/signed-build1/*.exe . | |||
for i in *.exe; do ~/signing-utils/7-zip/7z x $i && FOO=`md5sum nonlocalized/ firefox.exe | awk '{print $1}'` && echo $i: $FOO | tee -a sums.log && rm -rf nonlocalized localized optional removed-files.log setup.exe; done | |||
NOTE: WE DID NOT SHIP THESE RESIGNED BUILDS | |||
====L10nVerify==== | ====L10nVerify==== | ||
Line 176: | Line 196: | ||
sys 1m41.298s | sys 1m41.298s | ||
$ | $ | ||
$ time ~/bin/pushsnip | $ time ~/bin/pushsnip 20080925-Firefox-3.0.3-beta | ||
real 2m15.445s | |||
user 0m0.341s | |||
sys 0m19.679s | |||
==== Sign Installers ==== | ==== Sign Installers ==== | ||
Line 182: | Line 205: | ||
* complete stage-merged: | * complete stage-merged: | ||
# on stage | # on stage | ||
cd /data/cltbld/firefox-3.0. | cd /data/cltbld/firefox-3.0.3/ | ||
rsync -av batch1/mar/ stage-merged/ | rsync -av batch1/mar/ stage-merged/ | ||
rsync -av batch1/stage-signed/ stage-merged/ | rsync -av batch1/stage-signed/ stage-merged/ | ||
* Create MD5 and SHA1 checksum files | * Create MD5 and SHA1 checksum files | ||
# on stage | # on stage | ||
cd /data/cltbld/firefox-3.0. | cd /data/cltbld/firefox-3.0.3/stage-merged/ | ||
~/bin/checksum-files . | ~/bin/checksum-files . | ||
* Fix permissions & ownership (on the two SUM files, and the detached sigs) | * Fix permissions & ownership (on the two SUM files, and the detached sigs) | ||
Line 199: | Line 222: | ||
* push the stage-merged directory to the releases area: | * push the stage-merged directory to the releases area: | ||
# on stage | # on stage | ||
rsync -av /data/cltbld/firefox-3.0. | rsync -av /data/cltbld/firefox-3.0.3/stage-merged/ /home/ftp/pub/firefox/releases/3.0.3/ | ||
* edit the exclude file /pub/mozilla.org/zz/rsyncd-mozilla-current.exclude to add the new release. | |||
** For this release, as FF3.0.2 was so recent, I've left FF3.0.2 in place as well. | |||
====Final Verification==== | ====Final Verification==== | ||
* Verify that releasetest points to valid bouncer links: | * Verify that releasetest points to valid bouncer links: | ||
# this can be run from anywhere | # this can be run from anywhere | ||
Line 211: | Line 237: | ||
* Look for any HTTP error codes besides 200 ("OK") and 302 ("Found"): | * Look for any HTTP error codes besides 200 ("OK") and 302 ("Found"): | ||
grep HTTP quickVerify.log | grep -v 200 | grep -v 302 | grep HTTP quickVerify.log | grep -v 200 | grep -v 302 | ||
** | * First testrun hit: | ||
** 85 occurrences of 404s | |||
** 11 occurrences of "500 Internal Server" errors. Disabled two mirror sites (mozilla-west.superbhosting.net, mozilla.xenoncore.net) until we contact them and figure this out. | |||
* Next testrun still had problems with mozilla-east.superbhosting.net. Disabled. | |||
* Next testrun returned totally clean! :-) | |||
* Before pushing final updates,verify that "release" and "releasetest" channel match: | * Before pushing final updates,verify that "release" and "releasetest" channel match: | ||
# on aus2-staging | # on aus2-staging | ||
$ cd | $ cd 20080925-Firefox-3.0.3 | ||
$ find -type d -iregex '.*release.*' | perl -nle '$a = $_; $a =~ s/release/releasetest/; system("diff -r -u $_ ../ | $ find -type d -iregex '.*release.*' | perl -nle '$a = $_; $a =~ s/release/releasetest/; system("diff -r -u $_ ../20080925-Firefox-3.0.3-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 formal "go", do: | While waiting for formal "go", do the following on aus2-staging: | ||
$ time ~/bin/backupsnip | $ cd /opt/aus2/snippets/staging | ||
real | $ time ~/bin/backupsnip 20080925-Firefox-3.0.3 | ||
user | real 44m41.791s | ||
sys | user 0m43.892s | ||
sys 1m33.340s | |||
$ | |||
$ time ~/bin/pushsnip 20080925-Firefox-3.0.3 | |||
(exact times lost with sudden need to block updates.) | |||
* QA found problem with url redirect for firstrun page, see {{bug|457328}}. This meant that all non en-US builds would get a broken url redirect to the firstrun page. | |||
** I turned off all updates using instructions above. | |||
** When redirects were fixed, and I turned back on updates, QA continued to not see updates, until I touched the /opt/aus2/incoming/3 directory. (Caused by {{bug|430737}}.) Immediately QA were able to see updates again. | |||
** I've updated "how to cancel/abort updates" instructions above with this extra step. | |||
====Release==== | ====Release==== | ||
* On stage.m.o, | * On stage.m.o, update "latest" symlinks | ||
$ cd /pub/mozilla.org/firefox/releases/ | $ cd /pub/mozilla.org/firefox/releases/ | ||
$ mv latest-3.0 latest-3.0.old | $ mv latest-3.0 latest-3.0.old | ||
$ ln -s 3.0. | $ ln -s 3.0.3 latest-3.0 | ||
$ rm latest-3.0.old | $ rm latest-3.0.old |