Build:Releases:Firefox:2-3 MajorUpdateTest
Contents
Build Engineers
nthomas (cf)
From 2.0.0.11 to 3.0b2
The first iteration.
Repack mar
A few packaging problems were discovered in applying the stock 3.b2 complete mars to en-US 2.0.0.11 installs. To fix this for b3, removed-files.in and the package-static files were adjusted. To let the current test continue asap, the 3.0b2 mars were repacked. Full details are in the bug, with the scripts and logs in this tgz. The repack was done on fx-linux-1.9-slave2 in ~cltbld/cf/
Generate updates
# ssh cltbld@fx-linux-1.9-slave2.mozilla.org (prod 1.9 box) mkdir /builds/updates/firefox-20011-3b2-fake-major/ cd /builds/updates/firefox-20011-3b2-fake-major/ cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d patcher mozilla/tools/patcher # check out MozBuild cd patcher cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d MozBuild mozilla/tools/release/MozBuild cd .. # config now lives in public repo cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d config mozilla/tools/patcher-configs/moz18-branch-major-update-patcher2.cfg cd patcher export CVSROOT=cltbld@cvs.mozilla.org:/cvsroot # build tools, NB no --tools-rev as tip of patcher was busted against # the traditional MOZILLA_1_9a2_RELEASE tag ./patcher2.pl --build-tools --app=firefox \ --config=../config/moz18-branch-major-update-patcher2.cfg 2>&1 | tee firefox_build-tools.log # download complete MARs # FIXME - we only really need to "to" mars, not the "from" mars, but there must be "from" # mars present for patcher to build the patchinfo ./patcher2.pl --download --app=firefox \ --config=../config/moz18-branch-major-update-patcher2.cfg 2>&1 | tee firefox_download.log # FIXME - patcher needs to see that the MARs that it thinks are partials # are there or else it will not attempt to generate patchinfo cd temp/firefox ln -s 3.0b2 2.0.0.11-3.0b2 cd ../.. # Create partial patches and snippets ./patcher2.pl --create-patches --app=firefox \ --config=../config/moz18-branch-major-update-patcher2.cfg 2>&1 | tee firefox-create-patches.log
Push these to the aus staging box as 20080111-Fx2-3MUTest.
Verify updates
On fx-win32-1.9-slave2, fx-mac-1.9-slave2, fx-linux-1.9-slave2, do
mkdir -p /builds/verify/firefox-20011-3b2-fake-major/ cd /builds/verify/firefox-20011-3b2-fake-major/ cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d updates mozilla/testing/release/updates/ cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d common mozilla/testing/release/common/ cd updates ./verify.sh -c moz18-firefox-$platform-major.cfg 2>&1 | tee $platform.log
Hand off to QA for testing. Further snippets testing and partner specific steps were done for Fx1.5.0.12 --> 2.0.0.6 update.
From 2.0.0.12 to 3.0b3
The second iteration, to test what other packaging fixes we need ahead of b4.
Generate updates
# ssh cltbld@fx-linux-1.9-slave2 (prod 1.9 box) mkdir /builds/updates/firefox-20012-3b3-fake-major/ cd /builds/updates/firefox-20012-3b3-fake-major/ cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d patcher -r UPDATE_PACKAGING_R1 mozilla/tools/patcher # check out MozBuild cd patcher cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d MozBuild -r UPDATE_PACKAGING_R1 mozilla/tools/release/MozBuild cd .. # config now lives in public repo cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d config mozilla/tools/patcher-configs/moz18-branch-major-update-patcher2.cfg # apply patch waiting for review cd config curl -s https://bugzilla.mozilla.org/attachment.cgi?id=304201 | patch -p0 cd .. cd patcher export CVSROOT=cltbld@cvs.mozilla.org:/cvsroot # build tools ./patcher2.pl --build-tools --app=firefox --tools-rev=UPDATE_PACKAGING_R1 \ --config=../config/moz18-branch-major-update-patcher2.cfg 2>&1 | tee firefox_build-tools.log # download complete MARs # FIXME - we only really need to "to" mars, not the "from" mars, but there must be "from" # mars present for patcher to build the patchinfo ./patcher2.pl --download --app=firefox \ --config=../config/moz18-branch-major-update-patcher2.cfg 2>&1 | tee firefox_download.log # FIXME - patcher needs to see that the MARs that it thinks are partials # are there or else it will not attempt to generate patchinfo cd temp/firefox ln -s 3.0b3 2.0.0.12-3.0b3 cd ../.. # Create partial patches and snippets ./patcher2.pl --create-patches --app=firefox \ --config=../config/moz18-branch-major-update-patcher2.cfg 2>&1 | tee firefox-create-patches.log
Push aus2.test to the AUS staging box as 20080219-Fx20012-3b3-MU-test, do manual snippet verifications, and push live.
Verify updates
On fx-win32-1.9-slave2, fx-mac-1.9-slave2, fx-linux-1.9-slave2, do
mkdir -p /builds/verify/firefox-20012-3b3-fake-major/ cd /builds/verify/firefox-20012-3b3-fake-major/ cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d updates mozilla/testing/release/updates/ cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d common mozilla/testing/release/common/ cd updates # apply patch awaiting review curl -s https://bugzilla.mozilla.org/attachment.cgi?id=304202 | patch -p0 ./verify.sh -c moz18-firefox-$platform-major.cfg 2>&1 | tee $platform.log
From 2.0.0.12 to 3.0b4
The third iteration, to test what other packaging fixes we need ahead of b5.
Generate updates
# ssh cltbld@fx-linux-1.9-slave2 (prod 1.9 box) mkdir /builds/updates/firefox-20012-3b4-fake-major/ cd /builds/updates/firefox-20012-3b4-fake-major/ # config now lives in public repo cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d config mozilla/tools/patcher-configs/moz18-branch-major-update-patcher2.cfg # get patcher cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d patcher -r UPDATE_PACKAGING_R2 mozilla/tools/patcher # check out MozBuild cd patcher cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d MozBuild -r UPDATE_PACKAGING_R2 mozilla/tools/release/MozBuild export CVSROOT=cltbld@cvs.mozilla.org:/cvsroot # build tools ./patcher2.pl --build-tools --app=firefox --tools-rev=UPDATE_PACKAGING_R2 \ --config=../config/moz18-branch-major-update-patcher2.cfg 2>&1 | tee firefox_build-tools.log # download complete MARs # FIXME - we only really need to "to" mars, not the "from" mars, but there must be "from" # mars present for patcher to build the patchinfo ./patcher2.pl --download --app=firefox \ --config=../config/moz18-branch-major-update-patcher2.cfg 2>&1 | tee firefox_download.log # FIXME - patcher needs to see that the MARs that it thinks are partials # are there or else it will not attempt to generate patchinfo cd temp/firefox ln -s 3.0b4 2.0.0.12-3.0b4 cd ../.. # Create partial patches and snippets ./patcher2.pl --create-patches --app=firefox \ --config=../config/moz18-branch-major-update-patcher2.cfg 2>&1 | tee firefox-create-patches.log
Push aus2.test to the AUS staging box as 20080317-Fx20012-3b4-MU-test, do manual snippet verifications, and push live.
Verify updates
On fx-win32-1.9-slave2, fx-mac-1.9-slave2, fx-linux-1.9-slave2, do
mkdir -p /builds/verify/firefox-20012-3b4-fake-major/ cd /builds/verify/firefox-20012-3b4-fake-major/ cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d updates mozilla/testing/release/updates/ cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d common mozilla/testing/release/common/ # get patch to trawl "Only in" directories cd common # on mac & linux curl -s https://bugzilla.mozilla.org/attachment.cgi?id=304252 | patch -p0 # on win32 wget --no-check-certificate -O patch https://bugzilla.mozilla.org/attachment.cgi?id=304252 patch -p0 < patch cd ../updates ./verify.sh -c moz18-firefox-$platform-major.cfg 2>&1 | tee $platform.log
From 2.0.0.14 to 3.0
The fourth iteration, to test what other packaging fixes we need ahead of 3.0.1
Generate updates
# ssh cltbld@fx-linux-1.9-slave2 (prod 1.9 box) mkdir /builds/updates/firefox-20014-3-fake-major/ cd /builds/updates/firefox-20014-3-fake-major/ # config now lives in public repo cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d config mozilla/tools/patcher-configs/moz18-branch-major-update-patcher2.cfg # get patcher cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d patcher -r UPDATE_PACKAGING_R4 mozilla/tools/patcher # check out MozBuild cd patcher cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d MozBuild -r UPDATE_PACKAGING_R4 mozilla/tools/release/MozBuild export CVSROOT=cltbld@cvs.mozilla.org:/cvsroot # build tools ./patcher2.pl --build-tools --app=firefox --tools-rev=UPDATE_PACKAGING_R4 \ --config=../config/moz18-branch-major-update-patcher2.cfg 2>&1 | tee firefox_build-tools.log # download complete MARs # FIXME - we only really need to "to" mars, not the "from" mars, but there must be "from" # mars present for patcher to build the patchinfo ./patcher2.pl --download --app=firefox \ --config=../config/moz18-branch-major-update-patcher2.cfg 2>&1 | tee firefox_download.log # FIXME - patcher needs to see that the MARs that it thinks are partials # are there or else it will not attempt to generate patchinfo cd temp/firefox ln -s 3.0 2.0.0.14-3.0 cd ../.. # Create partial patches and snippets ./patcher2.pl --create-patches --app=firefox \ --config=../config/moz18-branch-major-update-patcher2.cfg 2>&1 | tee firefox-create-patches.log
Push aus2.test to the AUS staging box as 20080627-Fx20014-3-MU-test, do manual snippet verifications, and push live.
Verify updates
On fx-win32-1.9-slave2, fx-mac-1.9-slave2, fx-linux-1.9-slave2, do
mkdir -p /builds/verify/firefox-20014-3-fake-major/ cd /builds/verify/firefox-20014-3-fake-major/ cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d updates mozilla/testing/release/updates/ cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d common mozilla/testing/release/common/ # get patch to trawl "Only in" directories cd common # on mac & linux curl -s https://bugzilla.mozilla.org/attachment.cgi?id=304252 | patch -p0 # on win32 wget --no-check-certificate -O patch https://bugzilla.mozilla.org/attachment.cgi?id=304252 patch -p0 < patch cd ../updates ./verify.sh -c moz18-firefox-$platform-major.cfg 2>&1 | tee $platform.log
From 2.0.0.16 to 3.0.1
The fifth iteration, are we there yet ?
Update configs
Both the patcher and verify configs need updating for the new version - patch
Generate updates
# ssh cltbld@fx-linux-1.9-slave2 (prod 1.9 box) mkdir /builds/updates/firefox-20016-301-fake-major/ cd /builds/updates/firefox-20016-301-fake-major/ # config now lives in public repo cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d config mozilla/tools/patcher-configs/moz18-branch-major-update-patcher2.cfg # get patcher cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d patcher -r UPDATE_PACKAGING_R4 mozilla/tools/patcher # check out MozBuild cd patcher cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d MozBuild -r UPDATE_PACKAGING_R4 mozilla/tools/release/MozBuild export CVSROOT=cltbld@cvs.mozilla.org:/cvsroot # build tools ./patcher2.pl --build-tools --app=firefox --tools-rev=UPDATE_PACKAGING_R4 \ --config=../config/moz18-branch-major-update-patcher2.cfg 2>&1 | tee firefox_build-tools.log # download complete MARs # FIXME - we only really need to "to" mars, not the "from" mars, but there must be "from" # mars present for patcher to build the patchinfo ./patcher2.pl --download --app=firefox \ --config=../config/moz18-branch-major-update-patcher2.cfg 2>&1 | tee firefox_download.log # FIXME - patcher needs to see that the MARs that it thinks are partials # are there or else it will not attempt to generate patchinfo cd temp/firefox ln -s 3.0.1 2.0.0.16-3.0.1 cd ../.. # Create partial patches and snippets ./patcher2.pl --create-patches --app=firefox \ --config=../config/moz18-branch-major-update-patcher2.cfg 2>&1 | tee firefox-create-patches.log
Rsync temp/firefox/2.0.0.16-3.0.1/aus2.test to the AUS staging box as 20080814-Fx20016-301-MU-test, do manual snippet verifications, and push live.
Verify updates
On fx-win32-1.9-slave2, fx-mac-1.9-slave2, fx-linux-1.9-slave2, do
mkdir -p /builds/verify/firefox-20016-301-fake-major/ cd /builds/verify/firefox-20016-301-fake-major/ cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d updates mozilla/testing/release/updates/ cvs -d cltbld@cvs.mozilla.org:/cvsroot co -d common mozilla/testing/release/common/ # get patch to trawl "Only in" directories cd common # on mac & linux curl -s https://bugzilla.mozilla.org/attachment.cgi?id=304252 | patch -p0 # on win32 wget --no-check-certificate -O patch https://bugzilla.mozilla.org/attachment.cgi?id=304252 patch -p0 < patch cd ../updates ./verify.sh -c moz18-firefox-$platform-major.cfg 2>&1 | tee $platform.log
Then push the logs up to here (LDAP auth) and compare against the fourth iteration. When doing a diff, the only thing of note is that
PREPARE REMOVE searchplugins/pbi-pl.xml +file cannot be removed because it does not exist; skipping PREPARE REMOVE searchplugins/taobao.xml file cannot be removed because it does not exist; skipping ... FINISH ADD searchplugins/fbc-pl.xml -remove failed: -1,2 (searchplugins/fbc-pl.xml.moz-backup)
for the Polish locale (due to bug 408888, pbi-pl died and was replaced by fbcpl).