From 7c5682b8b6ddae5229f246ba8156074a9865c345 Mon Sep 17 00:00:00 2001 From: ewolak-sq <50153913+ewolak-sq@users.noreply.github.com> Date: Fri, 4 Oct 2019 20:18:06 +0000 Subject: [PATCH] Enable GKE pods_per_node flags in GA Signed-off-by: Modular Magician --- google/resource_container_cluster.go | 4 ++++ google/resource_container_node_pool.go | 11 ++++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/google/resource_container_cluster.go b/google/resource_container_cluster.go index b83247004a5..f9d63652705 100644 --- a/google/resource_container_cluster.go +++ b/google/resource_container_cluster.go @@ -775,6 +775,10 @@ func resourceContainerClusterCreate(d *schema.ResourceData, meta interface{}) er ResourceLabels: expandStringMap(d, "resource_labels"), } + if v, ok := d.GetOk("default_max_pods_per_node"); ok { + cluster.DefaultMaxPodsConstraint = expandDefaultMaxPodsConstraint(v) + } + // Only allow setting node_version on create if it's set to the equivalent master version, // since `InitialClusterVersion` only accepts valid master-style versions. if v, ok := d.GetOk("node_version"); ok { diff --git a/google/resource_container_node_pool.go b/google/resource_container_node_pool.go index b664ba3d97d..00679fdc9cd 100644 --- a/google/resource_container_node_pool.go +++ b/google/resource_container_node_pool.go @@ -99,7 +99,6 @@ var schemaNodePool = map[string]*schema.Schema{ }, "max_pods_per_node": { - Removed: "This field is in beta. Use it in the the google-beta provider instead. See https://terraform.io/docs/providers/google/provider_versions.html for more details.", Type: schema.TypeInt, Optional: true, ForceNew: true, @@ -494,6 +493,12 @@ func expandNodePool(d *schema.ResourceData, prefix string) (*containerBeta.NodeP } } + if v, ok := d.GetOk(prefix + "max_pods_per_node"); ok { + np.MaxPodsConstraint = &containerBeta.MaxPodsConstraint{ + MaxPodsPerNode: int64(v.(int)), + } + } + if v, ok := d.GetOk(prefix + "management"); ok { managementConfig := v.([]interface{})[0].(map[string]interface{}) np.Management = &containerBeta.NodeManagement{} @@ -550,6 +555,10 @@ func flattenNodePool(d *schema.ResourceData, config *Config, np *containerBeta.N } } + if np.MaxPodsConstraint != nil { + nodePool["max_pods_per_node"] = np.MaxPodsConstraint.MaxPodsPerNode + } + nodePool["management"] = []map[string]interface{}{ { "auto_repair": np.Management.AutoRepair,