Skip to content
This repository was archived by the owner on Jan 5, 2026. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 20 additions & 26 deletions modules/gcp/gke/main.tf
Original file line number Diff line number Diff line change
Expand Up @@ -11,44 +11,39 @@ module "enabled_google_apis" {
]
}

resource "null_resource" "previous" {
depends_on = [module.enabled_google_apis]
provisioner "local-exec" {
command = "echo \"waiting for 30 seconds before starting resources creation\""
}
}

resource "time_sleep" "wait_30_seconds" {
depends_on = [module.enabled_google_apis, null_resource.previous]
create_duration = "30s"
}

resource "null_resource" "after" {
depends_on = [module.enabled_google_apis, time_sleep.wait_30_seconds]
provisioner "local-exec" {
command = "echo \"wait is over!!! starting resources creation\""
}
}

##Not Passing Zone Parameter to Module, If We Don't Pass zone, default locations are selected.
##Not adding gcp_filestore_csi_driver, gce_persistent_disk_csi_driver_config, We use helm to install these drivers, Addons doesn't provide all the features ( ex: snapshot )
##By Default the following Module Creats

## These secondary subnets are mandatory if we would want to launch GKE cluster in VPC Native Cluster.
## Ref: https://jayendrapatil.com/google-kubernetes-engine-networking/
resource "google_compute_subnetwork" "cluster_subnet" {
name = var.subnetwork_name
ip_cidr_range = var.subnetwork_cidr
region = var.region
project = var.project_id
network = var.network_name
private_ip_google_access = true
secondary_ip_range = [
{
range_name = var.pod_subnet_name
ip_cidr_range = var.pod_subnet_cidr_block
},
{
range_name = var.service_subnet_name
ip_cidr_range = var.service_subnet_cidr_block
}
]
}

module "gke" {
depends_on = [google_compute_subnetwork.cluster_subnet]
source = "github.com/argonautdev/terraform-google-kubernetes-engine//modules/private-cluster?ref=v21.1.1"
depends_on = [null_resource.after]
source = "github.com/argonautdev/terraform-google-kubernetes-engine//modules/private-cluster?ref=v21.1.2"
project_id = var.project_id
name = var.cluster_name
description = var.description
region = var.region
zones = var.cluster_node_zones
network = var.network_name
subnetwork = var.subnetwork_name
ip_range_pods = var.pod_subnet_name
ip_range_services = var.service_subnet_name
master_ipv4_cidr_block = var.master_ipv4_cidr_block
http_load_balancing = var.http_load_balancing
filestore_csi_driver = var.filestore_csi_driver
Expand All @@ -59,7 +54,6 @@ module "gke" {
node_pools = var.node_pools
remove_default_node_pool = var.remove_default_node_pool
cluster_resource_labels = merge(var.default_labels, var.labels)
//kubernetes_version = var.kubernetes_version
/*Node Pool taints, Labels, tags */
node_pools_labels = var.node_pools_labels
node_pools_taints = var.node_pools_taints
Expand Down
28 changes: 2 additions & 26 deletions modules/gcp/gke/variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -41,31 +41,6 @@ variable "subnetwork_name" {
type = string
}

variable "pod_subnet_name" {
type = string
description = "The _name_ of the secondary subnet to use for pods"
}

variable "service_subnet_name" {
type = string
description = "The _name_ of the secondary subnet to use for services"
}

variable "subnetwork_cidr" {
description = "Cidr of the subnetwork"
type = string
}

variable "pod_subnet_cidr_block" {
type = string
description = "Pod subnetwork cidr block"
}

variable "service_subnet_cidr_block" {
type = string
description = "Services subnetwork cidr block"
}

##The variable value is important if you would want to create a private cluster
###################
# Variables for Private Cluster
Expand Down Expand Up @@ -174,7 +149,8 @@ variable "node_pools" {
disk_type = "pd-balanced"
image_type = "COS_CONTAINERD"
autoscaling = false
auto_upgrade = false,
auto_upgrade = true,
auto_repair = true,
enable_gcfs = false
},
]
Expand Down