@@ -10,9 +10,13 @@ This module uses the recommended way of passing sensitive data from SecretManage
10
10
module "secrets" {
11
11
source = "exlabs/ecs-secrets-manager/aws"
12
12
# We recommend pinning every module to a specific version
13
- # version = "x.x.x"
14
- name = "data-pipeline-secrets"
15
- ecs_task_execution_role = "ecs-task-execution-role"
13
+ version = "1.0.0"
14
+ name = "data-pipeline-secrets"
15
+
16
+ ecs_task_execution_roles = [
17
+ "ecs-task-execution-role1",
18
+ "ecs-task-execution-role2"
19
+ ]
16
20
17
21
key_names = [
18
22
"STRIPE_PUBLIC_KEY",
@@ -24,14 +28,12 @@ module "secrets" {
24
28
resource "aws_ecs_task_definition" "data_pipeline" {
25
29
#...
26
30
27
- container_definitions = <<TASK_DEFINITION
28
- [
31
+ container_definitions = jsonencode([
29
32
{
30
- " secrets": ${jsonencode( module.secrets.ecs_secrets)} ,
33
+ secrets = module.secrets.ecs_secrets,
31
34
#...
32
35
}
33
- ]
34
- TASK_DEFINITION
36
+ ])
35
37
}
36
38
```
37
39
@@ -62,20 +64,19 @@ No modules.
62
64
63
65
| Name | Type |
64
66
| ------| ------|
65
- | [ aws_iam_policy.secrets_access] ( https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/iam_policy ) | resource |
66
- | [ random_id.secrets_access_policy_suffix] ( https://registry.terraform.io/providers/hashicorp/random/latest/docs/resources/id ) | resource |
67
- | [ aws_iam_role_policy_attachment.secret_access] ( https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/iam_role_policy_attachment ) | resource |
68
- | [ aws_secretsmanager_secret.default] ( https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/secretsmanager_secret ) | resource |
69
- | [ aws_iam_policy_document.secrets_policy] ( https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/iam_policy_document ) | data source |
70
- | [ aws_iam_role.ecs_task_execution_role] ( https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/iam_role ) | data source |
67
+ | [ aws_iam_policy.this] ( https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/iam_policy ) | resource |
68
+ | [ random_id.policy_suffix] ( https://registry.terraform.io/providers/hashicorp/random/latest/docs/resources/id ) | resource |
69
+ | [ aws_iam_role_policy_attachment.this] ( https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/iam_role_policy_attachment ) | resource |
70
+ | [ aws_secretsmanager_secret.this] ( https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/secretsmanager_secret ) | resource |
71
71
72
72
## Inputs
73
73
74
74
| Name | Description | Type | Default | Required |
75
75
| ------| -------------| ------| ---------| :--------:|
76
- | <a name =" input_ecs_task_execution_role " ></a > [ ecs\_ task\_ execution\_ role ] ( #input\_ ecs\_ task\_ execution\_ role ) | ECS task execution role name | ` string ` | n/a | yes |
77
- | <a name =" input_key_names " ></a > [ key\_ names] ( #input\_ key\_ names ) | Secret names that will be injected as env variables | ` list(string) ` | n/a | yes |
76
+ | <a name =" input_ecs_task_execution_roles " ></a > [ ecs\_ task\_ execution\_ roles ] ( #input\_ ecs\_ task\_ execution\_ roles ) | ECS task execution role names | ` list( string) ` | ` [] ` | yes |
77
+ | <a name =" input_key_names " ></a > [ key\_ names] ( #input\_ key\_ names ) | Secret names that will be injected as env variables | ` list(string) ` | ` [] ` | yes |
78
78
| <a name =" input_name " ></a > [ name] ( #input\_ name ) | AWS SecretsManager secret name | ` string ` | n/a | yes |
79
+ | <a name =" input_description " ></a > [ description] ( #input\_ description ) | AWS SecretsManager secret description | ` string ` | n/a | no |
79
80
80
81
## Outputs
81
82
0 commit comments