#!/usr/bin/env python import os import subprocess import sys from honcho import manager def run_cmd(cmd): returncode = subprocess.call(cmd) if returncode != 0: sys.exit(returncode) n_workers = int(os.environ.get("UCAST_N_WORKERS", "1")) run_cmd(["ucast-manage", "collectstatic", "--noinput"]) run_cmd(["ucast-manage", "migrate"]) m = manager.Manager() m.add_process("ucast", "gunicorn ucast_project.wsgi") m.add_process("nginx", "nginx") for i in range(n_workers): m.add_process(f"worker_{i}", "ucast-manage rqworker") m.add_process("scheduler", "ucast-manage rqscheduler") m.loop() sys.exit(m.returncode)