Пример #1
0
def main():
    parser = argparse.ArgumentParser()
    parser.add_argument('-d', '--domain', required=True)
    parser.add_argument('-t', '--task_list', required=True)
    parser.add_argument('--plan_name', required=False)
    parser.add_argument('--plan_version', required=False)
    parser.add_argument('--plan', required=True)
    args = parser.parse_args()

    # Load the main plan data
    with open(args.plan) as f:
        plan_data = yaml.load(f)

    if args.plan_name:
        plan_data['name'] = args.plan_name
    if args.plan_version:
        plan_data['version'] = args.plan_version

    # Construct the plan
    p = Plan.from_data(plan_data)
    logging.info('Loaded plan %r', p)

    # Make sure the plan is registered in SWF
    register(domain=args.domain,
             workflows=((p.name, p.version),))

    d = Decider(domain=args.domain, task_list=args.task_list, plan=p)

    while d.run():
        pass
def main():
    parser = argparse.ArgumentParser()
    parser.add_argument('--domain', required=True)
    parser.add_argument('--task_list', required=True)
    parser.add_argument('--activity', required=True)
    parser.add_argument('--version', required=True)
    args = parser.parse_args()

    register(activities=[(args.activity, args.version)])

    worker = Worker(args.domain, args.task_list)

    while worker.run():
        pass
Пример #3
0
def main():
    parser = argparse.ArgumentParser(description='Generic SWF Decider daemon. Read you Plan.yaml and process your workflow accordingly.')
    parser.add_argument('-d', '--domain', required=True, help='The SWF domain for your workflow')
    parser.add_argument('-t', '--task_list', required=True, help='The Decision TaskList your decider will listen to')
    parser.add_argument('--plan', required=True, help='The location of your Plan file')
    parser.add_argument('--output_queue', required=False, help='SQS queue to output updates to')
    parser.add_argument('--plan_name', required=False, help='If you want to override the plan name in your Plan file')
    parser.add_argument('--plan_version', required=False, help='If you want to override the plan version in your Plan file')
    parser.add_argument('--log_file', required=False, help='Location of the log file')
    args = parser.parse_args()

    log_file = "/var/tmp/logs/cpe/decider.log"
    if args.log_file:
        log_file = args.log_file
    logging.basicConfig(level=logging.DEBUG,
                        filename=log_file)

    # Load the main plan data
    with open(args.plan) as f:
        plan_data = yaml.load(f)

    if args.plan_name:
        plan_data['name'] = args.plan_name
    if args.plan_version:
        plan_data['version'] = args.plan_version

    # Construct the plan
    p = Plan.from_data(plan_data)
    logging.info('Loaded plan %r', p)

    # Make sure the plan is registered in SWF
    register(domain=args.domain,
             workflows=((p.name, p.version),))

    if 'OUTPUT_QUEUE' in os.environ:
        output_queue = os.environ['OUTPUT_QUEUE']
    elif (args.output_queue is not None and
          args.output_queue != ""):
        output_queue = args.output_queue
    else:
        raise Exception("No 'OUTPUT_QUEUE' provided!");

    d = Decider(domain=args.domain, task_list=args.task_list, plan=p, output_queue=output_queue)

    while d.run():
        pass
def main():
    parser = argparse.ArgumentParser(
        description=
        'Generic SWF Decider daemon. Read you Plan.yaml and process your workflow accordingly.'
    )
    parser.add_argument('-d',
                        '--domain',
                        required=True,
                        help='The SWF domain for your workflow')
    parser.add_argument(
        '-t',
        '--task_list',
        required=True,
        help='The Decision TaskList your decider will listen to')
    parser.add_argument('--plan',
                        required=True,
                        help='The location of your Plan file')
    parser.add_argument('--output_queue',
                        required=False,
                        help='SQS queue to output updates to')
    parser.add_argument(
        '--plan_name',
        required=False,
        help='If you want to override the plan name in your Plan file')
    parser.add_argument(
        '--plan_version',
        required=False,
        help='If you want to override the plan version in your Plan file')
    parser.add_argument('--log_file',
                        required=False,
                        help='Location of the log file')
    args = parser.parse_args()

    log_file = "/var/tmp/logs/cpe/decider.log"
    if args.log_file:
        log_file = args.log_file
    logging.basicConfig(level=logging.DEBUG, filename=log_file)

    # Load the main plan data
    with open(args.plan) as f:
        plan_data = yaml.load(f)

    if args.plan_name:
        plan_data['name'] = args.plan_name
    if args.plan_version:
        plan_data['version'] = args.plan_version

    # Construct the plan
    p = Plan.from_data(plan_data)
    logging.info('Loaded plan %r', p)

    # Make sure the plan is registered in SWF
    register(domain=args.domain, workflows=((p.name, p.version), ))

    if 'OUTPUT_QUEUE' in os.environ:
        output_queue = os.environ['OUTPUT_QUEUE']
    elif (args.output_queue is not None and args.output_queue != ""):
        output_queue = args.output_queue
    else:
        raise Exception("No 'OUTPUT_QUEUE' provided!")

    d = Decider(domain=args.domain,
                task_list=args.task_list,
                plan=p,
                output_queue=output_queue)

    while d.run():
        pass