From c9c0e9ccdfcd931d1887ae43e283b98071336dad Mon Sep 17 00:00:00 2001 From: Bob Clary Date: Fri, 5 Sep 2008 04:37:54 -0700 Subject: [PATCH] Sisyphus - build fixes - support Thunderbird 3, update data configurations, bug 453806 --- testing/sisyphus/bin/builder.sh | 23 +++++++++- testing/sisyphus/bin/checkout.sh | 46 +++++++++++++++---- testing/sisyphus/bin/set-build-env.sh | 21 ++++++--- .../data/firefox,1.9.1,nightly-darwin.data | 1 + .../data/firefox,1.9.1,nightly-linux.data | 1 + .../data/firefox,1.9.1,nightly-nt.data | 1 + .../firefox,1.9.1-actionmonkey,debug.data | 6 +-- .../data/firefox,1.9.1-actionmonkey,opt.data | 6 +-- .../data/js,1.9.1-actionmonkey,debug.data | 2 +- .../data/js,1.9.1-actionmonkey,opt.data | 2 +- testing/sisyphus/data/js,1.9.1-test,opt.data | 2 +- .../data/thunderbird,1.9.1,debug.data | 8 +++- .../data/thunderbird,1.9.1-test,debug.data | 11 +++-- 13 files changed, 98 insertions(+), 32 deletions(-) diff --git a/testing/sisyphus/bin/builder.sh b/testing/sisyphus/bin/builder.sh index f7c33e20ab1c..9147b62e0ed4 100755 --- a/testing/sisyphus/bin/builder.sh +++ b/testing/sisyphus/bin/builder.sh @@ -55,7 +55,7 @@ variable description =============== =========================================================== -p products required. one or more of firefox thunderbird -b branches required. one or more of 1.8.0 1.8.1 1.9.0 1.9.1 --B buildcommands required. one or more of clean checkout build +-B buildcommands required. one or more of clean clobber checkout build -T buildtypes required. one or more of opt debug -e extra optional. extra qualifier to pick build tree and mozconfig. -d datafiles optional. one or more filenames of files containing @@ -114,6 +114,27 @@ if echo "$buildcommands" | grep -iq clean; then done fi +# clobber first in case checkout changes the configuration +if echo "$buildcommands" | grep -iq clobber; then + for product in $products; do + for branch in $branches; do + for buildtype in $buildtypes; do + + TEST_DATE=`date -u +%Y-%m-%d-%H-%M-%S``date +%z` + TEST_LOG="${TEST_DIR}/results/${TEST_DATE},$product,$branch$extra,$buildtype,$OSID,${TEST_MACHINE},clobber.log" + + echo "log: $TEST_LOG" + + if [[ "$verbose" == "1" ]]; then + clobber.sh -p $product -b $branch -T $buildtype $extraflag 2>&1 | tee $TEST_LOG + else + clobber.sh -p $product -b $branch -T $buildtype $extraflag > $TEST_LOG 2>&1 + fi + done + done + done +fi + # if checkout, ignore buildtypes if echo "$buildcommands" | grep -iq checkout; then for product in $products; do diff --git a/testing/sisyphus/bin/checkout.sh b/testing/sisyphus/bin/checkout.sh index 20737792b863..9536387778ca 100755 --- a/testing/sisyphus/bin/checkout.sh +++ b/testing/sisyphus/bin/checkout.sh @@ -60,13 +60,14 @@ if [[ "$branch" == "1.9.1" ]]; then fi if [[ ! -d $TEST_MOZILLA_HG_LOCAL ]]; then - if ! hg clone -r $TEST_MOZILLA_HG_REV $TEST_MOZILLA_HG $TEST_MOZILLA_HG_LOCAL; then + if ! hg clone $TEST_MOZILLA_HG $TEST_MOZILLA_HG_LOCAL; then error "during hg clone of $TEST_MOZILLA_HG" $LINENO fi fi cd $TEST_MOZILLA_HG_LOCAL - hg pull + hg pull -u + echo "`hg root` id `hg id`" fi cd $BUILDTREE @@ -90,14 +91,23 @@ case $product in 1.9.1) - if [[ ! -e mozilla/client.py ]]; then + if [[ ! -d mozilla/.hg ]]; then if ! hg clone $TEST_MOZILLA_HG_LOCAL $BUILDTREE/mozilla; then error "during hg clone of $TEST_MOZILLA_HG_LOCAL" $LINENO fi fi cd mozilla - hg pull -u -r $TEST_MOZILLA_HG_REV + hg pull + + hg update -r $TEST_MOZILLA_HG_REV + + echo "`hg root` id `hg id`" + + if [[ -n "$DATE_CO_FLAGS" ]]; then + eval hg update $DATE_CO_FLAGS + echo "Update to date $MOZ_CO_DATE `hg root` id `hg id`" + fi # do not use mozilla-build on windows systems as we # must use the cygwin python with the cygwin mercurial. @@ -141,14 +151,24 @@ case $product in ;; 1.9.1) - if [[ ! -e mozilla/client.py ]]; then + if [[ ! -d mozilla/.hg ]]; then if ! hg clone $TEST_MOZILLA_HG_LOCAL $BUILDTREE/mozilla; then error "during hg clone of $TEST_MOZILLA_HG_LOCAL" $LINENO fi fi cd mozilla - hg pull -u -r $TEST_MOZILLA_HG_REV + hg pull + + hg update -r $TEST_MOZILLA_HG_REV + + echo "`hg root` id `hg id`" + + if [[ -n "$DATE_CO_FLAGS" ]]; then + eval hg update $DATE_CO_FLAGS + echo "Update to date $MOZ_CO_DATE `hg root` id `hg id`" + fi + # do not use mozilla-build on windows systems as we # must use the cygwin python with the cygwin mercurial. @@ -189,14 +209,24 @@ case $product in 1.9.1) - if [[ ! -e mozilla/client.py ]]; then + if [[ ! -d mozilla/.hg ]]; then if ! hg clone $TEST_MOZILLA_HG_LOCAL $BUILDTREE/mozilla; then error "during hg clone of $TEST_MOZILLA_HG_LOCAL" $LINENO fi fi cd mozilla - hg pull -u -r $TEST_MOZILLA_HG_REV + hg pull + + hg update -r $TEST_MOZILLA_HG_REV + + echo "`hg root` id `hg id`" + + if [[ -n "$DATE_CO_FLAGS" ]]; then + eval hg update $DATE_CO_FLAGS + echo "Update to date $MOZ_CO_DATE `hg root` id `hg id`" + fi + # do not use mozilla-build on windows systems as we # must use the cygwin python with the cygwin mercurial. diff --git a/testing/sisyphus/bin/set-build-env.sh b/testing/sisyphus/bin/set-build-env.sh index 10378af83ccc..e0736ea51d1f 100755 --- a/testing/sisyphus/bin/set-build-env.sh +++ b/testing/sisyphus/bin/set-build-env.sh @@ -135,7 +135,11 @@ for step in step1; do # dummy loop for handling exits fi if [[ -n "$MOZ_CO_DATE" ]]; then - export DATE_CO_FLAGS="-D \"$MOZ_CO_DATE\"" + if [[ $branch == "1.8.0" || $branch == "1.8.1" || $branch == "1.9.0" ]]; then + export DATE_CO_FLAGS="-D \"$MOZ_CO_DATE\"" + else + export DATE_CO_FLAGS="--date \"<$MOZ_CO_DATE\"" + fi fi case $OSID in @@ -224,13 +228,10 @@ for step in step1; do # dummy loop for handling exits export CONFIGURE_ENV_ARGS=$buildbash - export TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/mozilla-central/} - export TEST_MOZILLA_HG_REV=${TEST_MOZILLA_HG_REV:-tip} - if [[ -z $extra ]]; then - export BUILDTREE="$BUILDDIR/$branch" + export BUILDTREE="${BUILDTREE:-$BUILDDIR/$branch}" else - export BUILDTREE="$BUILDDIR/$branch$extra" + export BUILDTREE="${BUILDTREE:-$BUILDDIR/$branch$extra}" # # extras can't be placed in mozconfigs since not all parts @@ -256,7 +257,8 @@ for step in step1; do # dummy loop for handling exits export XCFLAGS="--coverage" export OS_CFLAGS="--coverage" export LDFLAGS="--coverage" - export XLDOPTS="--coverage" + export XLDFLAGS="--coverage" + export XLDOPTS="--coverage" ;; -jprof) ;; @@ -272,16 +274,21 @@ for step in step1; do # dummy loop for handling exits # and is used to find mozilla/(browser|mail)/config/mozconfig if [[ $product == "firefox" ]]; then project=browser + export TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/mozilla-central/} export MOZCONFIG=${MOZCONFIG:-"$BUILDTREE/mozconfig-firefox-$OSID-$TEST_PROCESSORTYPE-$buildtype"} elif [[ $product == "thunderbird" ]]; then project=mail + export TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/comm-central/} export MOZCONFIG=${MOZCONFIG:-"$BUILDTREE/mozconfig-thunderbird-$OSID-$TEST_PROCESSORTYPE-$buildtype"} else echo "Assuming project=browser for product: $product" project=browser + export TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/mozilla-central/} export MOZCONFIG=${MOZCONFIG:-"$BUILDTREE/mozconfig-firefox-$OSID-$TEST_PROCESSORTYPE-$buildtype"} fi + export TEST_MOZILLA_HG_REV=${TEST_MOZILLA_HG_REV:-tip} + # js shell builds if [[ $buildtype == "debug" ]]; then unset BUILD_OPT diff --git a/testing/sisyphus/data/firefox,1.9.1,nightly-darwin.data b/testing/sisyphus/data/firefox,1.9.1,nightly-darwin.data index dfa036a95646..1a2adf4ca3af 100644 --- a/testing/sisyphus/data/firefox,1.9.1,nightly-darwin.data +++ b/testing/sisyphus/data/firefox,1.9.1,nightly-darwin.data @@ -7,3 +7,4 @@ executablepath=/tmp/firefox-1.9.1 userpreferences=${TEST_DIR}/prefs/test-user.js extensiondir=${TEST_DIR}/xpi buildtype=nightly +TEST_MOZILLA_HG=http://hg.mozilla.org/mozilla-central diff --git a/testing/sisyphus/data/firefox,1.9.1,nightly-linux.data b/testing/sisyphus/data/firefox,1.9.1,nightly-linux.data index 34628de178ec..6ccdb6c2ce00 100644 --- a/testing/sisyphus/data/firefox,1.9.1,nightly-linux.data +++ b/testing/sisyphus/data/firefox,1.9.1,nightly-linux.data @@ -7,3 +7,4 @@ executablepath=/tmp/firefox-1.9.1 userpreferences=${TEST_DIR}/prefs/test-user.js extensiondir=${TEST_DIR}/xpi buildtype=nightly +TEST_MOZILLA_HG=http://hg.mozilla.org/mozilla-central diff --git a/testing/sisyphus/data/firefox,1.9.1,nightly-nt.data b/testing/sisyphus/data/firefox,1.9.1,nightly-nt.data index 23b50abebee1..0860900ca6cf 100644 --- a/testing/sisyphus/data/firefox,1.9.1,nightly-nt.data +++ b/testing/sisyphus/data/firefox,1.9.1,nightly-nt.data @@ -7,3 +7,4 @@ executablepath=/tmp/firefox-1.9.1 userpreferences=${TEST_DIR}/prefs/test-user.js extensiondir=${TEST_DIR}/xpi buildtype=nightly +TEST_MOZILLA_HG=http://hg.mozilla.org/mozilla-central diff --git a/testing/sisyphus/data/firefox,1.9.1-actionmonkey,debug.data b/testing/sisyphus/data/firefox,1.9.1-actionmonkey,debug.data index 4d4d698a8018..a5f17cd49fc4 100644 --- a/testing/sisyphus/data/firefox,1.9.1-actionmonkey,debug.data +++ b/testing/sisyphus/data/firefox,1.9.1-actionmonkey,debug.data @@ -1,8 +1,8 @@ product=firefox branch=1.9.1 -profilename=firefox-1.9.1-test-profile -profiledirectory=/tmp/firefox-1.9.1-test-profile -executablepath=${BUILDDIR}/1.9.1-test/mozilla/firefox-debug/dist +profilename=firefox-1.9.1-actionmonkey-profile +profiledirectory=/tmp/firefox-1.9.1-actionmonkey-profile +executablepath=${BUILDDIR}/1.9.1-actionmonkey/mozilla/firefox-debug/dist userpreferences=${TEST_DIR}/prefs/test-user.js extensiondir=${TEST_DIR}/xpi buildtype=debug diff --git a/testing/sisyphus/data/firefox,1.9.1-actionmonkey,opt.data b/testing/sisyphus/data/firefox,1.9.1-actionmonkey,opt.data index bb6a86e2486f..1b694c52232c 100644 --- a/testing/sisyphus/data/firefox,1.9.1-actionmonkey,opt.data +++ b/testing/sisyphus/data/firefox,1.9.1-actionmonkey,opt.data @@ -1,8 +1,8 @@ product=firefox branch=1.9.1 -profilename=firefox-1.9.1-test-profile -profiledirectory=/tmp/firefox-1.9.1-test-profile -executablepath=${BUILDDIR}/1.9.1-test/mozilla/firefox-opt/dist +profilename=firefox-1.9.1-actionmonkey-profile +profiledirectory=/tmp/firefox-1.9.1-actionmonkey-profile +executablepath=${BUILDDIR}/1.9.1-actionmonkey/mozilla/firefox-opt/dist userpreferences=${TEST_DIR}/prefs/test-user.js extensiondir=${TEST_DIR}/xpi buildtype=opt diff --git a/testing/sisyphus/data/js,1.9.1-actionmonkey,debug.data b/testing/sisyphus/data/js,1.9.1-actionmonkey,debug.data index 360b4dfc1d02..fbbfebd5782e 100644 --- a/testing/sisyphus/data/js,1.9.1-actionmonkey,debug.data +++ b/testing/sisyphus/data/js,1.9.1-actionmonkey,debug.data @@ -1,5 +1,5 @@ product=js branch=1.9.1 -jsshellsourcepath=${BUILDDIR}/1.9.1/mozilla/js/src +jsshellsourcepath=${BUILDDIR}/1.9.1-actionmonkey/mozilla/js/src buildtype=debug TEST_MOZILLA_HG=http://hg.mozilla.org/actionmonkey diff --git a/testing/sisyphus/data/js,1.9.1-actionmonkey,opt.data b/testing/sisyphus/data/js,1.9.1-actionmonkey,opt.data index 96b103143563..612c1e96731a 100644 --- a/testing/sisyphus/data/js,1.9.1-actionmonkey,opt.data +++ b/testing/sisyphus/data/js,1.9.1-actionmonkey,opt.data @@ -1,5 +1,5 @@ product=js branch=1.9.1 -jsshellsourcepath=${BUILDDIR}/1.9.1/mozilla/js/src +jsshellsourcepath=${BUILDDIR}/1.9.1-actionmonkey/mozilla/js/src buildtype=opt TEST_MOZILLA_HG=http://hg.mozilla.org/actionmonkey diff --git a/testing/sisyphus/data/js,1.9.1-test,opt.data b/testing/sisyphus/data/js,1.9.1-test,opt.data index edadbbf66f8b..10f89828661d 100644 --- a/testing/sisyphus/data/js,1.9.1-test,opt.data +++ b/testing/sisyphus/data/js,1.9.1-test,opt.data @@ -2,4 +2,4 @@ product=js branch=1.9.1 jsshellsourcepath=${BUILDDIR}/1.9.1-test/mozilla/js/src buildtype=opt -TEST_MOZILLA_HG=http://hg.mozilla.org/mozilla-central +TEST_MOZILLA_HG=http://hg.mozilla.org/mozilla-central \ No newline at end of file diff --git a/testing/sisyphus/data/thunderbird,1.9.1,debug.data b/testing/sisyphus/data/thunderbird,1.9.1,debug.data index bd02e61fad07..a3c1f026cd94 100644 --- a/testing/sisyphus/data/thunderbird,1.9.1,debug.data +++ b/testing/sisyphus/data/thunderbird,1.9.1,debug.data @@ -2,9 +2,13 @@ product=thunderbird branch=1.9.1 profilename=thunderbird-1.9.1-profile profiledirectory=/tmp/thunderbird-1.9.1-profile -executablepath=${BUILDDIR}/1.9.1/mozilla/thunderbird-debug/dist +# thunderbird from comm-central can not live in the same source tree as firefox +# anymore since it comes from a different repository. +# override the default build tree since the default tree location has changed +BUILDTREE=${BUILDDIR}/1.9.1-thunderbird +executablepath=${BUILDTREE}/mozilla/thunderbird-debug/mozilla/dist userpreferences=${TEST_DIR}/prefs/test-user.js extensiondir=${TEST_DIR}/xpi profiletemplate=${TEST_DIR}/profiles/imap buildtype=debug -TEST_MOZILLA_HG=http://hg.mozilla.org/mozilla-central +TEST_MOZILLA_HG=http://hg.mozilla.org/comm-central diff --git a/testing/sisyphus/data/thunderbird,1.9.1-test,debug.data b/testing/sisyphus/data/thunderbird,1.9.1-test,debug.data index 19624b0c2cc5..e3b78c8f4bd8 100644 --- a/testing/sisyphus/data/thunderbird,1.9.1-test,debug.data +++ b/testing/sisyphus/data/thunderbird,1.9.1-test,debug.data @@ -2,12 +2,13 @@ product=thunderbird branch=1.9.1 profilename=thunderbird-1.9.1-test-profile profiledirectory=/tmp/thunderbird-1.9.1-test-profile -executablepath=${BUILDDIR}/1.9.1-test/mozilla/thunderbird-debug/dist +# thunderbird from comm-central can not live in the same source tree as firefox +# anymore since it comes from a different repository. +# override the default mozconfig since the default tree location has changed +BUILDTREE=${BUILDDIR}/1.9.1-thunderbird-test +executablepath=${BUILDTREE}/mozilla/thunderbird-debug/mozilla/dist userpreferences=${TEST_DIR}/prefs/test-user.js extensiondir=${TEST_DIR}/xpi profiletemplate=${TEST_DIR}/profiles/imap buildtype=debug -TEST_MOZILLA_HG=http://hg.mozilla.org/mozilla-central - - - +TEST_MOZILLA_HG=http://hg.mozilla.org/comm-central