Skip to content

Commit 91ee36f

Browse files
maxi-citakshat-jindal-nit
authored andcommitted
Fix GKE not being able to disable Cilium Policies (GoogleCloudPlatform#11810)
1 parent 9d7016a commit 91ee36f

File tree

2 files changed

+78
-65
lines changed

2 files changed

+78
-65
lines changed

mmv1/third_party/terraform/services/container/resource_container_cluster.go.tmpl

+1
Original file line numberDiff line numberDiff line change
@@ -3423,6 +3423,7 @@ func resourceContainerClusterUpdate(d *schema.ResourceData, meta interface{}) er
34233423
req := &container.UpdateClusterRequest{
34243424
Update: &container.ClusterUpdate{
34253425
DesiredEnableCiliumClusterwideNetworkPolicy: enabled,
3426+
ForceSendFields: []string{"DesiredEnableCiliumClusterwideNetworkPolicy"},
34263427
},
34273428
}
34283429
updateF := updateFunc(req, "updating cilium clusterwide network policy")

mmv1/third_party/terraform/services/container/resource_container_cluster_test.go.tmpl

+77-65
Original file line numberDiff line numberDiff line change
@@ -4245,10 +4245,10 @@ func TestAccContainerCluster_autoprovisioningLocations(t *testing.T) {
42454245
Check: resource.ComposeTestCheckFunc(
42464246
resource.TestCheckResourceAttr("google_container_cluster.with_autoprovisioning_locations",
42474247
"cluster_autoscaling.0.enabled", "true"),
4248-
4248+
42494249
resource.TestCheckResourceAttr("google_container_cluster.with_autoprovisioning_locations",
42504250
"cluster_autoscaling.0.auto_provisioning_locations.0", "us-central1-a"),
4251-
4251+
42524252
resource.TestCheckResourceAttr("google_container_cluster.with_autoprovisioning_locations",
42534253
"cluster_autoscaling.0.auto_provisioning_locations.1", "us-central1-f"),
42544254
),
@@ -4264,10 +4264,10 @@ func TestAccContainerCluster_autoprovisioningLocations(t *testing.T) {
42644264
Check: resource.ComposeTestCheckFunc(
42654265
resource.TestCheckResourceAttr("google_container_cluster.with_autoprovisioning_locations",
42664266
"cluster_autoscaling.0.enabled", "true"),
4267-
4267+
42684268
resource.TestCheckResourceAttr("google_container_cluster.with_autoprovisioning_locations",
42694269
"cluster_autoscaling.0.auto_provisioning_locations.0", "us-central1-b"),
4270-
4270+
42714271
resource.TestCheckResourceAttr("google_container_cluster.with_autoprovisioning_locations",
42724272
"cluster_autoscaling.0.auto_provisioning_locations.1", "us-central1-c"),
42734273
),
@@ -4591,6 +4591,18 @@ func TestAccContainerCluster_enableCiliumPolicies(t *testing.T) {
45914591
ImportStateVerify: true,
45924592
ImportStateVerifyIgnore: []string{"deletion_protection"},
45934593
},
4594+
{
4595+
Config: testAccContainerCluster_enableCiliumPolicies(clusterName, networkName, subnetworkName, false),
4596+
Check: resource.ComposeTestCheckFunc(
4597+
resource.TestCheckResourceAttr("google_container_cluster.primary", "enable_cilium_clusterwide_network_policy", "false"),
4598+
),
4599+
},
4600+
{
4601+
ResourceName: "google_container_cluster.primary",
4602+
ImportState: true,
4603+
ImportStateVerify: true,
4604+
ImportStateVerifyIgnore: []string{"deletion_protection"},
4605+
},
45944606
},
45954607
})
45964608
}
@@ -11331,30 +11343,30 @@ func TestAccContainerCluster_privateRegistry(t *testing.T) {
1133111343

1133211344
func testAccContainerCluster_privateRegistryEnabled(secretID, clusterName, networkName, subnetworkName string) string {
1133311345
return fmt.Sprintf(`
11334-
data "google_project" "test_project" {
11346+
data "google_project" "test_project" {
1133511347
}
1133611348

11337-
resource "google_secret_manager_secret" "secret-basic" {
11349+
resource "google_secret_manager_secret" "secret-basic" {
1133811350
secret_id = "%s"
11339-
replication {
11340-
user_managed {
11341-
replicas {
11342-
location = "us-central1"
11343-
}
11344-
}
11345-
}
11346-
}
11347-
11348-
resource "google_secret_manager_secret_version" "secret-version-basic" {
11349-
secret = google_secret_manager_secret.secret-basic.id
11350-
secret_data = "dummypassword"
11351-
}
11352-
11353-
resource "google_secret_manager_secret_iam_member" "secret_iam" {
11354-
secret_id = google_secret_manager_secret.secret-basic.id
11355-
role = "roles/secretmanager.admin"
11356-
member = "serviceAccount:${data.google_project.test_project.number}[email protected]"
11357-
depends_on = [google_secret_manager_secret_version.secret-version-basic]
11351+
replication {
11352+
user_managed {
11353+
replicas {
11354+
location = "us-central1"
11355+
}
11356+
}
11357+
}
11358+
}
11359+
11360+
resource "google_secret_manager_secret_version" "secret-version-basic" {
11361+
secret = google_secret_manager_secret.secret-basic.id
11362+
secret_data = "dummypassword"
11363+
}
11364+
11365+
resource "google_secret_manager_secret_iam_member" "secret_iam" {
11366+
secret_id = google_secret_manager_secret.secret-basic.id
11367+
role = "roles/secretmanager.admin"
11368+
member = "serviceAccount:${data.google_project.test_project.number}[email protected]"
11369+
depends_on = [google_secret_manager_secret_version.secret-version-basic]
1135811370
}
1135911371

1136011372
resource "google_container_cluster" "primary" {
@@ -11391,7 +11403,7 @@ resource "google_container_cluster" "primary" {
1139111403
}
1139211404
}
1139311405
}
11394-
}
11406+
}
1139511407
`, secretID, clusterName, networkName, subnetworkName)
1139611408
}
1139711409

@@ -11420,29 +11432,29 @@ resource "google_container_cluster" "primary" {
1142011432

1142111433
func testAccContainerCluster_withNodePoolPrivateRegistry(secretID, clusterName, nodePoolName, networkName, subnetworkName string) string {
1142211434
return fmt.Sprintf(`
11423-
data "google_project" "test_project" {
11435+
data "google_project" "test_project" {
1142411436
}
1142511437

11426-
resource "google_secret_manager_secret" "secret-basic" {
11438+
resource "google_secret_manager_secret" "secret-basic" {
1142711439
secret_id = "%s"
11428-
replication {
11429-
user_managed {
11430-
replicas {
11431-
location = "us-central1"
11432-
}
11433-
}
11434-
}
11435-
}
11436-
resource "google_secret_manager_secret_version" "secret-version-basic" {
11437-
secret = google_secret_manager_secret.secret-basic.id
11438-
secret_data = "dummypassword"
11439-
}
11440-
11441-
resource "google_secret_manager_secret_iam_member" "secret_iam" {
11442-
secret_id = google_secret_manager_secret.secret-basic.id
11443-
role = "roles/secretmanager.admin"
11444-
member = "serviceAccount:${data.google_project.test_project.number}[email protected]"
11445-
depends_on = [google_secret_manager_secret_version.secret-version-basic]
11440+
replication {
11441+
user_managed {
11442+
replicas {
11443+
location = "us-central1"
11444+
}
11445+
}
11446+
}
11447+
}
11448+
resource "google_secret_manager_secret_version" "secret-version-basic" {
11449+
secret = google_secret_manager_secret.secret-basic.id
11450+
secret_data = "dummypassword"
11451+
}
11452+
11453+
resource "google_secret_manager_secret_iam_member" "secret_iam" {
11454+
secret_id = google_secret_manager_secret.secret-basic.id
11455+
role = "roles/secretmanager.admin"
11456+
member = "serviceAccount:${data.google_project.test_project.number}[email protected]"
11457+
depends_on = [google_secret_manager_secret_version.secret-version-basic]
1144611458
}
1144711459
resource "google_container_cluster" "primary" {
1144811460
name = "%s"
@@ -11479,29 +11491,29 @@ resource "google_container_cluster" "primary" {
1147911491

1148011492
func testAccContainerCluster_withNodeConfigPrivateRegistry(secretID, clusterName, networkName, subnetworkName string) string {
1148111493
return fmt.Sprintf(`
11482-
data "google_project" "test_project" {
11494+
data "google_project" "test_project" {
1148311495
}
1148411496

1148511497
resource "google_secret_manager_secret" "secret-basic" {
1148611498
secret_id = "%s"
11487-
replication {
11488-
user_managed {
11489-
replicas {
11490-
location = "us-central1"
11491-
}
11492-
}
11493-
}
11494-
}
11495-
resource "google_secret_manager_secret_version" "secret-version-basic" {
11496-
secret = google_secret_manager_secret.secret-basic.id
11497-
secret_data = "dummypassword"
11498-
}
11499-
11500-
resource "google_secret_manager_secret_iam_member" "secret_iam" {
11501-
secret_id = google_secret_manager_secret.secret-basic.id
11502-
role = "roles/secretmanager.admin"
11503-
member = "serviceAccount:${data.google_project.test_project.number}[email protected]"
11504-
depends_on = [google_secret_manager_secret_version.secret-version-basic]
11499+
replication {
11500+
user_managed {
11501+
replicas {
11502+
location = "us-central1"
11503+
}
11504+
}
11505+
}
11506+
}
11507+
resource "google_secret_manager_secret_version" "secret-version-basic" {
11508+
secret = google_secret_manager_secret.secret-basic.id
11509+
secret_data = "dummypassword"
11510+
}
11511+
11512+
resource "google_secret_manager_secret_iam_member" "secret_iam" {
11513+
secret_id = google_secret_manager_secret.secret-basic.id
11514+
role = "roles/secretmanager.admin"
11515+
member = "serviceAccount:${data.google_project.test_project.number}[email protected]"
11516+
depends_on = [google_secret_manager_secret_version.secret-version-basic]
1150511517
}
1150611518
resource "google_container_cluster" "primary" {
1150711519
name = "%s"

0 commit comments

Comments
 (0)