Changeset View
Changeset View
Standalone View
Standalone View
swh/scheduler/cli.py
Show First 20 Lines • Show All 87 Lines • ▼ Show 20 Lines | @click.option('--config-file', '-C', default=None, | ||||
help="Configuration file.") | help="Configuration file.") | ||||
@click.option('--database', '-d', default=None, | @click.option('--database', '-d', default=None, | ||||
help="Scheduling database DSN (imply cls is 'local')") | help="Scheduling database DSN (imply cls is 'local')") | ||||
@click.option('--url', '-u', default=None, | @click.option('--url', '-u', default=None, | ||||
help="Scheduler's url access (imply cls is 'remote')") | help="Scheduler's url access (imply cls is 'remote')") | ||||
@click.option('--log-level', '-l', default='INFO', | @click.option('--log-level', '-l', default='INFO', | ||||
type=click.Choice(logging._nameToLevel.keys()), | type=click.Choice(logging._nameToLevel.keys()), | ||||
help="Log level (default to INFO)") | help="Log level (default to INFO)") | ||||
@click.option('--no-stdout', is_flag=True, default=False, | |||||
help="Do NOT output logs on the console") | |||||
@click.pass_context | @click.pass_context | ||||
def cli(ctx, config_file, database, url, log_level): | def cli(ctx, config_file, database, url, log_level, no_stdout): | ||||
"""Software Heritage Scheduler CLI interface | """Software Heritage Scheduler CLI interface | ||||
Default to use the the local scheduler instance (plugged to the | Default to use the the local scheduler instance (plugged to the | ||||
main scheduler db). | main scheduler db). | ||||
""" | """ | ||||
from swh.scheduler.celery_backend.config import setup_log_handler | from swh.scheduler.celery_backend.config import setup_log_handler | ||||
log_level = setup_log_handler( | log_level = setup_log_handler( | ||||
loglevel=log_level, colorize=False, | loglevel=log_level, colorize=False, | ||||
format='[%(levelname)s] %(name)s -- %(message)s') | format='[%(levelname)s] %(name)s -- %(message)s', | ||||
log_console=not no_stdout) | |||||
ctx.ensure_object(dict) | ctx.ensure_object(dict) | ||||
logger = logging.getLogger(__name__) | logger = logging.getLogger(__name__) | ||||
scheduler = None | scheduler = None | ||||
conf = config.read(config_file, DEFAULT_CONFIG) | conf = config.read(config_file, DEFAULT_CONFIG) | ||||
if 'scheduler' not in conf: | if 'scheduler' not in conf: | ||||
raise ValueError("missing 'scheduler' configuration") | raise ValueError("missing 'scheduler' configuration") | ||||
▲ Show 20 Lines • Show All 560 Lines • Show Last 20 Lines |