Bug 674952 - Remove Sisyphus from mozilla-central, a=npotb

This commit is contained in:
Bob Clary 2011-07-28 10:04:07 -07:00
Родитель 83f1d06c0a
Коммит 73c36c32b4
131 изменённых файлов: 0 добавлений и 6284 удалений

Просмотреть файл

@ -1,90 +0,0 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; -*- */
/* ***** BEGIN LICENSE BLOCK *****
* Version: MPL 1.1/GPL 2.0/LGPL 2.1
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* The Original Code is The Original Code is Mozilla Automated Testing Code
*
* The Initial Developer of the Original Code is
* Mozilla Corporation.
* Portions created by the Initial Developer are Copyright (C) 2005
* the Initial Developer. All Rights Reserved.
*
* Contributor(s): Bob Clary <bob@bclary.com>
*
* Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 2 or later (the "GPL"), or
* the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
* in which case the provisions of the GPL or the LGPL are applicable instead
* of those above. If you wish to allow use of your version of this file only
* under the terms of either the GPL or the LGPL, and not to allow others to
* use your version of this file under the terms of the MPL, indicate your
* decision by deleting the provisions above and replace them with the notice
* and other provisions required by the GPL or the LGPL. If you do not delete
* the provisions above, a recipient may use your version of this file under
* the terms of any one of the MPL, the GPL or the LGPL.
*
* ***** END LICENSE BLOCK ***** */
function AppInfo()
{
// See http://developer.mozilla.org/en/docs/Using_nsIXULAppInfo
var appInfo;
this.vendor = 'unknown';
this.name = 'unknown';
this.ID = 'unknown';
this.version = 'unknown';
this.appBuildID = 'unknown';
this.platformVersion = 'unknown';
this.platformBuildID = 'unknown';
try
{
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
if('@mozilla.org/xre/app-info;1' in Components.classes)
{
// running under Mozilla 1.8 or later
appInfo = Components
.classes['@mozilla.org/xre/app-info;1']
.getService(Components.interfaces.nsIXULAppInfo);
this.vendor = appInfo.vendor;
this.name = appInfo.name;
this.ID = appInfo.ID;
this.version = appInfo.version;
this.appBuildID = appInfo.appBuildID;
this.platformVersion = appInfo.platformVersion;
this.platformBuildID = appInfo.platformBuildID;
}
}
catch(e)
{
}
if (this.vendor == 'unknown')
{
var ua = navigator.userAgent;
var cap = ua.match(/rv:([\d.ab+]+).*Gecko\/(\d{8,8}) ([\S]+)\/([\d.]+)/);
if (cap && cap.length == 5)
{
this.vendor = navigator.vendor ? navigator.vendor : 'Mozilla';
this.name = cap[3];
this.version = cap[4];
this.appBuildID = cap[2] + '00';
this.platformVersion = cap[1];
this.platformBuildID = this.appBuildID;
}
}
}

Просмотреть файл

@ -1,189 +0,0 @@
#!/bin/bash -e
# -*- Mode: Shell-script; tab-width: 4; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2006.
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
# Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
source $TEST_DIR/bin/library.sh
source $TEST_DIR/bin/set-build-env.sh $@
case $product in
firefox)
cd $BUILDTREE/mozilla
if ! $buildbash $bashlogin -c "export PATH=\"$BUILDPATH\"; cd $BUILDTREE/mozilla; make -f client.mk build" 2>&1; then
if [[ -z "$TEST_FORCE_CLOBBER_ON_ERROR" ]]; then
error "error during build" $LINENO
else
echo "error occurred during build. attempting a clobber build" $LINENO
if ! $buildbash $bashlogin -c "export PATH=\"$BUILDPATH\"; cd $BUILDTREE/mozilla; make -f client.mk distclean" 2>&1; then
error "error during forced clobber" $LINENO
fi
if ! $buildbash $bashlogin -c "export PATH=\"$BUILDPATH\"; cd $BUILDTREE/mozilla; make -f client.mk build" 2>&1; then
error "error during forced build" $LINENO
fi
fi
fi
case "$OSID" in
mac)
if [[ "$buildtype" == "debug" ]]; then
if [[ "$product" == "firefox" ]]; then
executablepath=$product-$buildtype/dist/FirefoxDebug.app/Contents/MacOS
fi
else
if [[ "$product" == "firefox" ]]; then
executablepath=$product-$buildtype/dist/Firefox.app/Contents/MacOS
fi
fi
;;
linux)
executablepath=$product-$buildtype/dist/bin
;;
esac
if [[ "$OSID" != "nt" ]]; then
#
# patch unix-like startup scripts to exec instead of
# forking new processes
#
executable=`get_executable $product $branch $executablepath`
executabledir=`dirname $executable`
# patch to use exec to prevent forked processes
cd "$executabledir"
if [ -e "$product" ]; then
echo "$SCRIPT: patching $product"
cp $TEST_DIR/bin/$product.diff .
patch -N -p0 < $product.diff
fi
if [ -e run-mozilla.sh ]; then
echo "$SCRIPT: patching run-mozilla.sh"
cp $TEST_DIR/bin/run-mozilla.diff .
patch -N -p0 < run-mozilla.diff
fi
fi
;;
js)
if [[ -e "$BUILDTREE/mozilla/js/src/configure.in" ]]; then
# use the new fangled autoconf build environment for spidermonkey
# recreate the OBJ directories to match the old naming standards
TEST_JSDIR=${TEST_JSDIR:-$TEST_DIR/tests/mozilla.org/js}
source $TEST_JSDIR/config.sh
cd "$BUILDTREE/mozilla/js/src"
mkdir -p "$JS_OBJDIR"
# run autoconf when configure.in is newer than configure
if [[ configure.in -nt configure ]]; then
if [[ "$OSID" == "nt" ]]; then
AUTOCONF=autoconf-2.13
elif findprogram autoconf-2.13; then
AUTOCONF=autoconf-2.13
elif findprogram autoconf2.13; then
AUTOCONF=autoconf2.13
elif findprogram autoconf213; then
AUTOCONF=autoconf213
else
error "autoconf 2.13 not detected"
fi
if ! $buildbash $bashlogin -c "export PATH=\"$BUILDPATH\"; cd $BUILDTREE/mozilla/js/src; eval \"$AUTOCONF\";" 2>&1; then
error "during js/src autoconf" $LINENO
fi
fi
# XXX: Todo
# This reproduces the limited approach which previously existed with Makefile.ref but
# does not provide the full functionality provided by the available configure options.
# Ideally, it would be good to use a mozconfig approach (if available) that would generate
# the necessary configure command line arguments. This would provide the generality to
# specify arbitrary configure options.
#
if [[ "configure" -nt "$JS_OBJDIR/Makefile" ]]; then
if [[ "$buildtype" == "debug" ]]; then
if ! $buildbash $bashlogin -c "export PATH=\"$BUILDPATH\"; cd $BUILDTREE/mozilla/js/src/$JS_OBJDIR; ../configure --prefix=$BUILDTREE/mozilla/js/src/$JS_OBJDIR --disable-optimize --enable-debug"; then
error "during js/src/$JS_OBJDIR configure" $LINENO
fi
else
if ! $buildbash $bashlogin -c "export PATH=\"$BUILDPATH\"; cd $BUILDTREE/mozilla/js/src/$JS_OBJDIR; ../configure --prefix=$BUILDTREE/mozilla/js/src/$JS_OBJDIR --enable-optimize --disable-debug"; then
error "during js/src/$JS_OBJDIR configure" $LINENO
fi
fi
fi
if ! $buildbash $bashlogin -c "export PATH=\"$BUILDPATH\"; cd $BUILDTREE/mozilla/js/src/$JS_OBJDIR; make" 2>&1; then
error "during js/src build" $LINENO
fi
if ! $buildbash $bashlogin -c "export PATH=\"$BUILDPATH\"; cd $BUILDTREE/mozilla/js/src/$JS_OBJDIR; make install" 2>&1; then
error "during js/src install" $LINENO
fi
elif [[ -e "$BUILDTREE/mozilla/js/src/Makefile.ref" ]]; then
# use the old-style Makefile.ref build environment for spidermonkey
if [[ $buildtype == "debug" ]]; then
export JSBUILDOPT=
else
export JSBUILDOPT=BUILD_OPT=1
fi
if ! $buildbash $bashlogin -c "export PATH=\"$BUILDPATH\"; cd $BUILDTREE/mozilla/js/src; make -f Makefile.ref ${JSBUILDOPT} clean" 2>&1; then
error "during js/src clean" $LINENO
fi
if ! $buildbash $bashlogin -c "export PATH=\"$BUILDPATH\"; cd $BUILDTREE/mozilla/js/src; make -f Makefile.ref ${JSBUILDOPT}" 2>&1; then
error "during js/src build" $LINENO
fi
else
error "Neither Makefile.ref or autoconf builds available"
fi
;;
esac

Просмотреть файл

@ -1,187 +0,0 @@
#!/bin/bash -e
# -*- Mode: Shell-script; tab-width: 4; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2006.
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
# Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
source $TEST_DIR/bin/library.sh
TEST_LOG=/dev/null
#
# options processing
#
options="p:b:B:T:e:d:v"
function usage()
{
cat<<EOF
usage:
$SCRIPT -p products -b branches -B buildcommands -T buildtypes [-e extra] [-d datafiles] [-v]
variable description
=============== ===========================================================
-p products required. one or more of js firefox
-b branches required. one or more of supported branches. see library.sh.
-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
environment variable definitions to be included.
-v optional. verbose - copies log file output to stdout.
note that the environment variables should have the same names as in the
"variable" column.
EOF
exit 1
}
unset products branches buildcommands buildtypes extra extraflag datafiles
while getopts $options optname ;
do
case $optname in
p) products="$OPTARG";;
b) branches="$OPTARG";;
B) buildcommands="$OPTARG";;
T) buildtypes="$OPTARG";;
e) extra="-$OPTARG"
extraflag="-e $OPTARG";;
d) datafiles=$OPTARG;;
v) verbose=1;;
esac
done
# include environment variables
loaddata $datafiles
if [[ -z "$products" || -z "$branches" || -z "$buildcommands" || \
-z "$buildtypes" ]]; then
usage
fi
# clean first in case checkout changes the configuration
if echo "$buildcommands" | grep -iq clean; then
for product in $products; do
for branch in $branches; do
checkProductBranch $product $branch
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},clean.log"
echo "log: $TEST_LOG"
if [[ "$verbose" == "1" ]]; then
clean.sh -p $product -b $branch -T $buildtype $extraflag 2>&1 | tee $TEST_LOG
else
clean.sh -p $product -b $branch -T $buildtype $extraflag > $TEST_LOG 2>&1
fi
done
done
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
checkProductBranch $product $branch
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
for branch in $branches; do
checkProductBranch $product $branch
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},checkout.log"
echo "log: $TEST_LOG"
if [[ "$verbose" == "1" ]]; then
checkout.sh -p $product -b $branch -T opt $extraflag 2>&1 | tee $TEST_LOG
else
checkout.sh -p $product -b $branch -T opt $extraflag > $TEST_LOG 2>&1
fi
done
done
fi
if echo "$buildcommands" | grep -iq build; then
for product in $products; do
for branch in $branches; do
for buildtype in $buildtypes; do
checkProductBranch $product $branch
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},build.log"
echo "log: $TEST_LOG"
if [[ "$verbose" == "1" ]]; then
build.sh -p $product -b $branch -T $buildtype $extraflag 2>&1 | tee $TEST_LOG
else
build.sh -p $product -b $branch -T $buildtype $extraflag > $TEST_LOG 2>&1
fi
done
done
done
fi

Просмотреть файл

@ -1,16 +0,0 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Get Build Information</title>
<script type="text/javascript" src="appinfo.js"></script>
</head>
<body>
<h1>Get Build Information</h1>
<script type="text/javascript">
var appInfo = new AppInfo();
document.write(appInfo.toSource());
</script>
</body>
</html>

Просмотреть файл

@ -1,120 +0,0 @@
#!/bin/bash -e
# -*- Mode: Shell-script; tab-width: 4; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2006.
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
# Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
source $TEST_DIR/bin/library.sh
TEST_STARTUP_TRIES=${TEST_STARTUP_TRIES:-3}
#
# options processing
#
options="p:b:x:N:d:"
function usage()
{
cat <<EOF
usage:
$SCRIPT -p product -b branch -x executablepath -N profilename
[-d datafiles]
variable description
=============== ============================================================
-p product required. firefox
-b branch required. supported branch. see library.sh
-x executablepath required. directory-tree containing executable named
'product'
-N profilename required. name of profile to be used
-d datafiles optional. one or more filenames of files containing
environment variable definitions to be included.
note that the environment variables should have the same names as in the
"variable" column.
Checks if the Spider extension is installed either in the named profile
or as a global extension, by attempting up to 3 times to launch the Spider.
If Spider fails to launch, the script returns exit code 2.
EOF
exit 1
}
unset product branch executablepath profilename datafiles
while getopts $options optname ;
do
case $optname in
p) product=$OPTARG;;
b) branch=$OPTARG;;
x) executablepath=$OPTARG;;
N) profilename=$OPTARG;;
d) datafiles=$OPTARG;;
esac
done
# include environment variables
loaddata $datafiles
if [[ -z "$product" || -z "$branch" || -z "$executablepath" || -z "$profilename" ]];
then
usage
fi
checkProductBranch $product $branch
executable=`get_executable $product $branch $executablepath`
if echo "$profilename" | egrep -qiv '[a-z0-9_]'; then
error "profile name must consist of letters, digits or _" $LINENO
fi
echo # attempt to force Spider to load
tries=1
while ! $TEST_DIR/bin/timed_run.py ${TEST_STARTUP_TIMEOUT} "Start Spider: try $tries" \
$EXECUTABLE_DRIVER \
"$executable" -P "$profilename" \
-spider -start -quit \
-uri "http://${TEST_HTTP}/bin/start-spider.html" \
-hook "http://${TEST_HTTP}/bin/userhook-checkspider.js"; do
let tries=tries+1
if [ "$tries" -gt $TEST_STARTUP_TRIES ]; then
error "Failed to start spider. Exiting..." $LINENO
fi
sleep 30
done

Просмотреть файл

@ -1,181 +0,0 @@
#!/bin/bash -e
# -*- Mode: Shell-script; tab-width: 4; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2006.
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
# Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
source $TEST_DIR/bin/library.sh
source $TEST_DIR/bin/set-build-env.sh $@
if [[ -z "$BUILDTREE" ]]; then
error "source tree not specified!" $LINENO
fi
case $branch in
1.8.0);;
1.8.1);;
1.9.0);;
*)
if [[ -z "$TEST_MOZILLA_HG" ]]; then
error "environment variable TEST_MOZILLA_HG must be set to the hg repository for branch $branch"
fi
;;
esac
if [[ -n "$TEST_MOZILLA_HG" ]]; then
# maintain a local copy of the hg repository
# clone specific trees from it.
TEST_MOZILLA_HG_LOCAL=${TEST_MOZILLA_HG_LOCAL:-$BUILDDIR/hg.mozilla.org/`basename $TEST_MOZILLA_HG`}
if [[ ! -d $BUILDDIR/hg.mozilla.org ]]; then
mkdir $BUILDDIR/hg.mozilla.org
fi
if [[ ! -d $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
if [[ "$OSID" == "nt" ]]; then
# remove spurious lock file
rm -f $TEST_MOZILLA_HG_LOCAL/.hg/wlock.lnk
fi
hg update -C
echo "`hg root` id `hg id`"
fi
cd $BUILDTREE
if [[ -n "$TEST_MOZILLA_HG" ]]; 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
if [[ "$OSID" == "nt" ]]; then
# remove spurious lock file
rm -f $TEST_MOZILLA_HG/.hg/wlock.lnk
fi
hg update -C
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
fi
case $product in
firefox)
case $branch in
1.8.*|1.9.0)
if [[ ! ( -d mozilla && \
-e mozilla/client.mk && \
-e "mozilla/$project/config/mozconfig" ) ]]; then
if ! eval cvs -z3 -q co $MOZ_CO_FLAGS $BRANCH_CO_FLAGS $DATE_CO_FLAGS \
mozilla/client.mk mozilla/$project/config/mozconfig; then
error "during checkout of $project mozconfig" $LINENO
fi
fi
if ! $buildbash $bashlogin -c "export PATH=\"$BUILDPATH\"; cd $BUILDTREE/mozilla; make -f client.mk checkout" 2>&1; then
error "during checkout of $project tree" $LINENO
fi
;;
*)
# do not use mozilla-build on windows systems as we
# must use the cygwin python with the cygwin mercurial.
if ! python client.py checkout; then
error "during checkout of $project tree" $LINENO
fi
;;
esac
;;
js)
case $branch in
1.8.*|1.9.0)
if [[ ! ( -d mozilla && \
-e mozilla/js && \
-e mozilla/js/src ) ]]; then
if ! eval cvs -z3 -q co $MOZ_CO_FLAGS $BRANCH_CO_FLAGS $DATE_CO_FLAGS mozilla/js; then
error "during initial co $MOZ_CO_FLAGS $BRANCH_CO_FLAGS $DATE_CO_FLAGS mozilla/js"
fi
fi
cd mozilla/js/src
if ! eval cvs -z3 -q update $MOZ_CO_FLAGS $BRANCH_CO_FLAGS $DATE_CO_FLAGS -d -P 2>&1; then
error "during update $MOZ_CO_FLAGS $BRANCH_CO_FLAGS $DATE_CO_FLAGS js/src" $LINENO
fi
if ! cvs -z3 -q update -d -P -A editline config 2>&1; then
error "during checkout of js/src" $LINENO
fi
;;
*)
# do not use mozilla-build on windows systems as we
# must use the cygwin python with the cygwin mercurial.
if ! python client.py checkout; then
error "during checkout of $project tree" $LINENO
fi
cd js/src
;;
esac
# end for js shell
;;
*)
error "unknown product $product" $LINENO
;;
esac

