Skip to content

Commit 0d62dd9

Browse files
committed
test: Add TF configs for SSM
1 parent aca94ab commit 0d62dd9

File tree

7 files changed

+33
-9
lines changed

7 files changed

+33
-9
lines changed

e2e/testinfra/terraform/common/registries.tf

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,3 +32,13 @@ resource "google_artifact_registry_repository" "gar" {
3232
description = "A private AR repository used for Config Sync e2e tests"
3333
format = "DOCKER"
3434
}
35+
36+
resource "google_secure_source_manager_instance" "ssm-instance" {
37+
location = "us-central1"
38+
instance_id = "ssm-instance"
39+
40+
# Prevent accidental deletions.
41+
lifecycle {
42+
prevent_destroy = "true"
43+
}
44+
}

e2e/testinfra/terraform/common/service_accounts.tf

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,23 +19,34 @@ module "e2e-csr-reader-sa" {
1919
gcp_sa_id = "e2e-test-csr-reader"
2020
gcp_sa_display_name = "Test CSR Reader"
2121
gcp_sa_description = "Service account used to read from Cloud Source Repositories"
22-
role = "roles/source.reader"
22+
role = ["roles/source.reader"]
2323
}
2424

2525
module "e2e-gar-reader-sa" {
2626
source = "../modules/service_account"
2727
gcp_sa_id = "e2e-test-ar-reader"
2828
gcp_sa_display_name = "Test GAR Reader"
2929
gcp_sa_description = "Service account used to read from Artifact Registry"
30-
role = "roles/artifactregistry.reader"
30+
role = ["roles/artifactregistry.reader"]
3131
}
3232

3333
module "e2e-gcr-reader-sa" {
3434
source = "../modules/service_account"
3535
gcp_sa_id = "e2e-test-gcr-reader"
3636
gcp_sa_display_name = "Test GCR Reader"
3737
gcp_sa_description = "Service account used to read from Container Registry"
38-
role = "roles/storage.objectViewer"
38+
role = ["roles/storage.objectViewer"]
39+
}
40+
41+
module "e2e-ssm-reader-sa" {
42+
source = "../modules/service_account"
43+
gcp_sa_id = "e2e-ssm-reader-sa"
44+
gcp_sa_display_name = "Test SSM Reader"
45+
gcp_sa_description = "Service account used to read from Secure Source Manager Repositories"
46+
role = [
47+
"roles/securesourcemanager.repoReader",
48+
"roles/securesourcemanager.instanceAccessor",
49+
]
3950
}
4051

4152
data "google_project" "project" {

e2e/testinfra/terraform/common/services.tf

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,8 @@ resource "google_project_service" "services" {
2424
"container.googleapis.com",
2525
"compute.googleapis.com",
2626
"monitoring.googleapis.com",
27-
"logging.googleapis.com"
27+
"logging.googleapis.com",
28+
"securesourcemanager.googleapis.com"
2829
])
2930
service = each.value
3031
disable_on_destroy = false

e2e/testinfra/terraform/main.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ terraform {
1818
required_providers {
1919
google = {
2020
source = "hashicorp/google"
21-
version = "4.36.0"
21+
version = "6.43.0"
2222
}
2323
}
2424
backend "gcs" {

e2e/testinfra/terraform/modules/service_account/service_account.tf

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,9 @@ resource "google_service_account_iam_member" "k8s_sa_binding" {
8484
}
8585

8686
resource "google_project_iam_member" "gcp_sa_role" {
87-
role = var.role
87+
for_each = toset(var.role)
88+
89+
role = each.value
8890
member = "serviceAccount:${google_service_account.gcp_sa.email}"
8991
project = data.google_project.project.id
9092
}

e2e/testinfra/terraform/modules/service_account/variables.tf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,6 @@ variable "gcp_sa_description" {
3030
}
3131

3232
variable "role" {
33-
type = string
34-
description = "The GCP project role to grant to the GCP service account"
33+
type = list(string)
34+
description = "The GCP project roles to grant to the GCP service account"
3535
}

e2e/testinfra/terraform/prow/registries.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,4 +31,4 @@ resource "google_artifact_registry_repository" "ar-public" {
3131
// repository = google_artifact_registry_repository.ar-public.name
3232
// role = "roles/artifactregistry.reader"
3333
// member = "allUsers"
34-
//}
34+
//}

0 commit comments

Comments
 (0)