Files
zulip/scripts/upgrade-zulip-stage-2
Zev Benjamin 1546d06344 upgrade-zulip-stage-2: Tweak log message
(imported from commit e8979fa3331119f1f039b3809f6d06fc81fd5e0e)
2013-11-13 16:57:00 -05:00

47 lines
1.6 KiB
Python
Executable File

#!/usr/bin/python -u
import subprocess
import os
import sys
import logging
sys.path.append(os.path.join(os.path.dirname(__file__), '..'))
from zulip_tools import FAIL, WARNING, ENDC, su_to_zulip
logging.basicConfig(format="%(asctime)s upgrade-zulip-stage-2: %(message)s",
level=logging.INFO)
if os.getuid() != 0:
logging.error("Must be run as root.")
sys.exit(1)
if len(sys.argv) != 2:
print FAIL + "Usage: %s <deploy path>" % (sys.argv[0],) + ENDC
sys.exit(1)
deploy_path = sys.argv[1]
logging.info("Upgrading system packages...")
subprocess.check_call(["apt-get", "update"])
subprocess.check_call(["apt-get", "upgrade"])
logging.info("Stopping Zulip...")
subprocess.check_call(["supervisorctl", "stop", "zulip-workers:*", "zulip-django",
"zulip-tornado"], preexec_fn=su_to_zulip)
logging.info("Applying puppet changes...")
subprocess.check_call(["./scripts/zulip-puppet-apply", "--force"])
subprocess.check_call(["apt-get", "upgrade"])
logging.info("Applying database migrations...")
subprocess.check_call(["./manage.py", "migrate"], preexec_fn=su_to_zulip)
logging.info("Restarting Zulip...")
subprocess.check_call(["cp", "-rT", os.path.join(deploy_path, 'prod-static/serve'),
'/home/zulip/prod-static'], preexec_fn=su_to_zulip)
subprocess.check_output(["./scripts/restart-server"], preexec_fn=su_to_zulip)
using_sso = subprocess.check_output(['./bin/get-django-setting', 'USING_SSO'], preexec_fn=su_to_zulip)
if using_sso:
logging.info("Restarting Apache...")
subprocess.check_call(["service", "apache2", "restart"])