mirror of https://github.com/zulip/zulip.git
Factor out venv-installing code into a module.
Factor out the code in tools/provision.py which installs a python2 and python3 venv into a module (tools/setup/setup_venvs.py) which can also be used as a script.
This commit is contained in:
parent
2930a769a9
commit
6548f1dd1c
|
@ -239,7 +239,7 @@ You must also install appropriate python packages in them.
|
||||||
You should either install the virtualenvs in `/srv`, or put symlinks to
|
You should either install the virtualenvs in `/srv`, or put symlinks to
|
||||||
them in `/srv`. If you don't do that, some scripts might not work correctly.
|
them in `/srv`. If you don't do that, some scripts might not work correctly.
|
||||||
|
|
||||||
You can run `tools/setup/setup-venv` to do this. This script will create two
|
You can run `tools/setup/setup_venvs.py` to do this. This script will create two
|
||||||
virtualenvs - /srv/zulip-venv and /srv/zulip-py3-venv.
|
virtualenvs - /srv/zulip-venv and /srv/zulip-py3-venv.
|
||||||
|
|
||||||
If you want to do it manually, here are the steps:
|
If you want to do it manually, here are the steps:
|
||||||
|
|
|
@ -178,10 +178,10 @@ def main():
|
||||||
DEV_REQS_FILE = os.path.join(ZULIP_PATH, "requirements", "py3_dev.txt")
|
DEV_REQS_FILE = os.path.join(ZULIP_PATH, "requirements", "py3_dev.txt")
|
||||||
setup_virtualenv(VENV_PATH, DEV_REQS_FILE, virtualenv_args=['-p', 'python3'])
|
setup_virtualenv(VENV_PATH, DEV_REQS_FILE, virtualenv_args=['-p', 'python3'])
|
||||||
else:
|
else:
|
||||||
DEV_REQS_FILE = os.path.join(ZULIP_PATH, "requirements", "py2_dev.txt")
|
# Import tools/setup_venv.py instead of running it so that we get an
|
||||||
setup_virtualenv(PY2_VENV_PATH, DEV_REQS_FILE)
|
# activated virtualenv for the rest of the provisioning process.
|
||||||
DEV_REQS_FILE = os.path.join(ZULIP_PATH, "requirements", "py3_dev.txt")
|
from tools.setup import setup_venvs
|
||||||
setup_virtualenv(PY3_VENV_PATH, DEV_REQS_FILE, virtualenv_args=['-p', 'python3'])
|
setup_venvs.main()
|
||||||
|
|
||||||
# Put Python2 virtualenv activation in our .bash_profile.
|
# Put Python2 virtualenv activation in our .bash_profile.
|
||||||
with open(os.path.expanduser('~/.bash_profile'), 'w+') as bash_profile:
|
with open(os.path.expanduser('~/.bash_profile'), 'w+') as bash_profile:
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
#!/usr/bin/env python
|
||||||
|
|
||||||
|
import os
|
||||||
|
import sys
|
||||||
|
from os.path import dirname, abspath
|
||||||
|
|
||||||
|
ZULIP_PATH = dirname(dirname(dirname(abspath(__file__))))
|
||||||
|
if ZULIP_PATH not in sys.path:
|
||||||
|
sys.path.append(ZULIP_PATH)
|
||||||
|
|
||||||
|
from scripts.lib.setup_venv import setup_virtualenv
|
||||||
|
|
||||||
|
def main():
|
||||||
|
# type: () -> None
|
||||||
|
PY2_DEV_REQS_FILE = os.path.join(ZULIP_PATH, "requirements", "py2_dev.txt")
|
||||||
|
setup_virtualenv("/srv/zulip-venv", PY2_DEV_REQS_FILE)
|
||||||
|
|
||||||
|
PY3_DEV_REQS_FILE = os.path.join(ZULIP_PATH, "requirements", "py3_dev.txt")
|
||||||
|
setup_virtualenv("/srv/zulip-py3-venv", PY3_DEV_REQS_FILE, virtualenv_args=['-p', 'python3'])
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
main()
|
Loading…
Reference in New Issue