Просмотреть файл

@ -1,97 +0,0 @@
#!/bin/bash -e
# -*- Mode: Shell-script; tab-width: 4; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2006.
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
# Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
source $TEST_DIR/bin/library.sh
source $TEST_DIR/bin/set-build-env.sh $@
case $product in
firefox)
if ! $buildbash $bashlogin -c "cd $BUILDTREE/mozilla; make -f client.mk clean" 2>&1; then
error "during client.mk clean" $LINENO
fi
;;
js)
if [[ -e "$BUILDTREE/mozilla/js/src/configure.in" ]]; then
# use the new fangled autoconf build environment for spidermonkey
# recreate the OBJ directories to match the old naming standards
TEST_JSDIR=${TEST_JSDIR:-$TEST_DIR/tests/mozilla.org/js}
source $TEST_JSDIR/config.sh
mkdir -p "$BUILDTREE/mozilla/js/src/$JS_OBJDIR"
if [[ ! -e "$BUILDTREE/mozilla/js/src/configure" ]]; then
if findprogram autoconf-2.13; then
AUTOCONF=autoconf-2.13
elif findprogram autoconf213; then
AUTOCONF=autoconf213
else
error "autoconf 2.13 not detected"
fi
cd "$BUILDTREE/mozilla/js/src"
eval "$AUTOCONF"
fi
cd "$BUILDTREE/mozilla/js/src/$JS_OBJDIR"
if [[ -e "Makefile" ]]; then
if ! $buildbash $bashlogin -c "cd $BUILDTREE/mozilla/js/src/$JS_OBJDIR; make clean" 2>&1; then
error "during js/src clean" $LINENO
fi
fi
elif [[ -e "$BUILDTREE/mozilla/js/src/Makefile.ref" ]]; then
if ! $buildbash $bashlogin -c "cd $BUILDTREE/mozilla/js/src/editline; make -f Makefile.ref clean" 2>&1; then
error "during editline clean" $LINENO
fi
if ! $buildbash $bashlogin -c "cd $BUILDTREE/mozilla/js/src; make -f Makefile.ref clean" 2>&1; then
error "during SpiderMonkey clean" $LINENO
fi
else
error "Neither Makefile.ref or autoconf builds available"
fi
;;
esac

Просмотреть файл

