#!/usr/bin/env python
from __future__ import unicode_literals, absolute_import
import argparse
import sys
import os
import subprocess
parser = argparse.ArgumentParser(description="Run the Pagure worker")
parser.add_argument(
"--config",
"-c",
dest="config",
help="Configuration file to use for pagure.",
)
parser.add_argument(
"--debug",
dest="debug",
action="store_true",
default=False,
help="Expand the level of data returned.",
)
parser.add_argument(
"--noinfo",
dest="noinfo",
action="store_true",
default=False,
help="Reduce the log level.",
)
args = parser.parse_args()
env = {}
if args.config:
config = args.config
if not config.startswith("/"):
here = os.path.join(os.path.dirname(os.path.abspath(__file__)))
config = os.path.join(here, config)
env["PAGURE_CONFIG"] = config
cmd = [sys.executable, "-m", "celery", "worker", "-A", "pagure.lib.tasks"]
if args.debug:
cmd.append("--loglevel=debug")
elif args.noinfo:
pass
else:
cmd.append("--loglevel=info")
subp = subprocess.Popen(cmd, env=env or None)
subp.wait()