def execute_policy((tenant_id, group_id, policy_id)):
     bound_log = log.bind(tenant_id=tenant_id, scaling_group_id=group_id, policy_id=policy_id)
     logl[0] = bound_log
     group = store.get_scaling_group(bound_log, tenant_id, group_id)
     return group.modify_state(partial(controller.maybe_execute_scaling_policy,
                                       bound_log, transaction_id(request),
                                       policy_id=policy_id))
 def _do_obey_config_change(result):
     group_id = result['id']
     config = result['groupConfiguration']
     group = get_store().get_scaling_group(log, tenant_id, group_id)
     d = group.modify_state(partial(controller.obey_config_change, log,
                                    transaction_id(request), config))
     return d.addCallback(lambda _: result)
def resume_scaling_group(request, log, tenant_id, scaling_group_id):
    """
    Resume a scaling group.  This means that scaling policies will now get
    executed as usual.  This is an idempotent operation - resuming an already
    running group does nothing.
    """
    group = get_store().get_scaling_group(log, tenant_id, scaling_group_id)
    return controller.resume_scaling_group(log, transaction_id(request), group)
def pause_scaling_group(request, log, tenant_id, scaling_group_id):
    """
    Pause a scaling group.  This means that no scaling policies will get
    executed (execution will be rejected).  This is an idempotent operation -
    pausing an already paused group does nothing.
    """
    group = get_store().get_scaling_group(log, tenant_id, scaling_group_id)
    return controller.pause_scaling_group(log, transaction_id(request), group)
Example #5
0
def resume_scaling_group(request, log, tenant_id, scaling_group_id):
    """
    Resume a scaling group.  This means that scaling policies will now get
    executed as usual.  This is an idempotent operation - resuming an already
    running group does nothing.
    """
    group = get_store().get_scaling_group(log, tenant_id, scaling_group_id)
    return controller.resume_scaling_group(log, transaction_id(request), group)
Example #6
0
def pause_scaling_group(request, log, tenant_id, scaling_group_id):
    """
    Pause a scaling group.  This means that no scaling policies will get
    executed (execution will be rejected).  This is an idempotent operation -
    pausing an already paused group does nothing.
    """
    group = get_store().get_scaling_group(log, tenant_id, scaling_group_id)
    return controller.pause_scaling_group(log, transaction_id(request), group)
Example #7
0
 def _do_obey_config_change(result):
     group_id = result['id']
     config = result['groupConfiguration']
     group = get_store().get_scaling_group(log, tenant_id, group_id)
     d = group.modify_state(
         partial(controller.obey_config_change, log,
                 transaction_id(request), config))
     return d.addCallback(lambda _: result)
Example #8
0
 def execute_policy((tenant_id, group_id, policy_id)):
     bound_log = log.bind(tenant_id=tenant_id,
                          scaling_group_id=group_id,
                          policy_id=policy_id)
     logl[0] = bound_log
     group = store.get_scaling_group(bound_log, tenant_id, group_id)
     return group.modify_state(
         partial(controller.maybe_execute_scaling_policy,
                 bound_log,
                 transaction_id(request),
                 policy_id=policy_id))
Example #9
0
def execute_policy(request, log, tenant_id, scaling_group_id, policy_id):
    """
    Execute this scaling policy.

    TBD: Response body.

    Example response::

        {}
    """
    group = get_store().get_scaling_group(log, tenant_id, scaling_group_id)
    d = group.modify_state(
        partial(controller.maybe_execute_scaling_policy, log, transaction_id(request), policy_id=policy_id)
    )
    d.addCallback(lambda _: "{}")  # Return value TBD
    return d
Example #10
0
def execute_policy(request, log, tenant_id, scaling_group_id, policy_id):
    """
    Execute this scaling policy.

    TBD: Response body.

    Example response::

        {}
    """
    group = get_store().get_scaling_group(log, tenant_id, scaling_group_id)
    d = group.modify_state(
        partial(controller.maybe_execute_scaling_policy,
                log,
                transaction_id(request),
                policy_id=policy_id))
    d.addCallback(lambda _: "{}")  # Return value TBD
    return d
Example #11
0
 def foo(request, log):
     transaction_ids.append(transaction_id(request))
     return 'ok'
 def _do_obey_config_change(_, group):
     return group.modify_state(
         partial(controller.obey_config_change, log, transaction_id(request),
                 data))
Example #13
0
 def _do_obey_config_change(_, group):
     return group.modify_state(
         partial(controller.obey_config_change, log,
                 transaction_id(request), data))
Example #14
0
 def execute_policy((tenant_id, group_id, policy_id)):
     group = store.get_scaling_group(log, tenant_id, group_id)
     # no deferred return because this doesn't wait for execution
     group.modify_state(partial(controller.maybe_execute_scaling_policy,
                                log, transaction_id(request),
                                policy_id=policy_id))
Example #15
0
 def execute_policy((tenant_id, group_id, policy_id)):
     group = store.get_scaling_group(log, tenant_id, group_id)
     return group.modify_state(partial(controller.maybe_execute_scaling_policy,
                                       cap_log, transaction_id(request),
                                       policy_id=policy_id))