@ -1,74 +0,0 @@
#!/bin/bash -e
# -*- Mode: Shell-script; tab-width: 4; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2008.
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
# Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
source $TEST_DIR/bin/library.sh
source $TEST_DIR/bin/set-build-env.sh $@
if [[ ! -e "$BUILDDIR" ]]; then
echo "build directory \"$BUILDDIR\" doesn't exist, ignoring clobber"
exit
fi
case $product in
firefox)
if [[ ! -e "$executablepath" ]]; then
echo "executable path $executablepath doesn't exist, ignoring clobber"
exit
fi
if ! $buildbash $bashlogin -c "export PATH=\"$BUILDPATH\"; cd $BUILDTREE/mozilla; make -f client.mk clobber" 2>&1; then
echo "error during client.mk clobber" $LINENO
echo "Forcing clobber" $LINENO
rm -fR $BUILDTREE/mozilla/$product-$buildtype/
fi
;;
js)
if [[ ! -e "$jsshellsourcepath" ]]; then
echo "javascript shell source path $jsshellsourcepath doesn't exist, ignoring clobber"
exit
fi
if [[ -e "$BUILDTREE/mozilla/js/src/configure.in" ]]; then
rm -f $BUILDTREE/mozilla/js/src/configure
fi
rm -fR $BUILDTREE/mozilla/js/src/*_*.OBJ
;;
esac

Просмотреть файл

@ -1,51 +0,0 @@
#!/bin/bash -e
delim=,
while getopts "d:" optname;
do
case $optname in
d) delim=$OPTARG;;
esac
done
if [[ $OPTIND -gt 1 ]]; then
shift 2
fi
if [[ -n "$4" ]]; then
for a in $1; do for b in $2; do for c in $3; do for d in $4; do echo $a$delim$b$delim$c$delim$d; done; done; done; done
elif [[ -n "$3" ]]; then
for a in $1; do for b in $2; do for c in $3; do echo $a$delim$b$delim$c; done; done; done
elif [[ -n "$2" ]]; then
for a in $1; do for b in $2; do echo $a$delim$b; done; done
elif [[ -n "$1" ]]; then
for a in $1; do echo $a; done
else
cat<<EOF
usage: combo.sh [-d delim] list1 [list2 [list3 [list4]]]
output combinations of items in each list using delim as the delimiter
-d delim specifies the delimiter. The default is comma (,).
combo.sh "a b"
a
b
combo.sh "a b" "1 2"
a,1
a,2
b,1
b,2
combo.sh -d "-" "a b" "1 2"
a-1
a-2
b-1
b-2
EOF
fi

Просмотреть файл

@ -1,117 +0,0 @@
#!/bin/bash -e
# -*- Mode: Shell-script; tab-width: 4; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2006.
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
# Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
source $TEST_DIR/bin/library.sh
#
# options processing
#
options="d:n"
function usage()
{
cat <<EOF
usage:
$SCRIPT -d directory [-n]
-d directory directory to be created.
-n never prompt when removing existing directory.
Attempts to safely create an empty directory. If -n is not
specified, the script will prompt before deleting any files
or directories. If -n is specified, it will not prompt.
The safety measures include refusing to run if run by user
root and by refusing to create directories unless there are
a subdirectory of /tmp or have at least two ancestor
directories... /grandparent/parent/child.
******************** WARNING ********************
This script will destroy existing directories and
their contents. It can potentially wipe out your
disk. Use with caution.
******************** WARNING ********************
EOF
exit 1
}
unset directory
rmopt="-i"
while getopts $options optname ;
do
case $optname in
d) directory=$OPTARG;;
n) unset rmopt;;
esac
done
if [[ -z $directory ]]
then
usage
fi
if [[ `whoami` == "root" ]]; then
error "can not be run as root" $LINENO
fi
# get the cannonical name directory name
mkdir -p "$directory"
if ! pushd "$directory" > /dev/null ; then
error "$directory is not accessible" $LINENO
fi
directory=`pwd`
popd > /dev/null
if [[ "$directory" == "/" ]]; then
error "directory $directory can not be root" $LINENO
fi
parent=`dirname "$directory"`
grandparent=`dirname "$parent"`
if [[ "$parent" != "/tmp" && ( "$parent" == "/" || "$grandparent" == "/" ) ]]; then
error "directory $directory can not be a subdirectory of $parent" $LINENO
fi
# clean the directory if requested
rm -fR $rmopt $directory
mkdir -p "$directory"

Просмотреть файл

@ -1,138 +0,0 @@
#!/bin/bash -e
# -*- Mode: Shell-script; tab-width: 4; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2006.
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
# Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
source $TEST_DIR/bin/library.sh
#
# options processing
#
options="p:b:x:D:N:L:U:d:"
function usage()
{
cat <<EOF
usage:
$SCRIPT -p product -b branch -x executablepath -D directory -N profilename
[-L profiletemplate] [-U user] [-d datafiles]
variable description
=============== ============================================================
-p product required. firefox.
-b branch required. supported branch. see library.sh
-x executablepath required. directory-tree containing executable 'product'
-D directory required. directory where profile is to be created.
-N profilename required. profile name
-L profiletemplate optional. location of a template profile to be used.
-U user optional. user.js preferences file.
-d datafiles optional. one or more filenames of files containing
environment variable definitions to be included.
note that the environment variables should have the same names as in the
"variable" column.
EOF
exit 1
}
unset product branch executablepath directory profilename profiletemplate user datafiles
while getopts $options optname ;
do
case $optname in
p) product=$OPTARG;;
b) branch=$OPTARG;;
x) executablepath=$OPTARG;;
D) directory=$OPTARG;;
N) profilename=$OPTARG;;
L) profiletemplate=$OPTARG;;
U) user=$OPTARG;;
d) datafiles=$OPTARG;;
esac
done
# include environment variables
loaddata $datafiles
if [[ -z "$product" || -z "$branch" || -z "$executablepath" || \
-z "$directory" || -z "$profilename" ]]; then
usage
fi
checkProductBranch $product $branch
executable=`get_executable $product $branch $executablepath`
$TEST_DIR/bin/create-directory.sh -d "$directory" -n
if echo "$profilename" | egrep -qiv '[a-z0-9_]'; then
error "profile name \"$profilename\" must consist of letters, digits or _" $LINENO
fi
if [ $OSID == "nt" ]; then
directoryospath=`cygpath -a -w $directory`
if [[ -z "$directoryospath" ]]; then
error "unable to convert unix path to windows path" $LINENO
fi
else
directoryospath="$directory"
fi
echo "creating profile $profilename in directory $directory"
tries=1
while ! $TEST_DIR/bin/timed_run.py ${TEST_STARTUP_TIMEOUT} "-" \
$EXECUTABLE_DRIVER \
$executable -CreateProfile "$profilename $directoryospath"; do
let tries=tries+1
if [ "$tries" -gt $TEST_STARTUP_TRIES ]; then
error "Failed to create profile $directory Exiting..." $LINENO
fi
sleep 30
done
if [[ -n $profiletemplate ]]; then
if [[ ! -d $profiletemplate ]]; then
error "profile template directory $profiletemplate does not exist" $LINENO
fi
echo "copying template profile $profiletemplate to $directory"
cp -R $profiletemplate/* $directory
fi
if [[ ! -z $user ]]; then
cp $user $directory/user.js
fi

Просмотреть файл

@ -1,49 +0,0 @@
#!/usr/bin/perl -w
# -*- Mode: Perl; tab-width: 4; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is Mozilla Automated Testing Code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2008
# the Initial Developer. All Rights Reserved.
#
# Contributor(s): Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
use Date::Parse;
if (@ARGV == 0)
{
die "usage: dateparse.pl datestring";
}
my $datestring = $ARGV[0];
my $time = str2time($datestring);
print($time);

Просмотреть файл

@ -1,129 +0,0 @@
#!/bin/bash -e
# -*- Mode: Shell-script; tab-width: 4; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2005.
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
# Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
source $TEST_DIR/bin/library.sh
args=$@
script=`basename $0`
#
# options processing
#
options="u:c:f:t:d:"
function usage()
{
cat <<EOF
$SCRIPT $args
usage:
$SCRIPT -u url [-c credentials] -f filepath [-t timeout] [-d datafiles]
variable description
=============== ============================================================
-u url required. url to download build from
-c credentials optional. username:password
-f filepath required. path to filename to store downloaded file
-t timeout optional. timeout in seconds before download fails.
default 300 seconds
-d datafiles optional. one or more filenames of files containing
environment variable definitions to be included.
note that the environment variables should have the same names as in the
"variable" column.
downloads file from url with optional authentication credentials
saving the file to filepath. If the path to the file does not exist,
it is created. If the download takes longer than timeout seconds,
the download is cancelled.
EOF
exit 1
}
unset url credentials filepath timeout datafiles
while getopts $options optname ;
do
case $optname in
u) url=$OPTARG;;
c) credentials=$OPTARG;;
f) filepath=$OPTARG;;
t) timeout=$OPTARG;;
d) datafiles=$OPTARG;;
esac
done
# include environment variables
loaddata $datafiles
if [[ -z $url || -z $filepath ]]
then
usage
fi
if [[ -n "$credentials" ]]; then
auth="--user $credentials"
fi
timeout=${timeout:-300}
path=`dirname $filepath`
if [[ -z "$path" ]]; then
echo "$SCRIPT: ERROR filepath path is empty"
exit 2
fi
echo "url=$url filepath=$filepath credentials=$credentials timeout=$timeout"
# curl options
# -S show error if failure
# -s silent mode
# -L follow 3XX redirections
# -m $timeout time out
# -D - dump headers to stdout
# --create-dirs create path if needed
if ! curl -LsS -m $timeout "$url" -D - --create-dirs -o $filepath $auth; then
echo "$SCRIPT: FAIL Unable to download $url"
exit 2
fi

Просмотреть файл

@ -1,97 +0,0 @@
#!/usr/bin/perl
# -*- Mode: Perl; tab-width: 4; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is Mozilla Automated Testing Code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2005
# the Initial Developer. All Rights Reserved.
#
# Contributor(s): Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
use URI::Escape;
use lib "$ENV{HOME}/projects/mozilla.com/test.mozilla.com/www/bin/";
my $hook = shift @ARGV || usage("hook");
my $sitelist = shift @ARGV || usage("sitelist");
open SITES, "<$sitelist" || die "unable to open $sitelist\n";
my @sites = <SITES>;
close SITES;
my $site;
my $chromeurl;
my $testUrl;
print "<html><body>\n";
foreach $site (@sites)
{
chomp $site;
my $spider = "chrome://spider/content/spider.xul?" .
"depth=0&timeout=120&waittime=5&hooksignal=on&autostart=on&autoquit=on&javascripterrors=off&" .
"javascriptwarnings=off&chromeerrors=on&xblerrors=on&csserrors=off&" .
"scripturl=" .
uri_escape("http://" .
$ENV{TEST_HTTP} .
$hook) .
"&" .
"url=" . uri_escape(uri_escape($site));
print "<a href=\"$spider\">$site\</a><br>\n";
}
print "</html>\n";
sub usage
{
my $arg = shift @_;
print <<USAGE;
Error in $arg.
Usage: each-to-html.pl hook sitelist
Create an HTML page containing links to invoke Spider with the
appropriate URL and parameters.
hook - path to userhook script
sitelist - path to text file containing list of sites,
one to a line
USAGE
exit 2;
}
1;

Просмотреть файл

@ -1,380 +0,0 @@
#!/usr/bin/perl
# -*- Mode: Perl; tab-width: 4; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is Mozilla Automated Testing Code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2005
# the Initial Developer. All Rights Reserved.
#
# Contributor(s): Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
use File::Basename;
use File::Copy;
use Cwd;
#my $DEBUG = 0;
#editTalkback("/tmp/test/firefox-1.5-nightly-opt/firefox/firefox", "talkbackid");
1;
sub editTalkback
{
my ($binary, $talkbackid) = @_;
my $rc;
my $signal;
my $home = $ENV{HOME};
my $os = undef;
my $ostype = "";
# prevent replacements due to & in urls
$talkbackid =~ s/&/\\&/g;
# hack around lack of available environment entries in both
# cygwin perl and redhat perl
open OSTYPE, "set | grep OSTYPE |" || die "Unable to open OSTYPE: $!";
while (<OSTYPE>)
{
chomp;
$ostype .= $_;
}
close OSTYPE;
die "Unable to determine OSTYPE" if (!$ostype);
if ($ostype =~ /cygwin/i)
{
$os = "nt";
}
elsif ($ostype =~ /linux/i)
{
$os = "linux";
}
elsif ($ostype =~ /darwin/)
{
$os = "darwin";
}
else
{
die "Unknown Operating System: $ostype";
}
if (!$binary)
{
die "binary argument missing";
}
if (! -f $binary)
{
die "$binary does not exist";
}
my $installpath = dirname($binary);
#print "installpath=$installpath\n";
if (! -d $installpath)
{
die "$installpath does not exist";
}
#
# edit talkback to automatically submit
#
my $talkback=1;
if ( -e "$installpath/extensions/talkback\@mozilla.org/components/master.ini")
{
chdir "$installpath/extensions/talkback\@mozilla.org/components/";
}
elsif ( -e "$installpath/extensions/talkback\@mozilla.org/components/talkback/master.ini")
{
chdir "$installpath/extensions/talkback\@mozilla.org/components/talkback/";
}
elsif ( -e "$installpath/components/master.ini")
{
chdir "$installpath/components";
}
else
{
#print "Talkback not installed.\n";
$talkback=0 ;
}
if ( $talkback == 1 )
{
# edit to automatically send talkback incidents
if ( -e "master.sed")
{
#print "talkback master.ini already edited\n";
}
else
{
#print "editing talkback master.ini in " . cwd() . "\n";
copy("/work/mozilla/mozilla.com/test.mozilla.com/www/bin/master.sed", "master.sed");
system(("sed", "-ibak", "-f", "master.sed", "master.ini"));
$rc = $? >> 8;
$signal = $? & 127;
$dumped = $? & 128;
if ($rc != 0)
{
die "non zero exitcode editing master.ini: $!";
}
if ($signal)
{
#print "signal $signal editing master.ini\n";
}
}
open MASTER, "master.ini" || die "unable to open master.ini: $!";
while (<MASTER>)
{
chomp $_;
if (/VendorID = "([^"]*)"/)
{
($vendorid) = $1;
}
elsif (/ProductID = "([^"]*)"/)
{
($productid) = $1;
}
elsif (/PlatformID = "([^"]*)"/)
{
($platformid) = $1;
}
elsif (/BuildID = "([^"]*)"/)
{
($buildid) = $1;
}
}
close MASTER;
if ("$DEBUG")
{
print "vendorid=$vendorid\n";
print "productid=$productid\n";
print "platformid=$platformid\n";
print "buildid=$buildid\n";
}
my $appdata;
if ($os eq "nt")
{
# get application data directory in windows format
$appdata = $ENV{APPDATA};
if (!$appdata)
{
die "Empty Windows Application Data directory\n";
}
open PATH, "cygpath -d \"$appdata\"|" || die "Unable to open cygpath: $!";
my $path = "";
while (<PATH>)
{
chomp;
$path .= $_;
}
close PATH;
$path =~ s/\\/\\\\/g;
if (!$path)
{
die "Unable to convert Windows Application Data directory to short format\n";
}
# convert application data directory to unix format
$appdata = "";
open PATH, "cygpath -u $path|" || die "unable to open cygpath: $!";
while (<PATH>)
{
chomp;
$appdata .= $_;
}
close PATH;
if (!$appdata)
{
die "Unix format Windows Application Data directory is empty\n";
}
$talkbackdir = "$appdata/Talkback";
}
elsif ($os eq "linux")
{
$talkbackdir="$home/.fullcircle";
}
elsif ($os eq "darwin")
{
$talkbackdir="$home/Library/Application\ Support/FullCircle";
}
else
{
die "unknown os $os";
}
if ( ! -e "$talkbackdir" )
{
if (! mkdir "$talkbackdir", 755)
{
die "unable to create $talkbackdir\n: $!";
}
}
my $talkbackinidir;
if ($os eq "nt")
{
$talkbackinidir="$talkbackdir/$vendorid/$productid/$platformid/$buildid/";
if ( ! -e "$talkbackdir/$vendorid" )
{
if (! mkdir "$talkbackdir/$vendorid", 755)
{
die "unable to make $talkbackdir/$vendorid: $!";
}
}
if (! -e "$talkbackdir/$vendorid/$productid")
{
if (! mkdir "$talkbackdir/$vendorid/$productid", 755)
{
die "unable to make $talkbackdir/$vendorid/$productid: $!";
}
}
if (! -e "$talkbackdir/$vendorid")
{
if (! mkdir "$talkbackdir/$vendorid/$productid/$platformid", 755)
{
die "unable to make $talkbackdir/$vendorid/$productid/$platformid: $!";
}
}
if (! -e "$talkbackdir/$vendorid/$productid/$platformid")
{
if (! mkdir "$talkbackdir/$vendorid/$productid/$platformid", 755)
{
die "unable to make $talkbackdir/$vendorid/$productid/$platformid: $!";
}
}
if ( ! -e "$talkbackdir/$vendorid/$productid/$platformid/$buildid")
{
if (! mkdir "$talkbackdir/$vendorid/$productid/$platformid/$buildid", 755)
{
die "unable to make $talkbackdir/$vendorid/$productid/$platformid/$buildid: $!";
}
}
}
elsif ($os eq "linux")
{
$talkbackinidir="$talkbackdir/$vendorid$productid$platformid$buildid";
if (! -e "$talkbackdir/$vendorid$productid$platformid$buildid" )
{
if (! mkdir "$talkbackdir/$vendorid$productid$platformid$buildid", 755)
{
die "unable to make $talkbackdir/$vendorid$productid$platformid$buildid: $!";
}
}
}
elsif ($os eq "darwin")
{
$talkbackinidir="$talkbackdir/$vendorid$productid$platformid$buildid";
if (! -e "$talkbackdir/$vendorid$productid$platformid$buildid" )
{
if (! mkdir "$talkbackdir/$vendorid$productid$platformid$buildid", 755)
{
die "unable to make $talkbackdir/$vendorid$productid$platformid$buildid: $!";
}
}
}
else
{
die "$os not supported yet";
}
if (! chdir $talkbackinidir)
{
die "unable to cd $talkbackinidir: $!";
}
if (!copy("/work/mozilla/mozilla.com/test.mozilla.com/www/talkback/$os/Talkback.ini", "Talkback.ini"))
{
die "unable to copy Talkback.ini: $!";
}
#print "patching Talkback.ini\n";
if ($os eq "nt")
{
$rc = system(("sed",
"-ibak",
"-e",
"s|URLEdit .*|URLEdit = \"mozqa:$talkbackid\"|",
"Talkback.ini")) & 0xffff;
if ($rc != 0)
{
die "unable to edit Talkback.ini: $!";
}
}
elsif ($os eq "linux")
{
$rc = system(("sed",
"-ibak",
"-e",
"s|URLEditControl .*|URLEditControl = \"mozqa:$talkbackid\"|",
"Talkback.ini")) & 0xffff;
if ($rc != 0)
{
die "unable to edit Talkback.ini: $!";
}
}
elsif ($os eq "darwin")
{
$rc = system(("sed",
"-ibak",
"-e",
"s|URLEditControl .*|URLEditControl = \"mozqa:$talkbackid\"|",
"Talkback.ini")) & 0xffff;
if ($rc != 0)
{
die "unable to edit Talkback.ini: $!";
}
}
else
{
die "$os not supported yet";
}
}
}

Просмотреть файл

@ -1,187 +0,0 @@
#!/bin/bash -e
# -*- Mode: Shell-script; tab-width: 4; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2006.
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
# Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
source $TEST_DIR/bin/library.sh
#
# options processing
#
options="p:b:x:i:d:"
function usage()
{
cat <<EOF
usage:
$SCRIPT -p product -b branch -x executablepath -i talkbackid [-d datafiles]
variable description
=============== ============================================================
-p product required. firefox.
-b branch required. one of 1.8.0 1.8.1
-x executablepath required. directory-tree containing executable named
'product'
-i talkbackid required. identifier to add to talkback url
-d datafiles optional. one or more filenames of files containing
environment variable definitions to be included.
note that the environment variables should have the same names as in the
"variable" column.
EOF
exit 1
}
unset product branch executablepath talkbackid datafiles
while getopts $options optname ;
do
case $optname in
p) product=$OPTARG;;
b) branch=$OPTARG;;
x) executablepath=$OPTARG;;
i) talkbackid=$OPTARG;;
d) datafiles=$OPTARG;;
esac
done
# include environment variables
loaddata $datafiles
if [[ -z "$product" || -z "$branch" || \
-z "$executablepath" || -z "$talkbackid" ]]; then
usage
fi
executable=`get_executable $product $branch $executablepath`
executablepath=`dirname $executable`
# escape & in talkback id to prevent replacements
talkbackid=`echo $talkbackid | sed 's@&@\\\\&@g'`
#
# edit talkback to automatically submit
#
talkback=1
if [[ -e "$executablepath/extensions/talkback@mozilla.org/components/master.ini" ]]; then
cd "$executablepath/extensions/talkback@mozilla.org/components/"
elif [[ -e "$executablepath/extensions/talkback@mozilla.org/components/talkback/master.ini" ]]; then
cd "$executablepath/extensions/talkback@mozilla.org/components/talkback/"
elif [[ -e "$executablepath/components/master.ini" ]]; then
cd "$executablepath/components"
else
# talkback not found
talkback=0
fi
if [[ $talkback -eq 1 ]]; then
# edit to automatically send talkback incidents
if [[ ! -e master.sed ]]; then
#echo "$0: editing talkback master.ini in `pwd`"
cp $TEST_DIR/bin/master.sed .
sed -f master.sed -i.bak master.ini
fi
case $OSID in
nt)
vendorid=`dos2unix < master.ini | grep '^VendorID = "' | sed 's@VendorID = "\([^"]*\)"@\1@'`
productid=`dos2unix < master.ini | grep '^ProductID = "' | sed 's@ProductID = "\([^"]*\)"@\1@'`
platformid=`dos2unix < master.ini | grep '^PlatformID = "' | sed 's@PlatformID = "\([^"]*\)"@\1@'`
buildid=`dos2unix < master.ini | grep '^BuildID = "' | sed 's@BuildID = "\([^"]*\)"@\1@'`
appdata=`cygpath -a -d "$APPDATA"`
talkbackdir="`cygpath -a -u $appdata`/Talkback"
;;
linux)
vendorid=`dos2unix < master.ini | grep '^VendorID = "' | sed 's@VendorID = "\([^"]*\)"@\1@'`
productid=`dos2unix < master.ini | grep '^ProductID = "' | sed 's@ProductID = "\([^"]*\)"@\1@'`
platformid=`dos2unix < master.ini | grep '^PlatformID = "' | sed 's@PlatformID = "\([^"]*\)"@\1@'`
buildid=`dos2unix < master.ini | grep '^BuildID = "' | sed 's@BuildID = "\([^"]*\)"@\1@'`
talkbackdir="$HOME/.fullcircle"
;;
darwin)
# hack around Mac's use of spaces in directory names
vendorid=`grep '^VendorID = "' master.ini | sed 's@VendorID = "\([^"]*\)"@\1@'`
productid=`grep '^ProductID = "' master.ini | sed 's@ProductID = "\([^"]*\)"@\1@'`
platformid=`grep '^PlatformID = "' master.ini | sed 's@PlatformID = "\([^"]*\)"@\1@'`
buildid=`grep '^BuildID = "' master.ini | sed 's@BuildID = "\([^"]*\)"@\1@'`
talkbackdir="$HOME/Library/Application Support/FullCircle"
IFS=:
;;
*)
error "unknown os $OSID" $LINENO
;;
esac
if [[ -z "$talkbackdir" ]]; then
error "empty talkback directory" $LINENO
fi
mkdir -p "$talkbackdir"
case $OSID in
nt)
talkbackinidir="$talkbackdir/$vendorid/$productid/$platformid/$buildid"
;;
linux | darwin )
talkbackinidir="$talkbackdir/$vendorid$productid$platformid$buildid"
;;
esac
if [[ ! -d "$talkbackinidir" ]]; then
create-directory.sh -d "$talkbackinidir" -n
fi
cd $talkbackinidir
cp ${TEST_DIR}/talkback/$OSID/Talkback.ini .
case "$OSID" in
nt)
sed -i.bak "s@URLEdit .*@URLEdit = \"mozqa:$talkbackid\"@" Talkback.ini
;;
linux)
sed -i.bak "s@URLEditControl .*@URLEditControl = \"mozqa:$talkbackid\"@" Talkback.ini
;;
darwin)
sed -i.bak "s@URLEditControl .*@URLEditControl = \"mozqa:$talkbackid\"@" Talkback.ini
;;
*)
error "unknown os=$OSID" $LINENO
esac
fi

Просмотреть файл

@ -1,11 +0,0 @@
--- firefox 2005-08-18 06:28:49.000000000 -0700
+++ firefox.test 2005-08-18 19:39:34.813357354 -0700
@@ -178,7 +178,7 @@
then
echo $dist_bin/run-mozilla.sh $script_args $dist_bin/$MOZILLA_BIN "$@"
fi
-"$dist_bin/run-mozilla.sh" $script_args "$dist_bin/$MOZILLA_BIN" "$@"
+exec "$dist_bin/run-mozilla.sh" $script_args "$dist_bin/$MOZILLA_BIN" "$@"
exitcode=$?
## Stop addon scripts

Просмотреть файл

@ -1,20 +0,0 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Get Build Information</title>
<script type="text/javascript" src="quit.js"></script>
<script type="text/javascript" src="appinfo.js"></script>
</head>
<body>
<h1>Get Build Information</h1>
<script type="text/javascript">
var appInfoSource = (new AppInfo()).toSource();
document.write(appInfoSource);
dump(appInfoSource);
goQuitApplication();
</script>
</body>
</html>

Просмотреть файл

@ -1,43 +0,0 @@
#!/usr/bin/perl -w
# -*- Mode: Perl; tab-width: 4; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is Mozilla Automated Testing Code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2009
# the Initial Developer. All Rights Reserved.
#
# Contributor(s): Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
use XML::Simple;
die "usage: get-extension-uuid.pl installrdfpath" if (! $ARGV[0]);
my $rdf = XMLin($ARGV[0], NSExpand => 1);
print $rdf->{"{http://www.w3.org/1999/02/22-rdf-syntax-ns#}Description"}->{"{http://www.mozilla.org/2004/em-rdf#}id"};

Просмотреть файл

@ -1,9 +0,0 @@
dashes = ----------
msg = @echo "$(1)": $(dashes) $(2) $(dashes)
prepend = sed 's/^/$(1): /'
html2text = lynx --dump $(1)
TEST_PROFILE?=TEST
dumpvars = echo TARGETS=$$targets && for var in `echo $${!TEST_*}`; do echo $${var}=$${!var}; done

Просмотреть файл

@ -1,161 +0,0 @@
#!/bin/bash -e
# -*- Mode: Shell-script; tab-width: 4; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2006.
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
# Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
source $TEST_DIR/bin/library.sh
#
# options processing
#
options="p:b:x:f:d:"
function usage()
{
cat <<EOF
usage:
$SCRIPT -p product -b branch -x executablepath -f filename [-d datafiles]
variable description
=============== ============================================================
-p product required. firefox.
-b branch required. supported branch. see library.sh
-x executablepath required. directory where to install build
-f filename required. path to filename where installer is stored
-d datafiles optional. one or more filenames of files containing
environment variable definitions to be included.
note that the environment variables should have the same names as in the
"variable" column.
EOF
exit 1
}
unset product branch executablepath filename datafiles
while getopts $options optname ;
do
case $optname in
p) product=$OPTARG;;
b) branch=$OPTARG;;
x) executablepath=$OPTARG;;
f) filename=$OPTARG;;
d) datafiles=$OPTARG;;
esac
done
# include environment variables
loaddata $datafiles
if [[ -z "$product" || -z "$branch" || -z "$executablepath" || -z "$filename" ]]
then
usage
fi
$TEST_DIR/bin/uninstall-build.sh -p "$product" -b "$branch" -x "$executablepath"
$TEST_DIR/bin/create-directory.sh -d "$executablepath" -n
filetype=`file $filename`
if [[ $OSID == "nt" ]]; then
if echo $filetype | grep -iq windows; then
chmod u+x "$filename"
if [[ $branch == "1.8.0" ]]; then
$filename -ms -hideBanner -dd `cygpath -a -w "$executablepath"`
else
$filename /S /D=`cygpath -a -w "$executablepath"`
fi
elif echo $filetype | grep -iq 'zip archive'; then
unzip -o -d "$executablepath" "$filename"
find $executablepath -name '*.exe' | xargs chmod u+x
find $executablepath -name '*.dll' | xargs chmod u+x
else
error "$unknown file type $filetype" $LINENO
fi
else
case "$OSID" in
linux)
if echo $filetype | grep -iq 'bzip2'; then
tar -jxvf $filename -C "$executablepath"
elif echo $filetype | grep -iq 'gzip'; then
tar -zxvf $filename -C "$executablepath"
else
error "unknown file type $filetype" $LINENO
fi
;;
darwin)
# assumes only 1 mount point
mkdir -p /tmp/sisyphus/mount
if ! hdiutil attach -mountpoint /tmp/sisyphus/mount $filename; then
error "mounting disk image" $LINENO
fi
for app in /tmp/sisyphus/mount/*.app; do
cp -R $app $executablepath
done
# requires 10.4 or later
hdiutil detach /tmp/sisyphus/mount
;;
esac
#
# patch unix-like startup scripts to exec instead of
# forking new processes
#
executable=`get_executable $product $branch $executablepath`
executabledir=`dirname $executable`
# patch to use exec to prevent forked processes
cd "$executabledir"
if [ -e "$product" ]; then
echo "$SCRIPT: patching $product"
cp $TEST_DIR/bin/$product.diff .
patch -N -p0 < $product.diff
fi
if [ -e run-mozilla.sh ]; then
echo "$SCRIPT: patching run-mozilla.sh"
cp $TEST_DIR/bin/run-mozilla.diff .
patch -N -p0 < run-mozilla.diff
fi
fi

Просмотреть файл

@ -1,15 +0,0 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Install Extensions - 1</title>
<script type="text/javascript" src="quit.js"></script>
</head>
<body>
<h1>Install Extensions - 1</h1>
<p>
First restart to install extensions...
</p>
<script type="text/javascript">
setTimeout("goQuitApplication()", 10000);
</script>
</body>
</html>

Просмотреть файл

@ -1,146 +0,0 @@
#!/bin/bash -e
# -*- Mode: Shell-script; tab-width: 4; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2005.
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
# Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
source $TEST_DIR/bin/library.sh
TEST_STARTUP_TRIES=${TEST_STARTUP_TRIES:-3}
#
# options processing
#
options="p:b:x:N:E:d:"
function usage()
{
cat <<EOF
usage:
$SCRIPT -p product -b branch -x executablepath -N profilename -E extensiondir
[-d datafiles]
variable description
=============== ============================================================
-p product required. firefox.
-b branch required. supported branch. see library.sh
-x executablepath required. directory-tree containing executable named
'product'
-N profilename required. profile name
-E extensiondir required. path to directory containing xpis to be installed
-d datafiles optional. one or more filenames of files containing
environment variable definitions to be included.
note that the environment variables should have the same names as in the
"variable" column.
EOF
exit 1
}
unset product branch executablepath profilename extensiondir datafiles
while getopts $options optname ;
do
case $optname in
p) product=$OPTARG;;
b) branch=$OPTARG;;
x) executablepath=$OPTARG;;
N) profilename=$OPTARG;;
E) extensiondir=$OPTARG;;
d) datafiles=$OPTARG;;
esac
done
# include environment variables
loaddata $datafiles
if [[ -z "$product" || -z "$branch" || \
-z "$executablepath" || -z "$profilename" || -z "$extensiondir" ]]; then
usage
fi
checkProductBranch $product $branch
if echo $profilename | egrep -qiv '[a-z0-9_]'; then
error "profile name must consist of letters, digits or _" $LINENO
fi
executable=`get_executable $product $branch $executablepath`
executableextensiondir=`dirname $executable`/extensions
# create directory to contain installed extensions
if [[ ! -d /tmp/sisyphus/extensions ]]; then
create-directory.sh -n -d /tmp/sisyphus/extensions
fi
for extensionloc in $extensiondir/all/*.xpi $extensiondir/$OSID/*.xpi; do
if [[ $extensionloc == "$extensiondir/all/*.xpi" ]]; then
continue
fi
if [[ $extensionloc == "$extensiondir/$OSID/*.xpi" ]]; then
continue
fi
extensionname=`xbasename $extensionloc .xpi`
extensioninstalldir=/tmp/sisyphus/extensions/$extensionname
if [[ "$OSID" == "nt" ]]; then
extensionosinstalldir=`cygpath -a -w $extensioninstalldir`
else
extensionosinstalldir=$extensioninstalldir
fi
echo installing $extensionloc
# unzip the extension if it does not already exist.
if [[ ! -e $extensioninstalldir ]]; then
create-directory.sh -n -d $extensioninstalldir
unzip -d $extensioninstalldir $extensionloc
fi
extensionuuid=`perl $TEST_DIR/bin/get-extension-uuid.pl $extensioninstalldir/install.rdf`
if [[ ! -e $executableextensiondir/$extensionuuid ]]; then
echo $extensionosinstalldir > $executableextensiondir/$extensionuuid
fi
done
# restart to make extension manager happy
if ! $TEST_DIR/bin/timed_run.py ${TEST_STARTUP_TIMEOUT} "install extensions - first restart" \
$executable -P $profilename "http://${TEST_HTTP}/bin/install-extensions-1.html"; then
echo "Ignoring 1st failure to load the install-extensions page"
fi
exit 0

Просмотреть файл

@ -1,100 +0,0 @@
#!/bin/bash -e
# -*- Mode: Shell-script; tab-width: 4; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2006.
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
# Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
source $TEST_DIR/bin/library.sh
#
# options processing
#
options="p:b:x:D:d:"
function usage()
{
cat <<EOF
usage:
$SCRIPT -p product -b branch -x executablepath -D directory [-d datafiles]
variable description
=============== ============================================================
-p product required. firefox.
-b branch required. one of supported branches. see library.sh
-x executablepath required. path to browser executable
-D directory required. path to location of plugins/components
-d datafiles optional. one or more filenames of files containing
environment
variable definitions to be included.
note that the environment variables should have the same names as in the
"variable" column.
EOF
exit 1
}
unset product branch executablepath directory datafiles
while getopts $options optname ;
do
case $optname in
p) product=$OPTARG;;
b) branch=$OPTARG;;
x) executablepath=$OPTARG;;
D) directory=$OPTARG;;
d) datafiles=$OPTARG;;
esac
done
# include environment variables
loadata $datafiles
if [[ -z "$product" || -z "$branch" || \
-z "$executablepath" || -z "$directory" ]]; then
usage
fi
checkProductBranch $product $branch
executable=`get_executable $product $branch $executablepath`
executablepath=`dirname $executable`
#
# install plugins and components
#
echo "$SCRIPT: installing plugins from $directory/ in $executablepath/"
cp -r "$directory/$OSID/" "$executablepath/"

Просмотреть файл

@ -1,458 +0,0 @@
# -*- Mode: Shell-script; tab-width: 2; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2006.
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
# Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
# This script contains a number of variables, functions, etc which
# are reused across a number of scripts. It should be included in each
# script prior to any other commands as follows:
#
# source $TEST_DIR/bin/library.sh
if [[ -n "$DEBUG" ]]; then
echo "calling $0 $@" 1>&2
fi
# export variables
set -a
# in the event of an untrapped script error tail the test log,
# if it exists, to stderr then echo a FATAL ERROR message to the
# test log and stderr.
function _err()
{
local rc=$?
debug "_err: $0"
if [[ "$rc" -gt 0 ]]; then
if [[ -n "$TEST_LOG" ]]; then
echo -e "\nFATAL ERROR in $0 exit code $rc\n" >> $TEST_LOG
else
echo -e "\nFATAL ERROR in $0 exit code $rc\n" 1>&2
fi
fi
exit $rc
}
trap "_err" ERR
function _exit()
{
local rc=$?
local currscript=`get_scriptname $0`
debug "_exit: $0"
if [[ "$rc" -gt 0 && -n "$TEST_LOG" && "$SCRIPT" == "$currscript" ]]; then
# only tail the log once at the top level script
tail $TEST_LOG 1>&2
fi
}
trap "_exit" EXIT
# error message
# output error message end exit 2
error()
{
local message=$1
local lineno=$2
debug "error: $0:$LINENO"
echo -e "FATAL ERROR in script $0:$lineno $message\n" 1>&2
if [[ "$0" == "-bash" || "$0" == "bash" ]]; then
return 0
fi
exit 2
}
if [[ -z "$LIBRARYSH" ]]; then
# skip remainder of script if it has already included
checkProductBranch()
{
local product=$1
local branch=$2
case $product in
js|firefox)
;;
*)
error "product \"$product\" must be one of js or firefox" $LINENO
esac
case $branch in
1.8.0|1.8.1|1.9.0|1.9.1|1.9.2|1.9.3)
;;
*)
error "branch \"$branch\" must be one of 1.8.0 1.8.1 1.9.0 1.9.1 1.9.2 1.9.3" $LINENO
esac
}
# Darwin 8.11.1's |which| does not return a non-zero exit code if the
# program can not be found. Therefore, kludge around it.
findprogram()
{
local program=$1
local location=`which $program 2>&1`
if [[ ! -x $location ]]; then
return 1
fi
return 0
}
debug()
{
if [[ -n "$DEBUG" ]]; then
echo "DEBUG: $@"
fi
}
# console msg
#
# output message to console, ie. stderr
console()
{
echo -e "$@" 1>&2
}
# loaddata
#
# load data files into environment
loaddata()
{
local datafiles="$@"
local datafile
if [[ -n "$datafiles" ]]; then
for datafile in $datafiles; do
if [[ ! -e "$datafile" ]]; then
error "datafile $datafile does not exist"
fi
cat $datafile | sed 's|^|data: |'
if ! source $datafile; then
error "Unable to load data file $datafile"
fi
done
fi
}
# dumpenvironment
#
# output environment to stdout
dumpenvironment()
{
set | grep '^[A-Z]' | sed 's|^|environment: |'
}
dumphardware()
{
echo "uname -a:`uname -a`"
echo "uname -s:`uname -s`"
echo "uname -n:`uname -n`"
echo "uname -r:`uname -r`"
echo "uname -v:`uname -v`"
echo "uname -m:`uname -m`"
echo "uname -p:`uname -p`"
if [[ "$OSID" != "darwin" ]]; then
echo "uname -i:`uname -i`"
echo "uname -o:`uname -o`"
fi
ulimit -a | sed 's|^|ulimit:|'
if [[ -e /proc/cpuinfo ]]; then
cat /proc/cpuinfo | sed 's|^|cpuinfo:|'
fi
if [[ -e /proc/meminfo ]]; then
cat /proc/meminfo | sed 's|^|meminfo:|'
fi
if findprogram system_profiler; then
system_profiler | sed 's|^|system_profiler:|'
fi
}
# dumpvars varname1, ...
#
# dumps name=value pairs to stdout for each variable named
# in argument list
dumpvars()
{
local argc=$#
local argn=1
while [ $argn -le $argc ]; do
local var=${!argn}
echo ${var}=${!var}
let argn=argn+1
done
}
# get_executable product branch directory
#
# writes path to product executable to stdout
get_executable()
{
local get_executable_product="$1"
local get_executable_branch="$2"
local get_executable_directory="$3"
if [[ -z "$get_executable_product" || \
-z "$get_executable_branch" || \
-z "$get_executable_directory" ]]; then
error "usage: get_executable product branch directory"
elif [[ ! -d "$get_executable_directory" ]]; then
error "get_executable: executable directory \"$get_executable_directory\" does not exist"
else
# should use /u+x,g+x,a+x but mac os x uses an obsolete find
# filter the output to remove extraneous file in dist/bin for
# cvs builds on mac os x.
local executable=`(
get_executable_name="$get_executable_product${EXE_EXT}"
case "$OSID" in
darwin)
get_executable_filter="Contents/MacOS/$get_executable_product"
;;
*)
get_executable_filter="$get_executable_product"
;;
esac
if find "$get_executable_directory" -perm +111 -type f \
-name "$get_executable_name" | \
grep "$get_executable_filter"; then
true
fi
)`
if [[ -z "$executable" ]]; then
error "get_executable $product $branch $executablepath returned empty path" $LINENO
fi
if [[ ! -x "$executable" ]]; then
error "executable \"$executable\" is not executable" $LINENO
fi
echo $executable
fi
}
function get_scriptname()
{
debug "\$0: $0"
local script
if [[ "$0" == "-bash" || "$0" == "bash" ]]; then
script="library.sh"
else
script=`basename $0`
fi
echo $script
}
xbasename()
{
local path=$1
local suffix=$2
local result
if ! result=`basename -s $suffix $path 2>&1`; then
result=`basename $path $suffix`
fi
echo $result
}
LIBRARYSH=1
MALLOC_CHECK_=${MALLOC_CHECK_:-2}
ulimit -c 0
# set path to make life easier
if ! echo ${PATH} | grep -q $TEST_DIR/bin; then
PATH=$TEST_DIR/bin:$PATH
fi
# force en_US locale
if ! echo "$LANG" | grep -q en_US; then
LANG=en_US
LC_TIME=en_US
fi
# handle sorting non-ascii logs on mac os x 10.5.3
LC_ALL=C
TEST_TIMEZONE=`date +%z`
# save starting directory
STARTDIR=`pwd`
# location of the script.
SCRIPTDIR=`dirname $0`
# don't attach to running instance
MOZ_NO_REMOTE=1
# don't restart
NO_EM_RESTART=1
# bypass profile manager
MOZ_BYPASS_PROFILE_AT_STARTUP=1
# ah crap handler timeout
MOZ_GDB_SLEEP=${MOZ_GDB_SLEEP:-10}
# no airbag
unset MOZ_AIRBAG
#MOZ_CRASHREPORTER_DISABLE=${MOZ_CRASHREPORTER_DISABLE:-1}
MOZ_CRASHREPORTER_NO_REPORT=${MOZ_CRASHREPORTER_NO_REPORT:-1}
#leak gauge
#NSPR_LOG_MODULES=DOMLeak:5,DocumentLeak:5,nsDocShellLeak:5
TEST_MEMORY="`memory.pl`"
# debug msg
#
# output debugging message to stdout if $DEBUG is set
DEBUG=${DEBUG:-""}
SCRIPT=`get_scriptname $0`
if [[ -z "$TEST_DIR" ]]; then
# get the "bin" directory
TEST_DIR=`dirname $0`
# get the "bin" directory parent
TEST_DIR=`dirname $TEST_DIR`
if [[ ! -e "${TEST_DIR}/bin/library.sh" ]]; then
error "BAD TEST_DIR $TEST_DIR"
fi
fi
TEST_HTTP=${TEST_HTTP:-test.mozilla.com}
TEST_STARTUP_TIMEOUT=${TEST_STARTUP_TIMEOUT:-30}
TEST_MACHINE=`uname -n`
kernel_name=`uname -s`
if [[ $kernel_name == 'Linux' ]]; then
OSID=linux
EXE_EXT=
TEST_KERNEL=`uname -r | sed 's|\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*|\1.\2.\3|'`
TEST_PROCESSORTYPE=`cat /proc/cpuinfo | grep vendor | uniq | sed 's|vendor.* : \(.*\)|\1|'`
TIMECOMMAND='/usr/bin/time -f "Elapsed time %e seconds, User %U seconds, System %S seconds, CPU %P, Memory: %M"'
if echo $TEST_PROCESSORTYPE | grep -q 'Intel'; then
TEST_PROCESSORTYPE=intel
elif echo $TEST_PROCESSORTYPE | grep -q 'AMD'; then
TEST_PROCESSORTYPE=amd
fi
if uname -p | grep -q '64$'; then
TEST_PROCESSORTYPE=${TEST_PROCESSORTYPE}64
else
TEST_PROCESSORTYPE=${TEST_PROCESSORTYPE}32
fi
elif [[ $kernel_name == 'Darwin' ]]; then
OSID=darwin
EXE_EXT=
TEST_KERNEL=`uname -r`
TEST_PROCESSORTYPE=`uname -p`
TIMEFORMAT="Elapsed time %E seconds, User %U seconds, System %S seconds, CPU %P%"
TIMECOMMAND=time
if [[ $TEST_PROCESSORTYPE == "i386" ]]; then
TEST_PROCESSORTYPE=intel
fi
# assume 32bit for now...
TEST_PROCESSORTYPE=${TEST_PROCESSORTYPE}32
elif echo $kernel_name | grep -q CYGWIN; then
OSID=nt
EXE_EXT=".exe"
TEST_KERNEL=`echo $kernel_name | sed 's|[^.0-9]*\([.0-9]*\).*|\1|'`
TEST_PROCESSORTYPE=`cat /proc/cpuinfo | grep vendor | uniq | sed 's|vendor.* : \(.*\)|\1|'`
TIMECOMMAND='/usr/bin/time -f "Elapsed time %e seconds, User %U seconds, System %S seconds, CPU %P, Memory: %M"'
if echo $TEST_PROCESSORTYPE | grep -q 'Intel'; then
TEST_PROCESSORTYPE=intel
elif echo $TEST_PROCESSORTYPE | grep -q 'AMD'; then
TEST_PROCESSORTYPE=amd
fi
if uname -p | grep -q '64$'; then
TEST_PROCESSORTYPE=${TEST_PROCESSORTYPE}64
else
TEST_PROCESSORTYPE=${TEST_PROCESSORTYPE}32
fi
else
error "Unknown OS $kernel_name" $LINENO
fi
case $TEST_PROCESSORTYPE in
*32)
if [[ $TEST_MEMORY -gt 4 ]]; then
TEST_MEMORY=4
fi
;;
esac
# no dialogs on asserts
XPCOM_DEBUG_BREAK=${XPCOM_DEBUG_BREAK:-warn}
if [[ -z "$BUILDDIR" ]]; then
case `uname -s` in
MINGW*)
export BUILDDIR=/c/work/mozilla/builds
;;
*)
export BUILDDIR=/work/mozilla/builds
;;
esac
fi
fi

Просмотреть файл

@ -1,3 +0,0 @@
s/DisableDontAsk = 0/DisableDontAsk = 1/
s/DisableUI = 0/DisableUI = 1/
s/DisableWizard = 0/DisableWizard = 1/

Просмотреть файл

@ -1,182 +0,0 @@
#!/usr/bin/perl -w
# -*- Mode: Perl; tab-width: 4; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is Mozilla Automated Testing Code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2008
# the Initial Developer. All Rights Reserved.
#
# Contributor(s): Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
my $K = 1024;
my $M = 1024 * $K;
my $G = 1024 * $M;
my $tmpmemory;
my $unitmemory;
my $raw_memory = 0;
my $swap_memory = 0;
my $ulimit_maxmemory = 0;
my $ulimit_virtualmemory = 0;
my $test_memory = 0;
# hack around lack of available environment entries in both
# cygwin perl and redhat perl.
# Note the bash -c set is required for ubuntu 9.04 otherwise the
# OSTYPE file will return no data. I don't know why.
open OSTYPE, "bash -c set | grep OSTYPE |" || die "Unable to open OSTYPE: $!";
while (<OSTYPE>)
{
chomp;
$ostype .= $_;
}
close OSTYPE;
die "Unable to determine OSTYPE" if (!$ostype);
if ($ostype =~ /linux/i || $ostype =~ /cygwin/i)
{
open MEMINFO, "/proc/meminfo" or die "Unable to open /proc/meminfo";
while (<MEMINFO>)
{
if ( ($tmpmemory, $unitmemory) = $_ =~ /MemTotal:\s*([0-9]*) (kB)/)
{
die "Unknown memory unit meminfo MemTotal $unitmemory" if $unitmemory ne "kB";
$tmpmemory *= 1024;
$raw_memory = int($tmpmemory / $G + .5);
}
elsif ( ($tmpmemory, $unitmemory) = $_ =~ /SwapTotal:\s*([0-9]*) (kB)/)
{
die "Unknown memory unit meminfo SwapTotal $unitmemory" if $unitmemory ne "kB";
$tmpmemory *= 1024;
$swap_memory = int($tmpmemory / $G + .5);
}
}
close MEMINFO;
}
elsif ($ostype =~ /darwin/i)
{
open SYSTEMPROFILER, "system_profiler|" or die "Unable to open system_profiler";
while (<SYSTEMPROFILER>)
{
if ( ($tmpmemory, $unitmemory) = $_ =~ /\s*Memory:\s*([0-9]*) ([a-zA-Z]*)/)
{
if ($unitmemory =~ /KB/)
{
$tmpmemory *= $K;
}
elsif ($unitmemory =~ /MB/)
{
$tmpmemory *= $M;
}
elsif ($unitmemory =~ /GB/)
{
$tmpmemory *= $G;
}
else
{
die "Unknown memory unit system_profiler $unitmemory";
}
$raw_memory = int($tmpmemory / $G + .5);
}
}
close SYSTEMPROFILER;
}
else
{
die "Unknown Operating System: $ostype";
}
open ULIMIT, 'bash -c "ulimit -a"|' or die "Unable to open ulimit -a";
while (<ULIMIT>)
{
if ( ($unitmemory, $tmpmemory) = $_ =~ /max memory size + \(([a-zA-Z]*), \-m\) ([0-9]*)/)
{
if ($tmpmemory eq "")
{
$tmpmemory = 0;
}
if ($unitmemory =~ /kbytes/i)
{
$tmpmemory *= $K;
}
elsif ($unitmemory =~ /mbytes/i)
{
$tmpmemory *= $M;
}
elsif ($unitmemory =~ /gbytes/i)
{
$tmpmemory *= $G;
}
else
{
die "Unknown memory unit ulimit $unitmemory";
}
$ulimit_maxmemory = int($tmpmemory / $G + .5);
}
elsif ( ($unitmemory, $tmpmemory) = $_ =~ /virtual memory + \(([a-zA-Z]*), \-v\) ([0-9]*)/)
{
if ($tmpmemory eq "")
{
$tmpmemory = 0;
}
if ($unitmemory =~ /kbytes/i)
{
$tmpmemory *= $K;
}
elsif ($unitmemory =~ /mbytes/i)
{
$tmpmemory *= $M;
}
elsif ($unitmemory =~ /gbytes/i)
{
$tmpmemory *= $G;
}
else
{
die "Unknown virtual memory unit ulimit $unitmemory";
}
$ulimit_virtualmemory = int($tmpmemory / $G + .5);
}
}
close ULIMIT;
$test_memory = $ulimit_virtualmemory > 0 ? $ulimit_virtualmemory : ($raw_memory + $swap_memory);
print "$test_memory";

Просмотреть файл

@ -1,72 +0,0 @@
#!/usr/bin/perl -w
# -*- Mode: Perl; tab-width: 4; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is Mozilla Automated Testing Code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2008
# the Initial Developer. All Rights Reserved.
#
# Contributor(s): Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
# Calculate a relative speed measurement based on
# iterating over a simple loop in perl. Print the
# result as millions of iterations per cpu second.
sub mips
{
my $tries = 3; # repeat count to get average
my $m = 1000000; # scale to million iterations/second
my $l = 10000000; # number of iterations to time
my $cpu = 0; # cpu time accumlator
my $dummy = 0; # dummy variable to prevent optimizations
my $i;
my $start;
my $stop;
my $a;
for ($a = 0; $a < $tries; ++$a)
{
$start = (times)[0];
for ($i = 0; $i < $l; ++$i)
{
$dummy += $i;
}
$stop = (times)[0];
$cpu += $stop - $start;
}
$cpu /= $tries;
print "" . int($l/($cpu*$m)) . "\n";
return $dummy; # reuse dummy variable
}
mips;

Просмотреть файл

@ -1,143 +0,0 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; -*- */
/* ***** BEGIN LICENSE BLOCK *****
* Version: MPL 1.1/GPL 2.0/LGPL 2.1
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* The Original Code is The Original Code is Mozilla Automated Testing Code
*
* The Initial Developer of the Original Code is
* Mozilla Corporation.
* Portions created by the Initial Developer are Copyright (C) 2005
* the Initial Developer. All Rights Reserved.
*
* Contributor(s): Bob Clary <bob@bclary.com>
*
* Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 2 or later (the "GPL"), or
* the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
* in which case the provisions of the GPL or the LGPL are applicable instead
* of those above. If you wish to allow use of your version of this file only
* under the terms of either the GPL or the LGPL, and not to allow others to
* use your version of this file under the terms of the MPL, indicate your
* decision by deleting the provisions above and replace them with the notice
* and other provisions required by the GPL or the LGPL. If you do not delete
* the provisions above, a recipient may use your version of this file under
* the terms of any one of the MPL, the GPL or the LGPL.
*
* ***** END LICENSE BLOCK ***** */
/*
From mozilla/toolkit/content
These files did not have a license
*/
function canQuitApplication()
{
var os = Components.classes["@mozilla.org/observer-service;1"]
.getService(Components.interfaces.nsIObserverService);
if (!os)
{
return true;
}
try
{
var cancelQuit = Components.classes["@mozilla.org/supports-PRBool;1"]
.createInstance(Components.interfaces.nsISupportsPRBool);
os.notifyObservers(cancelQuit, "quit-application-requested", null);
// Something aborted the quit process.
if (cancelQuit.data)
{
return false;
}
}
catch (ex)
{
}
os.notifyObservers(null, "quit-application-granted", null);
return true;
}
function goQuitApplication()
{
const privs = 'UniversalPreferencesRead UniversalPreferencesWrite ' +
'UniversalXPConnect';
try
{
netscape.security.PrivilegeManager.enablePrivilege(privs);
}
catch(ex)
{
throw('goQuitApplication: privilege failure ' + ex);
}
if (!canQuitApplication())
{
return false;
}
const kAppStartup = '@mozilla.org/toolkit/app-startup;1';
const kAppShell = '@mozilla.org/appshell/appShellService;1';
var appService;
var forceQuit;
if (kAppStartup in Components.classes)
{
appService = Components.classes[kAppStartup].
getService(Components.interfaces.nsIAppStartup);
forceQuit = Components.interfaces.nsIAppStartup.eForceQuit;
}
else if (kAppShell in Components.classes)
{
appService = Components.classes[kAppShell].
getService(Components.interfaces.nsIAppShellService);
forceQuit = Components.interfaces.nsIAppShellService.eForceQuit;
}
else
{
throw 'goQuitApplication: no AppStartup/appShell';
}
var windowManager = Components.
classes['@mozilla.org/appshell/window-mediator;1'].getService();
var windowManagerInterface = windowManager.
QueryInterface(Components.interfaces.nsIWindowMediator);
var enumerator = windowManagerInterface.getEnumerator(null);
while (enumerator.hasMoreElements())
{
var domWindow = enumerator.getNext();
if (("tryToClose" in domWindow) && !domWindow.tryToClose())
{
return false;
}
domWindow.close();
}
try
{
appService.quit(forceQuit);
}
catch(ex)
{
throw('goQuitApplication: ' + ex);
}
return true;
}

