Confirmed users
4,293
edits
mNo edit summary |
(Null snippets) |
||
| Line 4: | Line 4: | ||
= Bugs = | = Bugs = | ||
{{bug|470521}} - tracking bug<br /> | {{bug|470521}} - tracking bug<br /> | ||
{{bug|472079}} - nulls for partners | |||
= Generate Major Update Snippets = | = Generate Major Update Snippets = | ||
| Line 195: | Line 195: | ||
user 0m0.006s | user 0m0.006s | ||
sys 0m0.383s | sys 0m0.383s | ||
=Generate Null Partner Snippets= | |||
== Create snippets == | |||
Starting from [https://bugzilla.mozilla.org/attachment.cgi?id=355355 attachment 355355], we create empty snippets to block partner builds from updating. | |||
# ssh cltbld@prometheus-vm.build.mozilla.org | |||
cd /builds/2.0.0.20-major-update/snippets/patcher/ | |||
# get a copy of https://bugzilla.mozilla.org/attachment.cgi?id=355355 ... | |||
# and save as partner-update-channels | |||
# checkout out null_partners.sh and update versions and buildIDs | |||
cd temp/firefox/2.0.0.20-3.0.5 | |||
bash ../../../one-offs/null_partners.sh ../../../partner-update-channels | |||
NB: going to do the release-* and releasetest-* snippets this time, since there are no users on beta or betatest. releasetest-* will be used to check the nulls work properly. | |||
We have to munge the Yahoo snippets because more than distribution is on the same channel but not all have a MU live at present | |||
rm -vr aus2.null/Firefox/2.0.0.20/WINNT_x86-msvc/2008121709/{ko,zh-CN,zh-TW,en-US}/release*-cck-yahoo | |||
Now check there are no vanilla snippets in there [no extended regexp in find :-(] | |||
find aus2.null -regex '.*/release/.*' | |||
find aus2.null -regex '.*/releasetest/.*' | |||
find aus2.null -regex '.*/beta/.*' | |||
find aus2.null -regex '.*/betatest/.*' | |||
and that releasetest == release | |||
find aus2.null -type d -iregex '.*release-.*' | perl -nle '$a = $_; $a =~ s/release/releasetest/; system("diff -r -u $_ $a");' | |||
find aus2.null -type d -iregex '.*releasetest-.*' | perl -nle '$a = $_; $a =~ s/releasetest/release/; system("diff -r -u $_ $a");' | |||
== Push to AUS server == | |||
rsync -e 'ssh -i /home/cltbld/.ssh/aus' -av aus2.null/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20090104-Firefox-2.0.0.20-3.0.5-MU-partner-null | |||
== Push live == | |||
# cltbld@aus2-staging | |||
~/bin/backupsnip 20090104-Firefox-2.0.0.20-3.0.5-MU-partner-null | |||
~/bin/pushsnip 20090104-Firefox-2.0.0.20-3.0.5-MU-partner-null | |||
Adds 23904 files to the 78718 already present, so there will be a ~ 30% time increase for future backups. We can remove the releasetest blocks later to save half of this. | |||
== Verify nulls == | |||
Create a list of URLs to test | |||
cd /builds/2.0.0.20-major-update/snippets/one-offs | |||
Generate platform-specific locale lists | |||
ls ../temp/firefox/2.0.0.20-3.0.5/aus2/Firefox/2.0.0.20/WINNT_x86-msvc/2008121709/ > locales-win32.txt | |||
ls ../temp/firefox/2.0.0.20-3.0.5/aus2/Firefox/2.0.0.20/Darwin_Universal-gcc3/2008121709/ > locales-mac.txt | |||
ls ../temp/firefox/2.0.0.20-3.0.5/aus2/Firefox/2.0.0.20/Linux_x86-gcc3/2008121709/ > locales-linux.txt | |||
Update the version & BuildID in create_aus_urls-{linux,mac,win32}.sh, then | |||
ln -s ../partner-update-channels | |||
./create_aus_urls-linux.sh | |||
./create_aus_urls-mac.sh | |||
./create_aus_urls-win32.sh | |||
Run tests for win32 | |||
./test_null_updates.sh urls-win32.txt 2>&1 | tee test-nulls-win32.txt | |||
grep -v '^PASS' test-nulls-win32.txt | |||
FAIL https://aus2.mozilla.org/update/1/Firefox/2.0.0.20/2008121709/WINNT_x86-msvc/en-US/releasetest-cck-yahoo/update.xml | |||
FAIL https://aus2.mozilla.org/update/1/Firefox/2.0.0.20/2008121709/WINNT_x86-msvc/ko/releasetest-cck-yahoo/update.xml | |||
FAIL https://aus2.mozilla.org/update/1/Firefox/2.0.0.20/2008121709/WINNT_x86-msvc/zh-CN/releasetest-cck-yahoo/update.xml | |||
FAIL https://aus2.mozilla.org/update/1/Firefox/2.0.0.20/2008121709/WINNT_x86-msvc/zh-TW/releasetest-cck-yahoo/update.xml | |||
Which is expected, those MU are live and therefore non-null info returned. Repeat for each other two platforms, get no failures. | |||
Checked in null_partners.sh, create_aus_urls-{linux,mac,win32}.sh | |||
<font color=red size=4>DONE TO HERE</font> | <font color=red size=4>DONE TO HERE</font> | ||
= | =Enable release snippets= | ||
# cltbld@aus2-staging | |||
date; time ~/bin/backupsnip 20081219-Firefox-2.0.0.20-3.0.5-MU | |||
time ~/bin/pushsnip 20081219-Firefox-2.0.0.20-3.0.5-MU | |||
= | =Remove nulls= | ||
If we should ship a Firefox 2.0.0.21 then we should remove the nulls. | |||