Skip to content

Commit a232c5a

Browse files
author
Sophie Haskins
committed
chore: correct github perms
1 parent ea905fa commit a232c5a

File tree

5 files changed

+51
-14
lines changed

5 files changed

+51
-14
lines changed

terraform/modules/gost_api/secrets.tf

-6
Original file line numberDiff line numberDiff line change
@@ -41,11 +41,6 @@ data "aws_ssm_parameter" "datadog_api_key" {
4141
name = "${var.ssm_path_prefix}/datadog/api_key"
4242
}
4343

44-
data "aws_ssm_parameter" "github_docker_credentials" {
45-
count = var.enabled ? 1 : 0
46-
name = "${var.ssm_path_prefix}/github/docker_credentials"
47-
}
48-
4944
module "decrypt_secrets_policy" {
5045
source = "cloudposse/iam-policy/aws"
5146
version = "2.0.1"
@@ -77,7 +72,6 @@ module "decrypt_secrets_policy" {
7772
join("", data.aws_ssm_parameter.datadog_api_key[*].arn),
7873
join("", aws_ssm_parameter.postgres_connection_string[*].arn),
7974
join("", aws_ssm_parameter.cookie_secret[*].arn),
80-
join("", data.aws_ssm_parameter.github_docker_credentials[*].arn),
8175
])
8276
}
8377
]

terraform/modules/gost_api/task.tf

+27-2
Original file line numberDiff line numberDiff line change
@@ -158,10 +158,35 @@ resource "aws_iam_role" "execution" {
158158
})
159159
}
160160

161+
data "aws_secretsmanager_secret" "github_docker_credentials" {
162+
name = "${var.ssm_path_prefix}/github/docker_credentials"
163+
}
164+
165+
module "decrypt_github_credentials_policy" {
166+
source = "cloudposse/iam-policy/aws"
167+
version = "1.0.1"
168+
context = module.this.context
169+
170+
name = "decrypt-github-credentials"
171+
172+
iam_policy_statements = {
173+
GetSecretValue = {
174+
effect = "Allow"
175+
actions = [
176+
"secretsmanager:GetSecretValue",
177+
]
178+
resources = [
179+
data.aws_secretsmanager_secret.github_docker_credentials.arn,
180+
]
181+
}
182+
}
183+
}
184+
161185
resource "aws_iam_role_policy" "execution" {
162186
for_each = !var.enabled ? {} : {
163-
decrypt-secrets = module.decrypt_secrets_policy.json
164-
write-api-logs = module.write_api_logs_policy.json
187+
decrypt-secrets = module.decrypt_secrets_policy.json
188+
write-api-logs = module.write_api_logs_policy.json
189+
decrypt-github-creds = module.decrypt_github_credentials_policy.json
165190
}
166191

167192
name = each.key

terraform/modules/gost_consume_grants/compute.tf

+24
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,30 @@ resource "aws_iam_role" "execution" {
157157
})
158158
}
159159

160+
data "aws_secretsmanager_secret" "github_docker_credentials" {
161+
name = "${var.ssm_path_prefix}/github/docker_credentials"
162+
}
163+
164+
module "decrypt_github_credentials_policy" {
165+
source = "cloudposse/iam-policy/aws"
166+
version = "1.0.1"
167+
context = module.this.context
168+
169+
name = "decrypt-github-credentials"
170+
171+
iam_policy_statements = {
172+
GetSecretValue = {
173+
effect = "Allow"
174+
actions = [
175+
"secretsmanager:GetSecretValue",
176+
]
177+
resources = [
178+
data.aws_secretsmanager_secret.github_docker_credentials.arn,
179+
]
180+
}
181+
}
182+
}
183+
160184
resource "aws_iam_role_policy" "execution" {
161185
for_each = {
162186
decrypt-datadog-api-key = module.decrypt_datadog_api_key_policy.json

terraform/modules/gost_consume_grants/datadog.tf

-5
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,6 @@ locals {
1616
data "aws_ssm_parameter" "datadog_api_key" {
1717
name = "${var.ssm_path_prefix}/datadog/api_key"
1818
}
19-
data "aws_ssm_parameter" "github_docker_credentials" {
20-
name = "${var.ssm_path_prefix}/github/docker_credentials"
21-
}
2219

2320
module "decrypt_datadog_api_key_policy" {
2421
source = "cloudposse/iam-policy/aws"
@@ -34,7 +31,6 @@ module "decrypt_datadog_api_key_policy" {
3431
resources = [
3532
data.aws_ssm_parameter.datadog_api_key.arn,
3633
data.aws_kms_key.ssm.arn,
37-
data.aws_ssm_parameter.github_docker_credentials.arn,
3834
]
3935
}
4036
GetSecretParameters = {
@@ -45,7 +41,6 @@ module "decrypt_datadog_api_key_policy" {
4541
]
4642
resources = [
4743
data.aws_ssm_parameter.datadog_api_key.arn,
48-
data.aws_ssm_parameter.github_docker_credentials.arn
4944
]
5045
}
5146
}

terraform/modules/sqs_consumer_task/compute.tf

-1
Original file line numberDiff line numberDiff line change
@@ -215,7 +215,6 @@ module "decrypt_github_credentials_policy" {
215215
}
216216
}
217217

218-
219218
resource "aws_iam_role_policy" "execution" {
220219
for_each = {
221220
decrypt-datadog-api-key = module.decrypt_datadog_api_key_policy.json

0 commit comments

Comments
 (0)