Просмотреть файл

@ -1,11 +0,0 @@
--- run-mozilla.sh 2004-04-18 10:17:09.000000000 -0400
+++ run-mozilla.sh.test 2005-08-18 22:27:42.906250000 -0400
@@ -163,7 +163,7 @@
##
## Run the program
##
- "$prog" ${1+"$@"}
+ exec "$prog" ${1+"$@"}
exitcode=$?
if [ "$DEBUG_CORE_FILES" ]
then

Просмотреть файл

@ -1,6 +0,0 @@
#!/bin/bash -e
# -*- Mode: Shell-script; tab-width: 4; indent-tabs-mode: nil; -*-
for var in `echo ${!TEST_*}`; do
echo ${var}=${!var} >> $TEST_LOG
done

Просмотреть файл

@ -1,483 +0,0 @@
#!/bin/bash
# -*- Mode: Shell-script; tab-width: 4; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2006.
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
# Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
if [[ -z "$LIBRARYSH" ]]; then
source $TEST_DIR/bin/library.sh
fi
export MOZ_CVS_FLAGS="-z3 -q"
export MOZILLA_OFFICIAL=1
export BUILD_OFFICIAL=1
if [[ -z "$CVSROOT" ]]; then
if grep -q buildbot@qm ~/.ssh/id_dsa.pub; then
export CVSROOT=:ext:unittest@cvs.mozilla.org:/cvsroot
export CVS_RSH=ssh
else
export CVSROOT=:pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot
fi
fi
#
# options processing
#
options="p:b:T:e:"
usage()
{
cat <<EOF
usage: set-build-env.sh -p product -b branch -T buildtype [-e extra]
-p product one of js firefox.
-b branch one of supported branches. see library.sh
-T buildtype one of opt debug
-e extra extra qualifier to pick mozconfig and tree
EOF
}
myexit()
{
myexit_status=$1
case $0 in
*bash*)
# prevent "sourced" script calls from
# exiting the current shell.
break 99;;
*)
exit $myexit_status;;
esac
}
for step in step1; do # dummy loop for handling exits
unset product branch buildtype extra
while getopts $options optname ;
do
case $optname in
p) product=$OPTARG;;
b) branch=$OPTARG;;
T) buildtype=$OPTARG;;
e) extra="-$OPTARG";;
esac
done
# include environment variables
datafiles=$TEST_DIR/data/$product,$branch$extra,$buildtype.data
if [[ -e "$datafiles" ]]; then
loaddata $datafiles
fi
# echo product=$product, branch=$branch, buildtype=$buildtype, extra=$extra
if [[ -z "$product" || -z "$branch" || -z "$buildtype" ]]; then
echo -n "missing"
if [[ -z "$product" ]]; then
echo -n " -p product"
fi
if [[ -z "$branch" ]]; then
echo -n " -b branch"
fi
if [[ -z "$buildtype" ]]; then
echo -n " -T buildtype"
fi
usage
myexit 1
fi
if [[ $branch == "1.8.0" ]]; then
export BRANCH_CO_FLAGS=${BRANCH_CO_FLAGS:--r MOZILLA_1_8_0_BRANCH}
elif [[ $branch == "1.8.1" ]]; then
export BRANCH_CO_FLAGS=${BRANCH_CO_FLAGS:--r MOZILLA_1_8_BRANCH}
elif [[ $branch == "1.9.0" ]]; then
export BRANCH_CO_FLAGS="";
elif [[ $branch == "1.9.1" ]]; then
TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/releases/mozilla-1.9.1}
export BRANCH_CO_FLAGS="";
elif [[ $branch == "1.9.2" ]]; then
TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/releases/mozilla-1.9.2}
export BRANCH_CO_FLAGS="";
elif [[ $branch == "1.9.3" ]]; then
TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/mozilla-central}
export BRANCH_CO_FLAGS="";
else
echo "Unknown branch: $branch"
myexit 1
fi
if [[ -n "$MOZ_CO_DATE" ]]; then
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
# use BUILDPATH to record the PATH to be used during build
# related scripts. This is used to pass MSYS specific PATHs
# to mozilla-build on Windows.
export BUILDPATH="$PATH"
case $OSID in
nt)
# On Windows, Sisyphus is run under Cygwin, so the OS will be CYGWIN
# regardless. Check if mozilla-build has been installed to the default
# location, and if so, set up to call mozilla-build to perform the actual
# build steps.
#
# To make life simpler, change the mount point of the C: drive in cygwin from
# /cygdrive/c to /c via mount -c /
# which will make paths to non cygwin and non msys locations identical between cygwin
# and msys, e.g. /c/work will work in both to point to c:\work
#
# It is also necessary to set the /tmp path in cygwin and msys to point to the
# same physical directory.
#
# Note that all commands *except* make client.mk will be performed in cygwin.
#
# Note that when calling a command string of the form $buildbash --login -c "command",
# you must cd to the desired directory as part of "command" since msys will set the
# directory to the home directory prior to executing the command.
export mozillabuild=${mozillabuild:-/c/mozilla-build}
export PYTHON=$mozillabuild/python25/python
export BUILDDIR=${BUILDDIR:-/c/work/mozilla/builds}
export buildbash="$mozillabuild/msys/bin/bash"
export bashlogin=--login # this is for msys' bash.
# determine installed compilers
export MSVCROOTKEY="/machine/SOFTWARE/Microsoft/VisualStudio"
export MSVC6KEY="$MSVCROOTKEY/6.0/Setup/Microsoft Visual C++"
export MSVC71KEY="$MSVCROOTKEY/7.1/Setup/VC"
export MSVC8KEY="$MSVCROOTKEY/8.0/Setup/VC"
export MSVC8EXPRESSKEY="/machine/SOFTWARE/Microsoft/VCExpress/8.0/Setup/VC"
export MSVC9KEY="$MSVCROOTKEY/9.0/Setup/VC"
export MSVC9EXPRESSKEY="/machine/SOFTWARE/Microsoft/VCExpress/9.0/Setup/VC"
if [[ -z "$VC6DIR" ]]; then
export VC6DIR=`regtool get "$MSVC6KEY/ProductDir" 2> /dev/null`
fi
if [[ -z "$VC71DIR" ]]; then
export VC71DIR=`regtool get "$MSVC71KEY/ProductDir" 2> /dev/null`
fi
if [[ -z "$VC8DIR" ]]; then
export VC8DIR=`regtool get "$MSVC8KEY/ProductDir" 2> /dev/null`
fi
if [[ -z "$VC8EXPRESSDIR" ]]; then
export VC8EXPRESSDIR=`regtool get "$MSVC8EXPRESSKEY/ProductDir" 2> /dev/null`
fi
if [[ -z "$VC9DIR" ]]; then
export VC9DIR=`regtool get "$MSVC9KEY/ProductDir" 2> /dev/null`
fi
if [[ -z "$VC9EXPRESSDIR" ]]; then
export VC9EXPRESSDIR=`regtool get "$MSVC9EXPRESSKEY/ProductDir" 2> /dev/null`
fi
case $branch in
1.8.0)
# only msvc6 supported
if [[ -n "$VC6DIR" ]]; then
startbat=start-msvc6.bat
fi
;;
1.8.1)
# msvc6 official, vc7.1 (2003) supported
if [[ -n "$VC6DIR" ]]; then
startbat=start-msvc6.bat
elif [[ -n "$VC71DIR" ]]; then
startbat=start-msvc71.bat
fi
;;
*)
# msvc8 official, vc7.1, (2003), vc9 (2009) supported
# for 1.9.0 and later
if [[ -n "$VC8DIR" ]]; then
startbat=start-msvc8.bat
# set VCINSTALLDIR for use in detecting the MS CRT
# source when building jemalloc.
VCINSTALLDIR=$VC8DIR
elif [[ -n "$VC8EXPRESSDIR" ]]; then
startbat=start-msvc8.bat
elif [[ -n "$VC71DIR" ]]; then
startbat=start-msvc71.bat
elif [[ -n "$VC9DIR" || -n "$VC9EXPRESSDIR" ]]; then
startbat=start-msvc9.bat
fi
;;
*)
;;
esac
if [[ -z "$startbat" ]]; then
myexit 2
fi
startbat="$mozillabuild/$startbat"
# The start batch file changes directory and starts an msys bash shell
# which will block its execution. Create a working copy without the
# bash invocation to just set the environment variables and save them
# to ~/mozilla-build-env.dat.
varsbat=`echo $startbat | sed 's|start|vars|'`;
if [[ ! -e "$varsbat" ]]; then
sed 's|\(^cd.*USERPROFILE.*\)|rem \1|; s|\(^.*MOZILLABUILD.*bash.*\)|\1 -c "set > ~/mozilla-build-env.dat"|' $startbat > $varsbat
fi
# call the windows command line to execute the new batch file
varsbat=`cygpath -w "$varsbat"`
cmd /c "$varsbat"
# escape the windows path delimiter \ in the mozilla-build-env.dat
sed -i.bak 's|\\|\\\\\\\\|g' ~/mozilla-build-env.dat
# set IFS to bel in order to read full line including leading whitespace.
saveIFS=$IFS
IFS=`echo -e '\007'`
# read from ~/mozilla-build-env.dat without forking a process
# see "Advanced Bash-Scripting Guide" 19-4. Avoiding a subshell
exec 3< ~/mozilla-build-env.dat
while read line <&3; do
if ! echo "$line" | grep -q '^[a-zA-Z_0-9]*=[^(]'; then
# skip function definitions
continue
fi
name="`echo $line | sed 's|\(^[a-zA-Z_0-9]*\)=.*|\1|'`"
if [[ "$name" == "_" ]]; then
continue
fi
if [[ "$name" == "BASH_EXECUTION_STRING" ]]; then
continue
fi
eval "var=\$$name"
# remove any single quotes around the value
value="`echo $line | sed \"s|^[a-zA-Z_0-9]*='*\([^']*\)'*|\1|\"`"
if [[ -z "$var" ]]; then
# variable is not defined, i.e. was defined by the batch file.
# export it into the current process.
eval "export $name=\"$value\""
elif [[ "$name" == "PATH" ]]; then
# convert msys relative paths to paths relative to /c/.
value=`echo "$value" | sed 's|/local/bin|/c/mozilla-build/msys/local/bin|' | sed 's|:/usr/local/bin:/mingw/bin:/bin:|:/c/mozilla-build/msys/usr/local/bin:/c/mozilla-build/msys/mingw/bin:/c/mozilla-build/msys/bin:|'`
eval "export BUILDPATH=\"$value:$PATH\""
fi
done
IFS=$saveIFS
# close mozilla-build-env.dat
exec 3>&-
echo moztools Location: $MOZ_TOOLS
# now convert TEST_DIR and BUILDDIR to cross compatible paths using
# the common cygdrive prefix for cygwin and msys
TEST_DIR_WIN=`cygpath -w $TEST_DIR`
BUILDDIR_WIN=`cygpath -w $BUILDDIR`
TEST_DIR=`cygpath -u $TEST_DIR_WIN`
BUILDDIR=`cygpath -u $BUILDDIR_WIN`
;;
linux)
export BUILDDIR=${BUILDDIR:-/work/mozilla/builds}
export buildbash="/bin/bash"
export bashlogin=-l
# if a 64 bit linux system, assume the
# compiler is in the standard reference
# location /tools/gcc/bin/
case "$TEST_PROCESSORTYPE" in
*64)
export PATH=/tools/gcc/bin:$PATH
;;
esac
;;
darwin)
export BUILDDIR=${BUILDDIR:-/work/mozilla/builds}
export buildbash="/bin/bash"
export bashlogin=-l
;;
*)
;;
esac
export SHELL=$buildbash
export CONFIG_SHELL=$buildbash
export CONFIGURE_ENV_ARGS=$buildbash
export BUILDTREE="${BUILDTREE:-$BUILDDIR/$branch$extra}"
#
# extras can't be placed in mozconfigs since not all parts
# of the build system use mozconfig (e.g. js shell) and since
# the obj directory is not configurable for them as well thus
# requiring separate source trees
#
case "$extra" in
-too-much-gc)
export XCFLAGS="-DWAY_TOO_MUCH_GC=1"
export CFLAGS="-DWAY_TOO_MUCH_GC=1"
export CXXFLAGS="-DWAY_TOO_MUCH_GC=1"
;;
-gcov)
if [[ "$OSID" == "nt" ]]; then
echo "NT does not support gcov"
myexit 1
fi
export CFLAGS="--coverage"
export CXXFLAGS="--coverage"
export XCFLAGS="--coverage"
export OS_CFLAGS="--coverage"
export LDFLAGS="--coverage"
export XLDFLAGS="--coverage"
export XLDOPTS="--coverage"
;;
-jprof)
;;
-narcissus)
export XCFLAGS="-DNARCISSUS=1"
export CFLAGS="-DNARCISSUS=1"
export CXXFLAGS="-DNARCISSUS=1"
;;
esac
if [[ ! -d $BUILDTREE ]]; then
echo "Build directory $BUILDTREE does not exist"
myexit 2
fi
# here project refers to either browser or mail
# and is used to find mozilla/(browser|mail)/config/mozconfig
if [[ $product == "firefox" ]]; then
project=browser
case $branch in
1.9.1)
export TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/releases/mozilla-1.9.1}
;;
1.9.2)
export TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/releases/mozilla-1.9.2}
;;
1.9.3)
export TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/mozilla-central}
;;
esac
export MOZCONFIG=${MOZCONFIG:-"$BUILDTREE/mozconfig-firefox-$OSID-$TEST_PROCESSORTYPE-$buildtype"}
else
echo "Assuming project=browser for product: $product"
project=browser
case $branch in
1.9.1)
export TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/releases/mozilla-1.9.1}
;;
1.9.2)
export TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/releases/mozilla-1.9.2}
;;
1.9.3)
export TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/mozilla-central}
;;
esac
export MOZCONFIG=${MOZCONFIG:-"$BUILDTREE/mozconfig-firefox-$OSID-$TEST_PROCESSORTYPE-$buildtype"}
fi
if [[ -n "$TEST_MOZILLA_HG" ]]; then
export TEST_MOZILLA_HG_REV=${TEST_MOZILLA_HG_REV:-tip}
fi
# js shell builds
if [[ $buildtype == "debug" ]]; then
unset BUILD_OPT
else
export BUILD_OPT=1
fi
case "$OSID" in
darwin)
export JS_EDITLINE=1 # required for mac
;;
esac
# end js shell builds
# set default "data" variables to reduce need for data files.
case $product in
firefox)
profilename=${profilename:-$product-$branch$extra-profile}
profiledirectory=${profiledirectory:-/tmp/$product-$branch$extra-profile}
userpreferences=${userpreferences:-$TEST_DIR/prefs/test-user.js}
extensiondir=${extensiondir:-$TEST_DIR/xpi}
executablepath=${executablepath:-$BUILDTREE/mozilla/$product-$buildtype/dist}
;;
js)
jsshellsourcepath=${jsshellsourcepath:-$BUILDTREE/mozilla/js/src}
;;
esac
if [[ -n "$datafiles" && ! -e $datafiles ]]; then
# if there is not already a data file for this configuration, create it
# this will save this configuration for the tester.sh and other scripts
# which use datafiles for passing configuration values.
echo product=\${product:-$product} >> $datafiles
echo branch=\${branch:-$branch} >> $datafiles
echo buildtype=\${buildtype:-$buildtype} >> $datafiles
if [[ $product == "js" ]]; then
echo jsshellsourcepath=\${jsshellsourcepath:-$jsshellsourcepath} >> $datafiles
else
echo profilename=\${profilename:-$profilename} >> $datafiles
echo profiledirectory=\${profiledirectory:-$profiledirectory} >> $datafiles
echo executablepath=\${executablepath:-$executablepath} >> $datafiles
echo userpreferences=\${userpreferences:-$userpreferences} >> $datafiles
echo extensiondir=\${extensiondir:-$extensiondir} >> $datafiles
fi
if [[ -n "$TEST_MOZILLA_HG" ]]; then
echo TEST_MOZILLA_HG=\${TEST_MOZILLA_HG:-$TEST_MOZILLA_HG} >> $datafiles
echo TEST_MOZILLA_HG_REV=\${TEST_MOZILLA_HG_REV:-$TEST_MOZILLA_HG_REV} >> $datafiles
fi
fi
set | sed 's/^/environment: /'
echo "mozconfig: $MOZCONFIG"
cat $MOZCONFIG | sed 's/^/mozconfig: /'
done

