mirror of
https://github.com/zulip/zulip.git
synced 2025-10-23 04:52:12 +00:00
Since now we want to use production suites on Circle CI so there is no need to set TRAVIS in env while running scripts. CIRCLECI is set default in the enviroment of Circle CI builds so we can use it directly. Also Travis CI had rabbitmq-server installed so we had to add workaround in install script to avoid the error. That workaround is removed.
53 lines
1.8 KiB
Bash
Executable File
53 lines
1.8 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
# Use this script to provision dependencies for your Zulip installation.
|
|
# This script is idempotent, so it can be restarted at any time, and it
|
|
# will usually run fairly quickly when your dependencies are up to date.
|
|
|
|
set -e
|
|
if [ "$EUID" -eq 0 ]; then
|
|
echo "Error: The provision script must not be run as root" >&2
|
|
exit 1
|
|
fi
|
|
|
|
FAIL='\033[91m'
|
|
WARNING='\033[93m'
|
|
ENDC='\033[0m'
|
|
|
|
# Make the script independent of the location from where it is executed
|
|
PARENT_PATH=$( cd "$(dirname "${BASH_SOURCE[0]}")" ; pwd -P )
|
|
cd "$PARENT_PATH"
|
|
mkdir -p ../var/log
|
|
LOG_PATH="../var/log/provision.log"
|
|
|
|
echo "PROVISIONING STARTING." >> $LOG_PATH
|
|
|
|
# PYTHONUNBUFFERED is important to ensure that tracebacks don't get
|
|
# lost far above where they should be in the output.
|
|
export PYTHONUNBUFFERED=1
|
|
./lib/provision.py "$@" 2>&1 | tee -a "$LOG_PATH"
|
|
failed=${PIPESTATUS[0]}
|
|
|
|
if [ "$failed" -ne 0 ]; then
|
|
echo -e "$FAIL"
|
|
echo "Provisioning failed (exit code $failed)!"
|
|
echo
|
|
echo "* Look at the traceback(s) above to find more about the errors."
|
|
echo "* Resolve the errors or get help on chat."
|
|
echo "* If you can fix this yourself, you can re-run tools/provision at any time."
|
|
echo "* Logs are here: zulip/var/log/provision.log"
|
|
echo -e "$ENDC"
|
|
exit "$failed"
|
|
elif [ "$VIRTUAL_ENV" != "/srv/zulip-py3-venv" ] && [ -z "${CIRCLECI}${SKIP_VENV_SHELL_WARNING}" ]; then
|
|
echo -e "$WARNING"
|
|
echo "WARNING: This shell does not have the Zulip Python 3 virtualenv activated."
|
|
echo "Zulip commands will fail until you activate the virtualenv."
|
|
echo
|
|
echo "To update the shell, run:"
|
|
echo " source /srv/zulip-py3-venv/bin/activate"
|
|
# shellcheck disable=SC2016
|
|
echo 'or just close this shell and start a new one (with Vagrant, `vagrant ssh`).'
|
|
echo -en "$ENDC"
|
|
fi
|
|
exit 0
|