Releases/Firefox 3.0.x MUtest/BuildNotes: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(New page: ==Build Engineers== nthomas {{bug|459878}} ==From 3.0.x to 3.1b2== The first iteration. === Generate updates === Created [https://bugzilla.mozilla.org/attachment.cgi?id=355358 patcher...)
 
No edit summary
Line 1: Line 1:
==Build Engineers==
=Build Engineers=
nthomas
nthomas


{{bug|459878}}
{{bug|459878}}


==From 3.0.x to 3.1b2==
=From 3.0.x to 3.1b2=


The first iteration.
The first iteration.


=== Generate updates ===
== Generate updates ==


Created [https://bugzilla.mozilla.org/attachment.cgi?id=355358 patcher and update verify configs]
Created [https://bugzilla.mozilla.org/attachment.cgi?id=355358 patcher and update verify configs]
# ssh cltbld@prometheus-vm.build.mozilla.org
mkdir -p /builds/3.0.5-major-update-test/snippets
cd /builds/3.0.5-major-update-test/snippets
cvs -d:ext:ffxbld@cvs.mozilla.org:/cvsroot co -d patcher-configs mozilla/tools/patcher-configs
cvs -d:ext:ffxbld@cvs.mozilla.org:/cvsroot co -r UPDATE_PACKAGING_R5 -d patcher mozilla/tools/patcher
cd patcher
cvs -d:ext:ffxbld@cvs.mozilla.org:/cvsroot co -r UPDATE_PACKAGING_R5 -d MozBuild mozilla/tools/release/MozBuild
export CVSROOT=:ext:ffxbld@cvs.mozilla.org:/cvsroot
# build tools
./patcher2.pl --build-tools --app=firefox --tools-rev=UPDATE_PACKAGING_R5 --config=../patcher-configs/moz19-branch-major-update-patcher2.cfg 2>&1 | tee ../firefox_build-tools.log
# download mars
./patcher2.pl --download --app=firefox --config=../patcher-configs/moz19-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.1b2 3.0.5-3.1b2
cd ../..
# Create partial patches and snippets
./patcher2.pl --create-patches --app=firefox --config=../patcher-configs/moz19-branch-major-update-patcher2.cfg 2>&1 | tee ../firefox-create-patches.log
==Separate out beta snippets==
Skipped over this because they won't be needed.
cd temp/firefox/3.0.5-3.1b2
rsync -a aus2/ aus2.beta/
find aus2.beta/ -type d -name "release" -exec rm -rfv {} \;
find aus2/ -type d -name "beta" -exec rm -rfv {} \;
==Quick verify==
Check the snippets are identical for all four channels
# betatest == releasetest
find aus2.test -type d -iregex '.*betatest.*' | perl -nle '$a = $_; $a =~ s/betatest/releasetest/; system("diff -r -u $_ $a");'
# test the opposite direction to catch anything that only exists for releasetest
find aus2.test -type d -iregex '.*releasetest.*' | perl -nle '$a = $_; $a =~ s/releasetest/betatest/; system("diff -r -u $_ $a");'
Also skipped this bit
# betatest == beta
find aus2.test -type d -iregex '.*betatest.*' | perl -nle '$a = $_; $a =~ s/betatest/beta/; $a =~ s/aus2\.test/aus2.beta/; system("diff -r -u $_ $a");'
find aus2.beta -type d -iregex '.*/beta$' | perl -nle '$a = $_; $a =~ s/beta$/betatest/; $a =~ s/aus2\.beta/aus2.test/; system("diff -r -u $_ $a");'
but did this as a sanity check
# betatest == release
find aus2.test -type d -iregex '.*betatest.*' | perl -nle '$a = $_; $a =~ s/betatest/release/; $a =~ s/aus2\.test/aus2/; system("diff -r -u $_ $a");'
find aus2 -type d -iregex '.*/release$' | perl -nle '$a = $_; $a =~ s/release$/betatest/; $a =~ s/aus2/aus2.test/; system("diff -r -u $_ $a");'
Got no output for each test.
== Push to AUS ==
cd /builds/3.0.5-major-update-test/snippets/patcher/temp/firefox/3.0.5-3.1b2
rsync -e 'ssh -i /home/cltbld/.ssh/aus' -av aus2.test/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20090105-Firefox-3.0.5-3.1b2-MU-test
== Enable test snippets ==
# cltbld@aus2-staging
~/bin/backupsnip 20090105-Firefox-3.0.5-3.1b2-MU-test
~/bin/pushsnip 20090105-Firefox-3.0.5-3.1b2-MU-test

Revision as of 02:58, 6 January 2009

Build Engineers

nthomas

bug 459878

From 3.0.x to 3.1b2

The first iteration.

Generate updates

Created patcher and update verify configs

# ssh cltbld@prometheus-vm.build.mozilla.org
mkdir -p /builds/3.0.5-major-update-test/snippets
cd /builds/3.0.5-major-update-test/snippets

cvs -d:ext:ffxbld@cvs.mozilla.org:/cvsroot co -d patcher-configs mozilla/tools/patcher-configs
cvs -d:ext:ffxbld@cvs.mozilla.org:/cvsroot co -r UPDATE_PACKAGING_R5 -d patcher mozilla/tools/patcher
cd patcher
cvs -d:ext:ffxbld@cvs.mozilla.org:/cvsroot co -r UPDATE_PACKAGING_R5 -d MozBuild mozilla/tools/release/MozBuild

export CVSROOT=:ext:ffxbld@cvs.mozilla.org:/cvsroot
# build tools
./patcher2.pl --build-tools --app=firefox --tools-rev=UPDATE_PACKAGING_R5 --config=../patcher-configs/moz19-branch-major-update-patcher2.cfg 2>&1 | tee ../firefox_build-tools.log

# download mars
./patcher2.pl --download --app=firefox --config=../patcher-configs/moz19-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.1b2 3.0.5-3.1b2
cd ../..

# Create partial patches and snippets
./patcher2.pl --create-patches --app=firefox --config=../patcher-configs/moz19-branch-major-update-patcher2.cfg 2>&1 | tee ../firefox-create-patches.log

Separate out beta snippets

Skipped over this because they won't be needed.

cd temp/firefox/3.0.5-3.1b2
rsync -a aus2/ aus2.beta/
find aus2.beta/ -type d -name "release" -exec rm -rfv {} \;
find aus2/ -type d -name "beta" -exec rm -rfv {} \; 

Quick verify

Check the snippets are identical for all four channels

# betatest == releasetest
find aus2.test -type d -iregex '.*betatest.*' | perl -nle '$a = $_; $a =~ s/betatest/releasetest/; system("diff -r -u $_ $a");'
# test the opposite direction to catch anything that only exists for releasetest
find aus2.test -type d -iregex '.*releasetest.*' | perl -nle '$a = $_; $a =~ s/releasetest/betatest/; system("diff -r -u $_ $a");'

Also skipped this bit

# betatest == beta
find aus2.test -type d -iregex '.*betatest.*' | perl -nle '$a = $_; $a =~ s/betatest/beta/; $a =~ s/aus2\.test/aus2.beta/; system("diff -r -u $_ $a");'
find aus2.beta -type d -iregex '.*/beta$' | perl -nle '$a = $_; $a =~ s/beta$/betatest/; $a =~ s/aus2\.beta/aus2.test/; system("diff -r -u $_ $a");'

but did this as a sanity check

# betatest == release
find aus2.test -type d -iregex '.*betatest.*' | perl -nle '$a = $_; $a =~ s/betatest/release/; $a =~ s/aus2\.test/aus2/; system("diff -r -u $_ $a");'
find aus2 -type d -iregex '.*/release$' | perl -nle '$a = $_; $a =~ s/release$/betatest/; $a =~ s/aus2/aus2.test/; system("diff -r -u $_ $a");'

Got no output for each test.

Push to AUS

cd /builds/3.0.5-major-update-test/snippets/patcher/temp/firefox/3.0.5-3.1b2
rsync -e 'ssh -i /home/cltbld/.ssh/aus' -av aus2.test/ cltbld@aus2-staging.mozilla.org:/opt/aus2/snippets/staging/20090105-Firefox-3.0.5-3.1b2-MU-test

Enable test snippets

# cltbld@aus2-staging
~/bin/backupsnip 20090105-Firefox-3.0.5-3.1b2-MU-test
~/bin/pushsnip 20090105-Firefox-3.0.5-3.1b2-MU-test