Просмотреть файл

@ -1,11 +0,0 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Start Spider</title>
</head>
<body>
<h1>Start Spider</h1>
<p>
Initialize Spider...
</p>
</body>
</html>

Просмотреть файл

@ -1,266 +0,0 @@
#!/bin/bash -e
# -*- Mode: Shell-script; tab-width: 4; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2006.
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
# Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
source $TEST_DIR/bin/library.sh
#
# options processing
#
options="p:b:u:f:c:B:T:x:N:D:L:U:E:d:"
function usage()
{
cat<<EOF
usage:
$SCRIPT -p product -b branch
[-u url [-f filepath] [-c credentials]]
[-B buildcommands -T buildtype]
[-x executablepath]
[-N profilename [-D profiledirectory [-L profiletemplate
[-U userpreferences]]]]
[-E extensiondir]
[-d datafiles]
variable description
=============== ===========================================================
-p product required. one of js firefox.
-b branch required. supported branch. see library.sh
-u url optional. url where to download build
-f filepath optional. location to save downloaded build or to find
previously downloaded build. If not specified, the
default will be the basename of the url saved to the
/tmp directory. If there is no basename, then the
filepath will be /tmp/\$product-\$branch-file.
-B buildcommands optional. one or more of clean checkout build
-T buildtype optional. one of opt debug
-x executablepath optional. directory tree containing executable with same
name as product. If the build is downloaded and executable
path is not specified, it will be defaulted to
/tmp/\$product-\$branch.
For cvs builds it will be defaulted to the appropriate
directory in
${BUILDDIR}/\$branch/mozilla/\$product-\$buildtype/
-N profilename optional. profilename. profilename is required if
profiledirectory or extensiondir are specified.
-D profiledirectory optional. If profiledirectory is specified, a new profile
will be created in the directory.
-L profiletemplate optional. If a new profile is created, profiletemplate is
the path to an existing profile which will be copied over
the new profile.
-U userpreferences optional. If a new profile is created, userpreferences is
the path to a user.js file to be copied into the new
profile.
If userpreferences is not specified when a new profile is
created, it is defaulted to
${TEST_DIR}/prefs/test-user.js
-E extensiondir optional. path to directory tree containing extensions to
be installed.
-d datafiles optional. one or more filenames of files containing
environment variable definitions to be included.
note that the environment variables should have the same
names as in the "variable" column.
EOF
exit 1
}
unset product branch url filepath credentials buildcommands buildtype executablepath profilename profiledirectory profiletemplate userpreferences extenstiondir datafiles
while getopts $options optname ;
do
case $optname in
p) product="$OPTARG";;
b) branch="$OPTARG";;
u) url="$OPTARG";;
f) filepath="$OPTARG";;
c) credentials="$OPTARG";;
B) buildcommands="$OPTARG";;
T) buildtype="$OPTARG";;
x) executablepath="$OPTARG";;
N) profilename="$OPTARG";;
D) profiledirectory="$OPTARG";;
L) profiletemplate="$OPTARG";;
U) userpreferences="$OPTARG";;
E) extensiondir="$OPTARG";;
d) datafiles="$OPTARG";;
esac
done
# include environment variables
loaddata $datafiles
TEST_PRODUCT=$product
TEST_BRANCH=$branch
TEST_BUILDCOMMANDS=$buildcommands
TEST_BUILDTYPE=$buildtype
TEST_EXECUTABLEPATH=$executablepath
if [[ -n "$profilename" ]]; then
TEST_PROFILENAME=$profilename
fi
if [[ -n "$profiletemplate" ]];then
TEST_PROFILETEMPLATE=$profiletemplate
fi
if [[ -n "$userpreferences" ]]; then
TEST_USERPREFERENCES=$userpreferences
fi
if [[ -n "$extensiondir" ]]; then
TEST_EXTENSIONDIR=$extensiondir
fi
TEST_DATAFILES=$datafiles
dumpenvironment
dumphardware
if [[ -z "$product" || -z "$branch" ]]; then
echo "product and branch are required"
usage
fi
checkProductBranch $product $branch
if [[ ( -n "$url" || -n "$filepath" ) && ( -n "$buildcommands" ) ]]; then
echo "you can not both download and build cvs builds at the same time"
usage
fi
if [[ -n "$buildcommands" && -n "$executablepath" ]]; then
echo "You can not specify the executable path and build cvs builds at the same time"
usage
fi
if [[ (-n "$profiledirectory" || -n "$extensiondir" ) && -z "$profilename" ]]; then
echo "You must specify a profilename if you specify a profiledirectory or extensiondir"
usage
fi
# if the url is specified but not the filepath
# generate a default path where to save the
# downloaded build.
if [[ -n "$url" && -z "$filepath" ]]; then
filepath=`basename $url`
if [[ -z "$filepath" ]]; then
filepath="$product-$branch-file"
fi
filepath="/tmp/$filepath"
fi
if [[ -n "$url" ]]; then
download.sh -u "$url" -c "$credentials" -f "$filepath" -t "$TEST_DOWNLOAD_TIMEOUT"
fi
# install the build at the specified filepath
if [[ -n "$filepath" ]]; then
if [[ -z "$executablepath" ]]; then
executablepath="/tmp/$product-$branch"
fi
install-build.sh -p $product -b $branch -x $executablepath -f $filepath
fi
if [[ -n "$buildcommands" ]]; then
if [[ -z "$buildtype" ]]; then
echo "You must specify a buildtype if you are building from cvs"
usage
elif [[ "$buildtype" != "opt" && "$buildtype" != "debug" ]]; then
echo "buildtype must be one of opt debug"
usage
fi
case "$OSID" in
mac)
if [[ "$product" == "firefox" ]]; then
App=Firefox
fi
if [[ "$buildtype" == "debug" ]]; then
AppType=Debug
fi
executablepath="${BUILDDIR}/$branch/mozilla/$product-$buildtype/dist/$App$AppType.app/Contents/MacOS"
;;
*)
executablepath="${BUILDDIR}/$branch/mozilla/$product/$buildtype/dist/bin"
esac
if echo "$buildcommands" | grep -iq clean; then
clean.sh -p $product -b $branch -t $buildtype
fi
if echo "$buildcommands" | grep -iq checkout; then
checkout.sh -p $product -b $branch -t $buildtype
fi
if echo "$buildcommands" | grep -iq build; then
build.sh -p $product -b $branch -t $buildtype
fi
fi
if [[ -n "$profiledirectory" ]]; then
if [[ -z "$userpreferences" ]]; then
userpreferences=${TEST_DIR}/prefs/test-user.js
fi
unset optargs
if [[ -n "$profiletemplate" ]]; then
optargs="$optargs -L $profiletemplate"
fi
if [[ -n "$userpreferences" ]]; then
optargs="$optargs -U $userpreferences"
fi
create-profile.sh -p $product -b $branch \
-x $executablepath -D $profiledirectory -N $profilename \
$optargs
fi
if [[ -n "$extensiondir" ]]; then
install-extensions.sh -p $product -b $branch \
-x $executablepath -N $profilename -E $extensiondir
check-spider.sh -p $product -b $branch \
-x $executablepath -N $profilename
fi

