|
1 | | -module "dms_custom_kms_migration" { |
2 | | - source = "./modules/dms" |
3 | | - environment = var.environment |
4 | | - |
5 | | - ecs_sg_ids = concat(local.ecs_sg_ids, [module.prepare_new_db_service.security_group_id]) |
6 | | - source_endpoint = aws_rds_cluster.aurora_cluster.endpoint |
7 | | - source_port = aws_rds_cluster.aurora_cluster.port |
8 | | - source_database_name = aws_rds_cluster.aurora_cluster.database_name |
9 | | - source_db_secret_arn = var.db_secret_arn == null ? aws_rds_cluster.aurora_cluster.master_user_secret[0].secret_arn : var.db_secret_arn |
10 | | - |
11 | | - target_endpoint = aws_rds_cluster.core.endpoint |
12 | | - target_port = aws_rds_cluster.core.port |
13 | | - target_database_name = aws_rds_cluster.core.database_name |
14 | | - target_db_secret_arn = aws_rds_cluster.core.master_user_secret[0].secret_arn |
15 | | - target_db_rotation_arn = aws_secretsmanager_secret_rotation.target.id |
16 | | - |
17 | | - engine_name = aws_rds_cluster.aurora_cluster.engine |
18 | | - subnet_ids = [aws_subnet.private_subnet_a.id, aws_subnet.private_subnet_b.id] |
19 | | - |
20 | | - rds_cluster_security_group_id = aws_security_group.rds_security_group.id |
21 | | - vpc_id = aws_vpc.application_vpc.id |
22 | | -} |
23 | | - |
24 | | -module "prepare_new_db_service" { |
25 | | - source = "./modules/ecs_service" |
26 | | - |
27 | | - cluster_id = aws_ecs_cluster.cluster.id |
28 | | - cluster_name = aws_ecs_cluster.cluster.name |
29 | | - environment = var.environment |
30 | | - maximum_replica_count = 1 |
31 | | - minimum_replica_count = 1 |
32 | | - network_params = { |
33 | | - subnets = [aws_subnet.private_subnet_a.id, aws_subnet.private_subnet_b.id] |
34 | | - vpc_id = aws_vpc.application_vpc.id |
35 | | - } |
36 | | - server_type = "none" |
37 | | - server_type_name = "prepare_new_db" |
38 | | - task_config = { |
39 | | - environment = [{ |
40 | | - name = "DB_HOST" |
41 | | - value = aws_rds_cluster.core.endpoint |
42 | | - }, |
43 | | - { |
44 | | - name = "DB_NAME" |
45 | | - value = aws_rds_cluster.core.database_name |
46 | | - }, |
47 | | - { |
48 | | - name = "RAILS_ENV" |
49 | | - value = var.rails_env |
50 | | - }, |
51 | | - { |
52 | | - name = "SENTRY_ENVIRONMENT" |
53 | | - value = var.environment |
54 | | - }, |
55 | | - { |
56 | | - name = "MAVIS__CIS2__ENABLED" |
57 | | - value = "false" |
58 | | - }, |
59 | | - { |
60 | | - name = "MAVIS__SPLUNK__ENABLED" |
61 | | - value = "false" |
62 | | - } |
63 | | - ] |
64 | | - secrets = [ |
65 | | - { |
66 | | - name = "DB_CREDENTIALS" |
67 | | - valueFrom = aws_rds_cluster.core.master_user_secret[0].secret_arn |
68 | | - }, |
69 | | - { |
70 | | - name = "RAILS_MASTER_KEY" |
71 | | - valueFrom = var.rails_master_key_path |
72 | | - } |
73 | | - ] |
74 | | - cpu = 1024 |
75 | | - memory = 2048 |
76 | | - docker_image = "${var.account_id}.dkr.ecr.eu-west-2.amazonaws.com/${var.docker_image}@${var.image_digest}" |
77 | | - execution_role_arn = aws_iam_role.ecs_task_execution_role.arn |
78 | | - task_role_arn = aws_iam_role.ecs_task_role.arn |
79 | | - log_group_name = aws_cloudwatch_log_group.ecs_log_group.name |
80 | | - region = var.region |
81 | | - health_check_command = ["CMD-SHELL", "echo 'alive' || exit 1"] |
82 | | - } |
83 | | - depends_on = [aws_rds_cluster_instance.core] |
84 | | -} |
85 | | - |
86 | | -resource "aws_security_group_rule" "db_prepare_access_to_db" { |
87 | | - type = "ingress" |
88 | | - from_port = aws_rds_cluster.core.port |
89 | | - to_port = aws_rds_cluster.core.port |
90 | | - protocol = "tcp" |
91 | | - security_group_id = aws_security_group.rds_security_group.id |
92 | | - source_security_group_id = module.prepare_new_db_service.security_group_id |
93 | | - |
94 | | - description = "Allow access from the prepare_new_db ECS service to the core RDS cluster" |
95 | | -} |
0 commit comments