#!/usr/bin/env python3 import argparse import os import sys ZULIP_PATH = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) if ZULIP_PATH not in sys.path: sys.path.append(ZULIP_PATH) from scripts.lib.setup_venv import ( THUMBOR_VENV_DEPENDENCIES, YUM_THUMBOR_VENV_DEPENDENCIES, setup_virtualenv, ) from scripts.lib.zulip_tools import os_families, parse_os_release, run parser = argparse.ArgumentParser(description="Create a thumbor virtualenv with caching") parser.add_argument("deploy_path") args = parser.parse_args() # install dependencies for setting up the virtualenv distro_info = parse_os_release() if "debian" in os_families(): run(["apt-get", "-y", "install", *THUMBOR_VENV_DEPENDENCIES]) elif "fedora" in os_families(): run(["yum", "-y", "install", *YUM_THUMBOR_VENV_DEPENDENCIES]) else: print("Unsupported platform: {}".format(distro_info["ID"])) sys.exit(1) venv_name = "zulip-thumbor-venv" cached_venv_path = setup_virtualenv( os.path.join(args.deploy_path, venv_name), os.path.join(ZULIP_PATH, "requirements", "thumbor.txt"), )