#!/usr/bin/env python

from nymms.utils import aws_helper, cli

parser = cli.NymmsDaemonCommand()
args = parser.parse_args()

cli.setup_logging(args.verbose)

from nymms.config import config
from nymms.resources import load_resources
from nymms.probe.sqs_probe import SQSProbe

config.load_config(args.config)

resource_version = load_resources(config.settings['resources'])
region = config.settings['queue_region']
conn_mgr = aws_helper.ConnectionManager(region)

tasks_queue = config.settings['tasks']['name']
results_topic = config.settings['results_topic']
state_domain = config.settings['state_domain']
wait_timeout = config.settings['probe']['queue_wait_time']
monitor_timeout = config.settings['monitor_timeout']
max_retries = config.settings['probe']['max_retries']
retry_delay = config.settings['probe']['retry_delay']

daemon = SQSProbe(conn_mgr, tasks_queue, results_topic, state_domain)
daemon.run(monitor_timeout=monitor_timeout,
           max_retries=max_retries,
           retry_delay=retry_delay,
           queue_wait_time=wait_timeout)
