|
| 1 | +module "wrapper" { |
| 2 | + source = "../" |
| 3 | + |
| 4 | + for_each = var.items |
| 5 | + |
| 6 | + create_graphql_api = try(each.value.create_graphql_api, var.defaults.create_graphql_api, true) |
| 7 | + logging_enabled = try(each.value.logging_enabled, var.defaults.logging_enabled, false) |
| 8 | + domain_name_association_enabled = try(each.value.domain_name_association_enabled, var.defaults.domain_name_association_enabled, false) |
| 9 | + caching_enabled = try(each.value.caching_enabled, var.defaults.caching_enabled, false) |
| 10 | + xray_enabled = try(each.value.xray_enabled, var.defaults.xray_enabled, false) |
| 11 | + name = try(each.value.name, var.defaults.name, "") |
| 12 | + schema = try(each.value.schema, var.defaults.schema, "") |
| 13 | + visibility = try(each.value.visibility, var.defaults.visibility, null) |
| 14 | + authentication_type = try(each.value.authentication_type, var.defaults.authentication_type, "API_KEY") |
| 15 | + create_logs_role = try(each.value.create_logs_role, var.defaults.create_logs_role, true) |
| 16 | + logs_role_name = try(each.value.logs_role_name, var.defaults.logs_role_name, null) |
| 17 | + log_cloudwatch_logs_role_arn = try(each.value.log_cloudwatch_logs_role_arn, var.defaults.log_cloudwatch_logs_role_arn, null) |
| 18 | + log_field_log_level = try(each.value.log_field_log_level, var.defaults.log_field_log_level, null) |
| 19 | + log_exclude_verbose_content = try(each.value.log_exclude_verbose_content, var.defaults.log_exclude_verbose_content, false) |
| 20 | + lambda_authorizer_config = try(each.value.lambda_authorizer_config, var.defaults.lambda_authorizer_config, {}) |
| 21 | + openid_connect_config = try(each.value.openid_connect_config, var.defaults.openid_connect_config, {}) |
| 22 | + user_pool_config = try(each.value.user_pool_config, var.defaults.user_pool_config, {}) |
| 23 | + additional_authentication_provider = try(each.value.additional_authentication_provider, var.defaults.additional_authentication_provider, {}) |
| 24 | + graphql_api_tags = try(each.value.graphql_api_tags, var.defaults.graphql_api_tags, {}) |
| 25 | + logs_role_tags = try(each.value.logs_role_tags, var.defaults.logs_role_tags, {}) |
| 26 | + tags = try(each.value.tags, var.defaults.tags, {}) |
| 27 | + domain_name = try(each.value.domain_name, var.defaults.domain_name, "") |
| 28 | + domain_name_description = try(each.value.domain_name_description, var.defaults.domain_name_description, null) |
| 29 | + certificate_arn = try(each.value.certificate_arn, var.defaults.certificate_arn, "") |
| 30 | + caching_behavior = try(each.value.caching_behavior, var.defaults.caching_behavior, "FULL_REQUEST_CACHING") |
| 31 | + cache_type = try(each.value.cache_type, var.defaults.cache_type, "SMALL") |
| 32 | + cache_ttl = try(each.value.cache_ttl, var.defaults.cache_ttl, 1) |
| 33 | + cache_at_rest_encryption_enabled = try(each.value.cache_at_rest_encryption_enabled, var.defaults.cache_at_rest_encryption_enabled, false) |
| 34 | + cache_transit_encryption_enabled = try(each.value.cache_transit_encryption_enabled, var.defaults.cache_transit_encryption_enabled, false) |
| 35 | + api_keys = try(each.value.api_keys, var.defaults.api_keys, {}) |
| 36 | + lambda_allowed_actions = try(each.value.lambda_allowed_actions, var.defaults.lambda_allowed_actions, ["lambda:invokeFunction"]) |
| 37 | + dynamodb_allowed_actions = try(each.value.dynamodb_allowed_actions, var.defaults.dynamodb_allowed_actions, ["dynamodb:GetItem", "dynamodb:PutItem", "dynamodb:DeleteItem", "dynamodb:UpdateItem", "dynamodb:Query", "dynamodb:Scan", "dynamodb:BatchGetItem", "dynamodb:BatchWriteItem"]) |
| 38 | + elasticsearch_allowed_actions = try(each.value.elasticsearch_allowed_actions, var.defaults.elasticsearch_allowed_actions, ["es:ESHttpDelete", "es:ESHttpHead", "es:ESHttpGet", "es:ESHttpPost", "es:ESHttpPut"]) |
| 39 | + iam_permissions_boundary = try(each.value.iam_permissions_boundary, var.defaults.iam_permissions_boundary, null) |
| 40 | + direct_lambda_request_template = try(each.value.direct_lambda_request_template, var.defaults.direct_lambda_request_template, <<-EOF |
| 41 | + { |
| 42 | + "version" : "2017-02-28", |
| 43 | + "operation": "Invoke", |
| 44 | + "payload": { |
| 45 | + "arguments": $util.toJson($ctx.arguments), |
| 46 | + "identity": $util.toJson($ctx.identity), |
| 47 | + "source": $util.toJson($ctx.source), |
| 48 | + "request": $util.toJson($ctx.request), |
| 49 | + "prev": $util.toJson($ctx.prev), |
| 50 | + "info": { |
| 51 | + "selectionSetList": $util.toJson($ctx.info.selectionSetList), |
| 52 | + "selectionSetGraphQL": $util.toJson($ctx.info.selectionSetGraphQL), |
| 53 | + "parentTypeName": $util.toJson($ctx.info.parentTypeName), |
| 54 | + "fieldName": $util.toJson($ctx.info.fieldName), |
| 55 | + "variables": $util.toJson($ctx.info.variables) |
| 56 | + }, |
| 57 | + "stash": $util.toJson($ctx.stash) |
| 58 | + } |
| 59 | + } |
| 60 | + EOF |
| 61 | + ) |
| 62 | + direct_lambda_response_template = try(each.value.direct_lambda_response_template, var.defaults.direct_lambda_response_template, <<-EOF |
| 63 | + $util.toJson($ctx.result) |
| 64 | + EOF |
| 65 | + ) |
| 66 | + resolver_caching_ttl = try(each.value.resolver_caching_ttl, var.defaults.resolver_caching_ttl, 60) |
| 67 | + datasources = try(each.value.datasources, var.defaults.datasources, {}) |
| 68 | + resolvers = try(each.value.resolvers, var.defaults.resolvers, {}) |
| 69 | + functions = try(each.value.functions, var.defaults.functions, {}) |
| 70 | +} |
0 commit comments