def connect_api_gateway_to_sqs(gateway_name, stage_name, queue_arn, path, region_name=None): resources = {} template = APIGATEWAY_SQS_DATA_INBOUND_TEMPLATE resource_path = path.replace('/', '') region_name = region_name or aws_stack.get_region() queue_name = aws_stack.sqs_queue_name(queue_arn) sqs_region = aws_stack.extract_region_from_arn(queue_arn) or region_name resources[resource_path] = [{ 'httpMethod': 'POST', 'authorizationType': 'NONE', 'integrations': [{ 'type': 'AWS', 'uri': 'arn:aws:apigateway:%s:sqs:path/%s/%s' % (sqs_region, TEST_AWS_ACCOUNT_ID, queue_name), 'requestTemplates': { 'application/json': template }, }] }] return aws_stack.create_api_gateway(name=gateway_name, resources=resources, stage_name=stage_name, region_name=region_name)
def connect_api_gateway_to_sqs(gateway_name, stage_name, queue_arn, path, region_name=None): resources = {} template = APIGATEWAY_SQS_DATA_INBOUND_TEMPLATE resource_path = path.replace("/", "") region_name = region_name or aws_stack.get_region() queue_name = aws_stack.sqs_queue_name(queue_arn) sqs_region = aws_stack.extract_region_from_arn(queue_arn) or region_name resources[resource_path] = [{ "httpMethod": "POST", "authorizationType": "NONE", "integrations": [{ "type": "AWS", "uri": "arn:aws:apigateway:%s:sqs:path/%s/%s" % (sqs_region, TEST_AWS_ACCOUNT_ID, queue_name), "requestTemplates": { "application/json": template }, }], }] return aws_stack.create_api_gateway( name=gateway_name, resources=resources, stage_name=stage_name, region_name=region_name, )