# This script should be called from within Jenkins cd $WORKSPACE VENV=$WORKSPACE/venv VENDOR=$WORKSPACE/vendor LOCALE=$WORKSPACE/locale ES_HOST='jenkins-es20' SETTINGS=mkt echo "Starting build on executor $EXECUTOR_NUMBER..." `date` if [ -z $1 ]; then echo "Warning: You should provide a unique name for this job to prevent database collisions." echo "Usage: ./run_mkt_tests.sh --with-coverage" echo "Continuing, but don't say you weren't warned." fi if [ -z $2 ]; then echo "Warning: no settings directory specified, using: ${SETTINGS}" echo "Usage: ./run_mkt_tests.sh --with-coverage" else SETTINGS=$2 fi echo "Setup..." `date` # Make sure there's no old pyc files around. find . -name '*.pyc' | xargs rm if [ ! -d "$VENV/bin" ]; then echo "No virtualenv found. Making one..." virtualenv $VENV --system-site-packages fi source $VENV/bin/activate pip install -U --exists-action=w --no-deps -q -r requirements/compiled.txt -r requirements/test.txt # Create paths we want for addons if [ ! -d "/tmp/warez" ]; then mkdir /tmp/warez fi if [ ! -d "$LOCALE" ]; then echo "No locale dir? Cloning..." svn co http://svn.mozilla.org/addons/trunk/site/app/locale/ $LOCALE fi if [ ! -d "$VENDOR" ]; then echo "No vendor lib? Cloning..." git clone --recursive git://github.com/mozilla/zamboni-lib.git $VENDOR fi # Update the vendor lib. echo "Updating vendor..." git submodule --quiet foreach 'git submodule --quiet sync' git submodule --quiet sync && git submodule update --init --recursive if [ -z $SET_ES_TESTS ]; then RUN_ES_TESTS=False else RUN_ES_TESTS=True fi cat > settings_local.py <