Files
zulip/tools/travis/setup-production
Tim Abbott 52fc1c71bc provision: Rewrite using subprocess module instead of sh.
The `with sh.sudo` pattern that we were using in python-sh was
deprecated, and emperically hangs on Ubuntu xenial.  Since in general
the use of python-sh/python-pbs caused trouble (requiring extra
dependencies, confusing syntax), this just removes it.

We replace it with a new zulip_tools.py library function that echoes
the command line and streams the output.

We do the same to install-phantomjs so we can remove that dependency.
2016-04-10 17:33:19 -07:00

30 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
set -e
set -x
# Uninstall the unnecessary extra versions of postgres that Travis CI
# installs since if we don't do this, doing apt upgrades can fail due
# to conflicts over which version of postgres should be running.
sudo apt-get remove postgresql-9.1 postgresql-9.2 postgresql-9.4 -y
python provision.py --travis
source /srv/zulip-venv/bin/activate
./tools/build-release-tarball travis
mv /tmp/tmp.*/zulip-server-travis.tar.gz ./
# Shut down all services so that restarting postgres and rebuilding
# the postgres database to match the prod installation setup will work.
sudo supervisorctl stop all
# Clear memcached to avoid contamination between development and prod
# environments.
sudo /etc/init.d/memcached restart
# Drop any open connections to the development postgres installation.
sudo "$(dirname "$0")/../../scripts/setup/terminate-psql-sessions" postgres zulip zulip_base
# Remove and recreate the postgres database
sudo pg_ctlcluster 9.3 main stop
sudo pg_dropcluster 9.3 main
sudo rm -rf /etc/postgresql/9.3/main /var/lib/postgresql/9.3/main
sudo pg_createcluster 9.3 main