mirror of
https://github.com/zulip/zulip.git
synced 2025-11-03 21:43:21 +00:00
If the current version is less than or equal to 1.3.10, first recommend an upgrade to the version 1.4.3 and then to the final version.
46 lines
1.4 KiB
Python
Executable File
46 lines
1.4 KiB
Python
Executable File
#!/usr/bin/env python
|
|
from __future__ import print_function
|
|
import os
|
|
import sys
|
|
import subprocess
|
|
import datetime
|
|
import tempfile
|
|
import glob
|
|
|
|
os.environ["PYTHONUNBUFFERED"] = "y"
|
|
|
|
sys.path.append(os.path.join(os.path.dirname(__file__), '..', ".."))
|
|
from scripts.lib.zulip_tools import DEPLOYMENTS_DIR, FAIL, ENDC, make_deploy_path, \
|
|
get_deployment_version, is_invalid_upgrade
|
|
import version
|
|
|
|
if len(sys.argv) != 2:
|
|
print(FAIL + "Usage: %s <tarball>" % (sys.argv[0],) + ENDC)
|
|
sys.exit(1)
|
|
|
|
tarball_path = sys.argv[1]
|
|
|
|
deploy_path = make_deploy_path()
|
|
|
|
extract_path = tempfile.mkdtemp()
|
|
subprocess.check_call(["tar", "-xf", tarball_path, "-C", extract_path])
|
|
|
|
new_version = get_deployment_version(extract_path)
|
|
current_version = version.ZULIP_VERSION
|
|
if is_invalid_upgrade(current_version, new_version):
|
|
print(FAIL +
|
|
"Your current version is very old. Please first upgrade to version "
|
|
"1.4.3 and then upgrade to {}.".format(new_version) +
|
|
ENDC)
|
|
subprocess.check_call(["rm", "-r", extract_path])
|
|
sys.exit(1)
|
|
|
|
subprocess.check_call(["mv", glob.glob(os.path.join(extract_path, "zulip-server-*"))[0], deploy_path])
|
|
subprocess.check_call(["rmdir", extract_path])
|
|
subprocess.check_call(["ln", "-nsf", "/etc/zulip/settings.py",
|
|
os.path.join(deploy_path, "zproject/prod_settings.py")])
|
|
subprocess.check_call(["ln", '-nsf', deploy_path, os.path.join(DEPLOYMENTS_DIR, "next")])
|
|
|
|
print(deploy_path)
|
|
sys.exit(0)
|