Просмотреть файл

@ -1,144 +0,0 @@
#!/bin/bash -e
# -*- Mode: Shell-script; tab-width: 4; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2006.
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
# Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
source $TEST_DIR/bin/library.sh
TEST_LOG=/dev/null
#
# options processing
#
options="p:b:e:T:t:v"
function usage()
{
cat<<EOF
usage:
$SCRIPT -t testscript [-v ] datalist1 [datalist2 [datalist3 [datalist4]]]
variable description
=============== ===========================================================
-t testscript required. quoted test script with required arguments.
-v optional. verbose - copies log file output to stdout.
executes the testscript using the input data files in
$TEST_DIR/data constructed from each combination of the input parameters:
{item1},{item2},{item3},{item4}
EOF
exit 1
}
unset testscript testargs
# remove script name from args
shiftargs=1
while getopts $options optname ;
do
case $optname in
t)
let shiftargs=$shiftargs+1
testscript="$OPTARG"
if echo $testscript | grep -iq ' ' ; then
testargs=`echo $testscript | sed 's|^\([^ ]*\)[ ]*\(.*\)|\2|'`
testscript=`echo $testscript | sed 's|^\([^ ]*\)[ ]*.*|\1|'`
fi
;;
v) verbose=1
let shiftargs=$shiftargs+1
;;
esac
done
if [[ -z "$testscript" ]]; then
usage
fi
shift $shiftargs
datalist=`combo.sh "$@"`
TEST_SUITE=`dirname $testscript | sed "s|$TEST_DIR/||" | sed "s|/|_|g"`
for data in $datalist; do
TEST_DATE=`date -u +%Y-%m-%d-%H-%M-%S``date +%z`
TEST_LOG="${TEST_DIR}/results/${TEST_DATE},$data,$OSID,${TEST_MACHINE},$TEST_SUITE.log"
if [[ "$OSID" == "nt" ]]; then
# If on Windows, set up the Windbg/CDB debug log file
# name to point to our log.
export _NT_DEBUG_LOG_FILE="`cygpath -w $TEST_LOG`"
fi
# tell caller what the log files are
echo "log: $TEST_LOG "
if [[ "$verbose" == "1" ]]; then
test-setup.sh -d $TEST_DIR/data/$data.data 2>&1 | tee -a $TEST_LOG
$testscript $testargs -d $TEST_DIR/data/$data.data 2>&1 | tee -a $TEST_LOG
else
test-setup.sh -d $TEST_DIR/data/$data.data >> $TEST_LOG 2>&1
$testscript $testargs -d $TEST_DIR/data/$data.data >> $TEST_LOG 2>&1
fi
if [[ "$XPCOM_DEBUG_BREAK" == "stack" ]]; then
case $OSID in
nt)
;;
linux)
if findprogram fix-linux-stack.pl; then
fix-linux-stack.pl < $TEST_LOG > $TEST_LOG.tmp
mv $TEST_LOG.tmp $TEST_LOG
else
error "XPCOM_DEBUG_BREAK=stack specified but fix-linux-stack.pl is not available"
fi
;;
darwin)
if findprogram fix-macosx-stack.pl; then
fix-macosx-stack.pl < $TEST_LOG > $TEST_LOG.tmp
mv $TEST_LOG.tmp $TEST_LOG
else
error "XPCOM_DEBUG_BREAK=stack specified but fix-macosx-stack.pl is not available"
fi
;;
esac
fi
done

