diff --git a/build/includes/terraform.mk b/build/includes/terraform.mk index 7f4b8b89f9..fb41eecb51 100644 --- a/build/includes/terraform.mk +++ b/build/includes/terraform.mk @@ -81,5 +81,9 @@ endif GCP_CLUSTER_NAME=$(GCP_TF_CLUSTER_NAME) $(MAKE) gcloud-auth-cluster gcloud-terraform-destroy-cluster: +ifndef GCP_PROJECT + $(eval GCP_PROJECT=$(shell sh -c "gcloud config get-value project 2> /dev/null")) +endif $(DOCKER_RUN) bash -c 'cd $(mount_path)/build/terraform/gke && \ - terraform destroy -target module.helm_agones.helm_release.agones -auto-approve && sleep 60 && terraform destroy -auto-approve' + terraform destroy -var project=$(GCP_PROJECT) -target module.helm_agones.helm_release.agones -auto-approve && sleep 60 && \ + terraform destroy -var project=$(GCP_PROJECT) -auto-approve' diff --git a/build/terraform/gke/module.tf b/build/terraform/gke/module.tf index a99474cb52..cc45b154d0 100644 --- a/build/terraform/gke/module.tf +++ b/build/terraform/gke/module.tf @@ -97,17 +97,21 @@ variable "feature_gates" { default = "" } +variable "kubernetes_version" { + default = "1.15" +} module "gke_cluster" { source = "../../../install/terraform/modules/gke" cluster = { - "name" = var.name - "zone" = var.zone - "machineType" = var.machine_type - "initialNodeCount" = var.node_count - "project" = var.project - "network" = var.network + "name" = var.name + "zone" = var.zone + "machineType" = var.machine_type + "initialNodeCount" = var.node_count + "project" = var.project + "network" = var.network + "kubernetesVersion" = var.kubernetes_version } } diff --git a/examples/terraform-submodules/gke/module.tf b/examples/terraform-submodules/gke/module.tf index 48a46304e7..cca6939a36 100644 --- a/examples/terraform-submodules/gke/module.tf +++ b/examples/terraform-submodules/gke/module.tf @@ -46,7 +46,6 @@ variable "machine_type" { variable "node_count" { default = "4" } - variable "zone" { default = "us-west1-c" description = "The GCP zone to create the cluster in" diff --git a/install/terraform/modules/gke/cluster.tf b/install/terraform/modules/gke/cluster.tf index 7033ac3c0c..181447c7c4 100644 --- a/install/terraform/modules/gke/cluster.tf +++ b/install/terraform/modules/gke/cluster.tf @@ -19,37 +19,49 @@ terraform { data "google_client_config" "default" {} +# A list of all parameters used in interpolation var.cluster +# Set values to default if not key was not set in original map +locals { + project = lookup(var.cluster, "project", "agones") + zone = lookup(var.cluster, "zone", "us-west1-c") + name = lookup(var.cluster, "name", "test-cluster") + machineType = lookup(var.cluster, "machineType", "n1-standard-4") + initialNodeCount = lookup(var.cluster, "initialNodeCount", "4") + network = lookup(var.cluster, "network", "default") + kubernetesVersion = lookup(var.cluster, "kubernetesVersion", "1.15") +} + # echo command used for debugging purpose # Run `terraform taint null_resource.test-setting-variables` before second execution resource "null_resource" "test-setting-variables" { provisioner "local-exec" { command = <