forked from jitsecurity/mongodb-atlas-aws-terraform
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmongo_atlas.tf
42 lines (40 loc) · 2.1 KB
/
mongo_atlas.tf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
module "mongo-cf-secret" {
count = var.enable_cloudformation_atlas_resources ? 1 : 0
source = "./modules/secret"
secret_name = "cfn/atlas/profile/${var.org_id}"
secret_value = jsonencode({
PublicKey = var.mongo_atlas_public_key
PrivateKey = var.mongo_atlas_private_key
})
description = "Required to be able to use CloudFormation resources to create mongo resources"
}
module "mongo-cf-activation" {
count = var.enable_cloudformation_atlas_resources ? 1 : 0
source = "./modules/cf_public_extension"
iam_actions = ["secretsmanager:GetSecretValue"]
iam_resources = [module.mongo-cf-secret[0].secret_arn]
publisher_id = var.mongo_cloudformation_publisher_id
custom_resources_types = ["MongoDB::Atlas::CustomDBRole",
"MongoDB::Atlas::DatabaseUser"]
policy_name = "mongo-resource-activator-cf"
}
module "mongodb_atlas" {
source = "./modules/mongoatlas"
stage = var.stage
organization_id = var.org_id
mongo_ip_access_list = var.security.ip_whitelist
mongo_instances = var.instances
aws_vpc_id = var.security.aws_vpc_id
private_subnet_ids = var.security.private_subnet_ids
aws_allowed_access_security_groups = var.security.aws_allowed_access_security_groups
jwt_audience = var.data_api_configurations.jwt_audience
jwt_public_key = var.data_api_configurations.jwt_public_key
tenant_id_field_in_jwt = var.data_api_configurations.tenant_id_field_in_jwt
display_name_field_in_jwt = var.data_api_configurations.display_name_field_in_jwt
add_mongo_ips_access_to_data_api = var.data_api_configurations.add_mongo_ips_access_to_data_api
notification_email = var.alerts.email_notification
daily_price_threshold_alert = var.alerts.daily_price_threshold_alert
enable_continuous_backup = var.enable_continuous_backup
enable_termination_protection = var.enable_termination_protection
aws_region = var.region
}