Просмотреть файл

@ -1,156 +0,0 @@
#!/usr/bin/python -u
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Mozilla Foundation.
# Portions created by the Initial Developer are Copyright (C) 2004
# the Initial Developer. All Rights Reserved.
#
# Contributor(s): Chris Cooper
# Jesse Ruderman
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
# Usage: timed_run timeout prefix command args
import os, signal, sys, time
#
# returns exit code as follows:
#
exitOSError = 66
exitSignal = 77
exitTimeout = 88
exitInterrupt = 99
pid = None
prefix = sys.argv[2]
elapsedtime = 0
if prefix == "-":
prefix = ''
else:
prefix = prefix + ':'
def getSignalName(num):
for p in dir(signal):
if p.startswith("SIG") and not p.startswith("SIG_"):
if getattr(signal, p) == num:
return p
return "UNKNOWN"
def alarm_handler(signum, frame):
global pid
global prefix
try:
stoptime = time.time()
elapsedtime = stoptime - starttime
print "\n%s EXIT STATUS: TIMED OUT (%s seconds)\n" % (prefix, elapsedtime)
flushkill(pid, signal.SIGKILL)
except OSError, e:
print "\ntimed_run.py: exception trying to kill process: %d (%s)\n" % (e.errno, e.strerror)
pass
flushexit(exitTimeout)
def forkexec(command, args):
global prefix
global elapsedtime
#print command
#print args
try:
pid = os.fork()
if pid == 0: # Child
os.execvp(command, args)
flushbuffers()
else: # Parent
return pid
except OSError, e:
print "\n%s ERROR: %s %s failed: %d (%s) (%f seconds)\n" % (prefix, command, args, e.errno, e.strerror, elapsedtime)
flushexit(exitOSError)
def flushbuffers():
sys.stdout.flush()
sys.stderr.flush()
def flushexit(rc):
flushbuffers()
sys.exit(rc)
def flushkill(pid, sig):
flushbuffers()
os.kill(pid, sig)
signal.signal(signal.SIGALRM, alarm_handler)
signal.alarm(int(sys.argv[1]))
starttime = time.time()
try:
pid = forkexec(sys.argv[3], sys.argv[3:])
status = os.waitpid(pid, 0)[1]
signal.alarm(0) # Cancel the alarm
stoptime = time.time()
elapsedtime = stoptime - starttime
# it appears that linux at least will on "occasion" return a status
# when the process was terminated by a signal, so test signal first.
if os.WIFSIGNALED(status):
signum = os.WTERMSIG(status)
if signum == 2:
msg = 'INTERRUPT'
rc = exitInterrupt
else:
msg = 'CRASHED'
rc = exitSignal
print "\n%s EXIT STATUS: %s signal %d %s (%f seconds)\n" % (prefix, msg, signum, getSignalName(signum), elapsedtime)
flushexit(rc)
elif os.WIFEXITED(status):
rc = os.WEXITSTATUS(status)
msg = ''
if rc == 0:
msg = 'NORMAL'
else:
msg = 'ABNORMAL ' + str(rc)
rc = exitSignal
print "\n%s EXIT STATUS: %s (%f seconds)\n" % (prefix, msg, elapsedtime)
flushexit(rc)
else:
print "\n%s EXIT STATUS: NONE (%f seconds)\n" % (prefix, elapsedtime)
flushexit(0)
except KeyboardInterrupt:
flushkill(pid, 9)
flushexit(exitInterrupt)
# check that the child process has terminated.
try:
os.getpgid(pid)
# process still exists. try to kill it and exit with OSError
flushkill(pid, 9)
flushexit(exitOSError)
except OSError:
# process doesn't exist. all is well.
1

Просмотреть файл

@ -1,146 +0,0 @@
#!/bin/bash -e
# -*- Mode: Shell-script; tab-width: 4; indent-tabs-mode: nil; -*-
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Mozilla Corporation.
# Portions created by the Initial Developer are Copyright (C) 2006.
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
# Bob Clary <bob@bclary.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
source $TEST_DIR/bin/library.sh
#
# options processing
#
options="p:b:x:d:"
function usage()
{
cat <<EOF
usage:
$SCRIPT -p product -b branch -x executablepath [-d datafiles]
variable description
=============== ============================================================
-p product required. firefox.
-b branch required. supported branch. see library.sh
-x executablepath required. directory where build is installed
-d datafiles optional. one or more filenames of files containing
environment variable definitions to be included.
note that the environment variables should have the same names as in the
"variable" column.
Uninstalls build located in directory-tree 'executablepath'
then removes the directory upon completion.
EOF
exit 1
}
unset product branch executablepath datafiles
while getopts $options optname ;
do
case $optname in
p) product=$OPTARG;;
b) branch=$OPTARG;;
x) executablepath=$OPTARG;;
d) datafiles=$OPTARG;;
esac
done
# include environment variables
loaddata $datafiles
if [[ -z "$product" || -z "$branch" || -z "$executablepath" ]]
then
usage
fi
if ! ls $executablepath/* > /dev/null 2>&1; then
echo "uninstall-build.sh: ignoring missing $executablepath"
exit 0
fi
executable=`get_executable $product $branch $executablepath`
executabledir=`dirname $executable`
if [[ $OSID == "nt" ]]; then
# see http://nsis.sourceforge.net/Docs/Chapter3.html
# if the directory already exists, attempt to uninstall
# any existing installation. Suppress failures.
if [[ -d "$executabledir/uninstall" ]]; then
if [[ "$branch" == "1.8.0" ]]; then
uninstallexe="$executabledir/uninstall/uninstall.exe"
uninstallini="$executabledir/uninstall/uninstall.ini"
if [[ -n "$uninstallexe" && -e "$uninstallexe" ]]; then
if sed -i.bak 's/Run Mode=Normal/Run Mode=Silent/' $uninstallini;
then
if $uninstallexe; then true; fi
fi
fi
else
uninstalloldexe="$executabledir/uninstall/uninst.exe"
uninstallnewexe="$executabledir/uninstall/helper.exe"
if [[ -n "$uninstallnewexe" && -e "$uninstallnewexe" ]]; then
if $uninstallnewexe /S /D=`cygpath -a -w $executabledir | sed 's@\\\\@\\\\\\\\@g'`; then true; fi
elif [[ -n "$uninstalloldexe" && -e "$uninstalloldexe" ]]; then
if $uninstalloldexe /S /D=`cygpath -a -w $executabledir | sed 's@\\\\@\\\\\\\\@g'`; then true; fi
else
uninstallexe="$executabledir/$product/uninstall/uninstaller.exe"
if [[ -n "$uninstallexe" && -e "$uninstallexe" ]]; then
if $uninstallexe /S /D=`cygpath -a -w "$executabledir" | sed 's@\\\\@\\\\\\\\@g'`; then true; fi
fi
fi
fi
# the NSIS uninstaller will copy itself, then fork to the new
# copy so that it can delete itself. This causes a race condition
# between the uninstaller deleting the files and the rm command below
# sleep for 10 seconds to give the uninstaller time to complete before
# the installation directory is removed.
sleep 10
fi
fi
# safely creates/deletes a directory. If we pass this,
# then we know it is safe to remove the directory.
$TEST_DIR/bin/create-directory.sh -d "$executablepath" -n
rm -fR "$executablepath"

Просмотреть файл

@ -1,95 +0,0 @@
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* ***** BEGIN LICENSE BLOCK *****
* Version: MPL 1.1/GPL 2.0/LGPL 2.1
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* The Original Code is JavaScript Engine testing utilities.
*
* The Initial Developer of the Original Code is
* Mozilla Foundation.
* Portions created by the Initial Developer are Copyright (C) 2006
* the Initial Developer. All Rights Reserved.
*
* Contributor(s): Bob Clary
*
* Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 2 or later (the "GPL"), or
* the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
* in which case the provisions of the GPL or the LGPL are applicable instead
* of those above. If you wish to allow use of your version of this file only
* under the terms of either the GPL or the LGPL, and not to allow others to
* use your version of this file under the terms of the MPL, indicate your
* decision by deleting the provisions above and replace them with the notice
* and other provisions required by the GPL or the LGPL. If you do not delete
* the provisions above, a recipient may use your version of this file under
* the terms of any one of the MPL, the GPL or the LGPL.
*
* ***** END LICENSE BLOCK ***** */
/*
* Spider hook function to check if spider is working.
*/
function userOnStart()
{
}
function userOnBeforePage()
{
}
function userOnAfterPage()
{
var win = gSpider.mDocument.defaultView;
if (win.wrappedJSObject)
{
win = win.wrappedJSObject;
}
dumpObject('navigator', win.navigator);
for (var i = 0; i < win.navigator.mimeTypes.length; i++)
{
dumpObject('navigator.mimeTypes[' + i + ']', win.navigator.mimeTypes[i]);
}
for (var i = 0; i < win.navigator.plugins.length; i++)
{
dumpObject('navigator.plugins[' + i + ']', win.navigator.plugins[i]);
}
gPageCompleted = true;
}
function dumpObject(name, object)
{
for (var p in object)
{
if (/(string|number)/.test(typeof object[p]))
{
cdump(name + '.' + p + ':' + object[p]);
}
}
}
function userOnStop()
{
}
gConsoleListener.onConsoleMessage =
function userOnConsoleMessage(s)
{
dump(s);
};

Просмотреть файл

@ -1,8 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.8.0}
buildtype=${buildtype:-debug}
profilename=${profilename:-firefox-1.8.0-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.8.0-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.8.0/mozilla/firefox-debug/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}

Просмотреть файл

@ -1,8 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.8.0}
buildtype=${buildtype:-opt}
profilename=${profilename:-firefox-1.8.0-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.8.0-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.8.0/mozilla/firefox-opt/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}

Просмотреть файл

@ -1,8 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.8.0}
buildtype=${buildtype:-debug}
profilename=${profilename:-firefox-1.8.0-test-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.8.0-test-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.8.0-test/mozilla/firefox-debug/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}

Просмотреть файл

@ -1,8 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.8.0}
buildtype=${buildtype:-opt}
profilename=${profilename:-firefox-1.8.0-test-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.8.0-test-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.8.0-test/mozilla/firefox-opt/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}

Просмотреть файл

@ -1,8 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.8.0}
buildtype=${buildtype:-debug}
profilename=${profilename:-firefox-1.8.0-too-much-gc-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.8.0-too-much-gc-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.8.0-too-much-gc/mozilla/firefox-debug/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}

Просмотреть файл

@ -1,8 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.8.1}
buildtype=${buildtype:-debug}
profilename=${profilename:-firefox-1.8.1-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.8.1-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.8.1/mozilla/firefox-debug/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}

Просмотреть файл

@ -1,8 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.8.1}
buildtype=${buildtype:-opt}
profilename=${profilename:-firefox-1.8.1-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.8.1-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.8.1/mozilla/firefox-opt/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}

Просмотреть файл

@ -1,8 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.8.1}
buildtype=${buildtype:-debug}
profilename=${profilename:-firefox-1.8.1-test-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.8.1-test-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.8.1-test/mozilla/firefox-debug/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}

Просмотреть файл

@ -1,8 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.8.1}
buildtype=${buildtype:-opt}
profilename=${profilename:-firefox-1.8.1-test-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.8.1-test-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.8.1-test/mozilla/firefox-opt/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}

Просмотреть файл

@ -1,8 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.8.1}
buildtype=${buildtype:-debug}
profilename=${profilename:-firefox-1.8.1-too-much-gc-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.8.1-too-much-gc-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.8.1-too-much-gc/mozilla/firefox-debug/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}

Просмотреть файл

@ -1,8 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.0}
buildtype=${buildtype:-debug}
profilename=${profilename:-firefox-1.9.0-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.0-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.0/mozilla/firefox-debug/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}

Просмотреть файл

@ -1,9 +0,0 @@
product=firefox
branch=1.9.0
url=http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-trunk/firefox-3.0.14pre.en-US.mac.dmg
profilename=firefox-1.9.0-profile
profiledirectory=/tmp/firefox-1.9.0-profile
executablepath=/tmp/firefox-1.9.0
userpreferences=${TEST_DIR}/prefs/test-user.js
extensiondir=${TEST_DIR}/xpi
buildtype=nightly

Просмотреть файл

@ -1,9 +0,0 @@
product=firefox
branch=1.9.0
url=http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-trunk/firefox-3.0.14pre.en-US.linux-i686.tar.bz2
profilename=firefox-1.9.0-profile
profiledirectory=/tmp/firefox-1.9.0-profile
executablepath=/tmp/firefox-1.9.0
userpreferences=${TEST_DIR}/prefs/test-user.js
extensiondir=${TEST_DIR}/xpi
buildtype=nightly

Просмотреть файл

@ -1,9 +0,0 @@
product=firefox
branch=1.9.0
url=http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-trunk/firefox-3.0.14pre.en-US.win32.zip
profilename=firefox-1.9.0-profile
profiledirectory=/tmp/firefox-1.9.0-profile
executablepath=/tmp/firefox-1.9.0
userpreferences=${TEST_DIR}/prefs/test-user.js
extensiondir=${TEST_DIR}/xpi
buildtype=nightly

Просмотреть файл

@ -1,8 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.0}
buildtype=${buildtype:-opt}
profilename=${profilename:-firefox-1.9.0-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.0-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.0/mozilla/firefox-opt/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}

Просмотреть файл

@ -1,8 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.0}
buildtype=${buildtype:-debug}
profilename=${profilename:-firefox-1.9.0-gcov-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.0-gcov-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.0-gcov/mozilla/firefox-debug/dist}
userpreferences=${userpreferences:-/work/mozilla/builds/hg.mozilla.org/mozilla-central-test/testing/sisyphus/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/builds/hg.mozilla.org/mozilla-central-test/testing/sisyphus/xpi}

Просмотреть файл

@ -1,8 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.0}
buildtype=${buildtype:-opt}
profilename=${profilename:-firefox-1.9.0-gcov-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.0-gcov-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.0-gcov/mozilla/firefox-opt/dist}
userpreferences=${userpreferences:-/work/mozilla/builds/hg.mozilla.org/mozilla-central-test/testing/sisyphus/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/builds/hg.mozilla.org/mozilla-central-test/testing/sisyphus/xpi}

