in functions/source/update_custommanaged_cmk_policy.py [0:0]
def handler(event, context):
# make sure we send a failure to CloudFormation if the function
# is going to timeout
timer = threading.Timer((context.get_remaining_time_in_millis()
/ 1000.00) - 0.5, timeout, args=[event, context])
timer.start()
print('Received event: %s' % json.dumps(event))
status = cfnresponse.SUCCESS
try:
key_id = event['ResourceProperties']['key_id']
arn_credentials = event['ResourceProperties']['arn_credentials']
use_cases = event['ResourceProperties']['use_cases']
reuse_key_for_cluster_volumes = event['ResourceProperties']['reuse_key_for_cluster_volumes']
if event['RequestType'] == 'Create':
# Nothing to do if MANAGED_SERVICES is the use case
if use_cases == 'STORAGE' or 'BOTH':
update_key_policy(key_id, arn_credentials, reuse_key_for_cluster_volumes)
except Exception as e:
logging.error('Exception: %s' % e, exc_info=True)
status = cfnresponse.FAILED
finally:
timer.cancel()
cfnresponse.send(event, context, status, {}, None)