def __init__(self, region): """ Initialize the proper botocore service """ self.name = "autoscaling" self.region = region self.service, self.endpoint = init_botocore_service( self.name, self.region)
params = fetch_used_params(self.name, cmd, scaling_policy) params.update(endpoint) log.info("create the scaling policy") log.info(">> %s" % scaling_policy["PolicyName"]) try: data = self.handle_response(operate(self.service, cmd, params)) except Exception, e: log.error(e) else: log.info("OK") result += 1 policy_arn = data['PolicyARN'] # FIXME: special here, just for cloudwatch service name = "cloudwatch" service, endpoint = init_botocore_service(name, self.region) endpoint = {'endpoint': endpoint} cmd = "PutMetricAlarm" metric_alarm['AlarmActions'].append(policy_arn) params = fetch_used_params(name, cmd, metric_alarm) params.update(endpoint) log.info("create the associated metric alarm") log.info(">> %s" % metric_alarm["AlarmName"]) try: self.handle_response(operate(service, cmd, params)) except Exception, e: log.error(e) else: log.info("OK") result += 1