Просмотреть файл

@ -1,8 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.0}
buildtype=${buildtype:-debug}
profilename=${profilename:-firefox-1.9.0-jprof-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.0-jprof-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.0-jprof/mozilla/firefox-debug/dist}
userpreferences=${userpreferences:-/work/mozilla/builds/hg.mozilla.org/mozilla-central-test/testing/sisyphus/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/builds/hg.mozilla.org/mozilla-central-test/testing/sisyphus/xpi}

Просмотреть файл

@ -1,8 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.0}
buildtype=${buildtype:-opt}
profilename=${profilename:-firefox-1.9.0-jprof-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.0-jprof-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.0-jprof/mozilla/firefox-opt/dist}
userpreferences=${userpreferences:-/work/mozilla/builds/hg.mozilla.org/mozilla-central-test/testing/sisyphus/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/builds/hg.mozilla.org/mozilla-central-test/testing/sisyphus/xpi}

Просмотреть файл

@ -1,8 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.0}
buildtype=${buildtype:-debug}
profilename=${profilename:-firefox-1.9.0-test-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.0-test-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.0-test/mozilla/firefox-debug/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}

Просмотреть файл

@ -1,8 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.0}
buildtype=${buildtype:-opt}
profilename=${profilename:-firefox-1.9.0-test-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.0-test-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.0-test/mozilla/firefox-opt/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}

Просмотреть файл

@ -1,8 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.0}
buildtype=${buildtype:-debug}
profilename=${profilename:-firefox-1.9.0-too-much-gc-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.0-too-much-gc-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.0-too-much-gc/mozilla/firefox-debug/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}

Просмотреть файл

@ -1,10 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.1}
buildtype=${buildtype:-debug}
profilename=${profilename:-firefox-1.9.1-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.1-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.1/mozilla/firefox-debug/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}
TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/releases/mozilla-1.9.1}
TEST_MOZILLA_HG_REV=${TEST_MOZILLA_HG_REV:-tip}

Просмотреть файл

@ -1,10 +0,0 @@
product=firefox
branch=1.9.1
url=http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-1.9.1/firefox-3.5.3pre.en-US.mac.dmg
profilename=firefox-1.9.1-profile
profiledirectory=/tmp/firefox-1.9.1-profile
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

Просмотреть файл

@ -1,10 +0,0 @@
product=firefox
branch=1.9.1
url=http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-1.9.1/firefox-3.5.3pre.en-US.linux-i686.tar.bz2
profilename=firefox-1.9.1-profile
profiledirectory=/tmp/firefox-1.9.1-profile
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

Просмотреть файл

@ -1,10 +0,0 @@
product=firefox
branch=1.9.1
url=http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-1.9.1/firefox-3.5.3pre.en-US.win32.zip
profilename=firefox-1.9.1-profile
profiledirectory=/tmp/firefox-1.9.1-profile
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

Просмотреть файл

@ -1,10 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.1}
buildtype=${buildtype:-opt}
profilename=${profilename:-firefox-1.9.1-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.1-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.1/mozilla/firefox-opt/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}
TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/releases/mozilla-1.9.1}
TEST_MOZILLA_HG_REV=${TEST_MOZILLA_HG_REV:-tip}

Просмотреть файл

@ -1,10 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.1}
buildtype=${buildtype:-debug}
profilename=${profilename:-firefox-1.9.1-jprof-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.1-jprof-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.1-jprof/mozilla/firefox-debug/dist}
userpreferences=${userpreferences:-/work/mozilla/builds/hg.mozilla.org/mozilla-central-test/testing/sisyphus/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/builds/hg.mozilla.org/mozilla-central-test/testing/sisyphus/xpi}
TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/releases/mozilla-1.9.1}
TEST_MOZILLA_HG_REV=${TEST_MOZILLA_HG_REV:-tip}

Просмотреть файл

@ -1,10 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.1}
buildtype=${buildtype:-opt}
profilename=${profilename:-firefox-1.9.1-jprof-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.1-jprof-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.1-jprof/mozilla/firefox-opt/dist}
userpreferences=${userpreferences:-/work/mozilla/builds/hg.mozilla.org/mozilla-central-test/testing/sisyphus/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/builds/hg.mozilla.org/mozilla-central-test/testing/sisyphus/xpi}
TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/releases/mozilla-1.9.1}
TEST_MOZILLA_HG_REV=${TEST_MOZILLA_HG_REV:-tip}

Просмотреть файл

@ -1,10 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.1}
buildtype=${buildtype:-debug}
profilename=${profilename:-firefox-1.9.1-test-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.1-test-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.1-test/mozilla/firefox-debug/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}
TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/releases/mozilla-1.9.1}
TEST_MOZILLA_HG_REV=${TEST_MOZILLA_HG_REV:-tip}

Просмотреть файл

@ -1,10 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.1}
buildtype=${buildtype:-opt}
profilename=${profilename:-firefox-1.9.1-test-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.1-test-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.1-test/mozilla/firefox-opt/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}
TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/releases/mozilla-1.9.1}
TEST_MOZILLA_HG_REV=${TEST_MOZILLA_HG_REV:-tip}

Просмотреть файл

@ -1,10 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.1}
buildtype=${buildtype:-debug}
profilename=${profilename:-firefox-1.9.1-too-much-gc-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.1-too-much-gc-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.1-too-much-gc/mozilla/firefox-debug/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}
TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/releases/mozilla-1.9.1}
TEST_MOZILLA_HG_REV=${TEST_MOZILLA_HG_REV:-tip}

Просмотреть файл

@ -1,10 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.2}
buildtype=${buildtype:-debug}
profilename=${profilename:-firefox-1.9.2-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.2-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.2/mozilla/firefox-debug/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}
TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/releases/mozilla-1.9.2}
TEST_MOZILLA_HG_REV=${TEST_MOZILLA_HG_REV:-tip}

Просмотреть файл

@ -1,10 +0,0 @@
product=firefox
branch=1.9.2
url=http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-1.9.2/firefox-3.6a2pre.en-US.mac.dmg
profilename=firefox-1.9.2-profile
profiledirectory=/tmp/firefox-1.9.2-profile
executablepath=/tmp/firefox-1.9.2
userpreferences=${TEST_DIR}/prefs/test-user.js
extensiondir=${TEST_DIR}/xpi
buildtype=nightly
TEST_MOZILLA_HG=http://hg.mozilla.org/releases/mozilla-1.9.2

Просмотреть файл

@ -1,10 +0,0 @@
product=firefox
branch=1.9.2
url=http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-1.9.2/firefox-3.6a2pre.en-US.linux-i686.tar.bz2
profilename=firefox-1.9.2-profile
profiledirectory=/tmp/firefox-1.9.2-profile
executablepath=/tmp/firefox-1.9.2
userpreferences=${TEST_DIR}/prefs/test-user.js
extensiondir=${TEST_DIR}/xpi
buildtype=nightly
TEST_MOZILLA_HG=http://hg.mozilla.org/mozilla-central

Просмотреть файл

@ -1,10 +0,0 @@
product=firefox
branch=1.9.2
url=http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-1.9.2/firefox-3.6a2pre.en-US.linux-i686.tar.bz2
profilename=firefox-1.9.2-profile
profiledirectory=/tmp/firefox-1.9.2-profile
executablepath=/tmp/firefox-1.9.2
userpreferences=${TEST_DIR}/prefs/test-user.js
extensiondir=${TEST_DIR}/xpi
buildtype=nightly
TEST_MOZILLA_HG=http://hg.mozilla.org/mozilla-central

Просмотреть файл

@ -1,10 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.2}
buildtype=${buildtype:-opt}
profilename=${profilename:-firefox-1.9.2-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.2-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.2/mozilla/firefox-opt/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}
TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/releases/mozilla-1.9.2}
TEST_MOZILLA_HG_REV=${TEST_MOZILLA_HG_REV:-tip}

Просмотреть файл

@ -1,10 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.2}
buildtype=${buildtype:-debug}
profilename=${profilename:-firefox-1.9.2-test-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.2-test-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.2-test/mozilla/firefox-debug/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}
TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/releases/mozilla-1.9.2}
TEST_MOZILLA_HG_REV=${TEST_MOZILLA_HG_REV:-tip}

Просмотреть файл

@ -1,10 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.2}
buildtype=${buildtype:-opt}
profilename=${profilename:-firefox-1.9.2-test-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.2-test-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.2-test/mozilla/firefox-opt/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}
TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/releases/mozilla-1.9.2}
TEST_MOZILLA_HG_REV=${TEST_MOZILLA_HG_REV:-tip}

Просмотреть файл

@ -1,10 +0,0 @@
product=firefox
branch=1.9.3
url=http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-trunk/firefox-3.7a1pre.en-US.mac.dmg
profilename=firefox-1.9.3-profile
profiledirectory=/tmp/firefox-1.9.3-profile
executablepath=/tmp/firefox-1.9.3
userpreferences=${TEST_DIR}/prefs/test-user.js
extensiondir=${TEST_DIR}/xpi
buildtype=nightly
TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/mozilla-central}

Просмотреть файл

@ -1,10 +0,0 @@
product=firefox
branch=1.9.3
url=http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-trunk/firefox-3.7a1pre.en-US.linux-i686.tar.bz2
profilename=firefox-1.9.3-profile
profiledirectory=/tmp/firefox-1.9.3-profile
executablepath=/tmp/firefox-1.9.3
userpreferences=${TEST_DIR}/prefs/test-user.js
extensiondir=${TEST_DIR}/xpi
buildtype=nightly
TEST_MOZILLA_HG=http://hg.mozilla.org/mozilla-central

Просмотреть файл

@ -1,10 +0,0 @@
product=firefox
branch=1.9.3
url=http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-trunk/firefox-3.7a1pre.en-US.win32.zip
profilename=firefox-1.9.3-profile
profiledirectory=/tmp/firefox-1.9.3-profile
executablepath=/tmp/firefox-1.9.3
userpreferences=${TEST_DIR}/prefs/test-user.js
extensiondir=${TEST_DIR}/xpi
buildtype=nightly
TEST_MOZILLA_HG=http://hg.mozilla.org/mozilla-central

Просмотреть файл

@ -1,10 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.3}
buildtype=${buildtype:-debug}
profilename=${profilename:-firefox-1.9.3-tracemonkey-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.3-tracemonkey-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.3-tracemonkey/mozilla/firefox-debug/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}
TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/tracemonkey}
TEST_MOZILLA_HG_REV=${TEST_MOZILLA_HG_REV:-tip}

Просмотреть файл

@ -1,10 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.3}
buildtype=${buildtype:-opt}
profilename=${profilename:-firefox-1.9.3-tracemonkey-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.3-tracemonkey-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.3-tracemonkey/mozilla/firefox-opt/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}
TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/tracemonkey}
TEST_MOZILLA_HG_REV=${TEST_MOZILLA_HG_REV:-tip}

Просмотреть файл

@ -1,10 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.3}
buildtype=${buildtype:-debug}
profilename=${profilename:-firefox-1.9.3-tracemonkey-test-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.3-tracemonkey-test-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.3-tracemonkey-test/mozilla/firefox-debug/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}
TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/tracemonkey}
TEST_MOZILLA_HG_REV=${TEST_MOZILLA_HG_REV:-tip}

Просмотреть файл

@ -1,10 +0,0 @@
product=${product:-firefox}
branch=${branch:-1.9.3}
buildtype=${buildtype:-opt}
profilename=${profilename:-firefox-1.9.3-tracemonkey-test-profile}
profiledirectory=${profiledirectory:-/tmp/firefox-1.9.3-tracemonkey-test-profile}
executablepath=${executablepath:-/work/mozilla/builds/1.9.3-tracemonkey-test/mozilla/firefox-opt/dist}
userpreferences=${userpreferences:-/work/mozilla/mozilla.com/test.mozilla.com/www/prefs/test-user.js}
extensiondir=${extensiondir:-/work/mozilla/mozilla.com/test.mozilla.com/www/xpi}
TEST_MOZILLA_HG=${TEST_MOZILLA_HG:-http://hg.mozilla.org/tracemonkey}
TEST_MOZILLA_HG_REV=${TEST_MOZILLA_HG_REV:-tip}

Просмотреть файл

@ -1,4 +0,0 @@
product=${product:-js}
branch=${branch:-1.8.0}
buildtype=${buildtype:-debug}
jsshellsourcepath=${jsshellsourcepath:-/work/mozilla/builds/1.8.0/mozilla/js/src}

Просмотреть файл

@ -1,4 +0,0 @@
product=${product:-js}
branch=${branch:-1.8.0}
buildtype=${buildtype:-opt}
jsshellsourcepath=${jsshellsourcepath:-/work/mozilla/builds/1.8.0/mozilla/js/src}

Просмотреть файл

@ -1,4 +0,0 @@
product=${product:-js}
branch=${branch:-1.8.0}
buildtype=${buildtype:-debug}
jsshellsourcepath=${jsshellsourcepath:-/work/mozilla/builds/1.8.0-test/mozilla/js/src}

Просмотреть файл

@ -1,4 +0,0 @@
product=${product:-js}
branch=${branch:-1.8.0}
buildtype=${buildtype:-opt}
jsshellsourcepath=${jsshellsourcepath:-/work/mozilla/builds/1.8.0-test/mozilla/js/src}

Просмотреть файл

@ -1,4 +0,0 @@
product=${product:-js}
branch=${branch:-1.8.1}
buildtype=${buildtype:-debug}
jsshellsourcepath=${jsshellsourcepath:-/work/mozilla/builds/1.8.1/mozilla/js/src}

Просмотреть файл

@ -1,4 +0,0 @@
product=${product:-js}
branch=${branch:-1.8.1}
buildtype=${buildtype:-opt}
jsshellsourcepath=${jsshellsourcepath:-/work/mozilla/builds/1.8.1/mozilla/js/src}

Просмотреть файл

@ -1,4 +0,0 @@
product=${product:-js}
branch=${branch:-1.8.1}
buildtype=${buildtype:-debug}
jsshellsourcepath=${jsshellsourcepath:-/work/mozilla/builds/1.8.1-test/mozilla/js/src}

Просмотреть файл

@ -1,4 +0,0 @@
product=${product:-js}
branch=${branch:-1.8.1}
buildtype=${buildtype:-opt}
jsshellsourcepath=${jsshellsourcepath:-/work/mozilla/builds/1.8.1-test/mozilla/js/src}

Просмотреть файл

@ -1,4 +0,0 @@
product=${product:-js}
branch=${branch:-1.8.1}
buildtype=${buildtype:-debug}
jsshellsourcepath=${jsshellsourcepath:-/work/mozilla/builds/1.8.1-too-much-gc/mozilla/js/src}

Просмотреть файл

@ -1,4 +0,0 @@
product=${product:-js}
branch=${branch:-1.9.0}
buildtype=${buildtype:-debug}
jsshellsourcepath=${jsshellsourcepath:-/work/mozilla/builds/1.9.0/mozilla/js/src}

Просмотреть файл

@ -1,4 +0,0 @@
product=${product:-js}
branch=${branch:-1.9.0}
buildtype=${buildtype:-opt}
jsshellsourcepath=${jsshellsourcepath:-/work/mozilla/builds/1.9.0/mozilla/js/src}

Просмотреть файл

@ -1,4 +0,0 @@
product=${product:-js}
branch=${branch:-1.9.0}
buildtype=${buildtype:-debug}
jsshellsourcepath=${jsshellsourcepath:-/work/mozilla/builds/1.9.0-gcov/mozilla/js/src}

Просмотреть файл

@ -1,4 +0,0 @@
product=${product:-js}
branch=${branch:-1.9.0}
buildtype=${buildtype:-opt}
jsshellsourcepath=${jsshellsourcepath:-/work/mozilla/builds/1.9.0-gcov/mozilla/js/src}

Просмотреть файл

@ -1,4 +0,0 @@
product=${product:-js}
branch=${branch:-1.9.0}
buildtype=${buildtype:-debug}
jsshellsourcepath=${jsshellsourcepath:-/work/mozilla/builds/1.9.0-test/mozilla/js/src}

Просмотреть файл

@ -1,4 +0,0 @@
product=${product:-js}
branch=${branch:-1.9.0}
buildtype=${buildtype:-opt}
jsshellsourcepath=${jsshellsourcepath:-/work/mozilla/builds/1.9.0-test/mozilla/js/src}

Просмотреть файл

@ -1,4 +0,0 @@
product=${product:-js}
branch=${branch:-1.9.0}
buildtype=${buildtype:-debug}
jsshellsourcepath=${jsshellsourcepath:-/work/mozilla/builds/1.9.0-too-much-gc/mozilla/js/src}

Некоторые файлы не были показаны из-за слишком большого количества измененных файлов Показать больше