Skip to content

Commit c1ecd54

Browse files
authored
Merge pull request #228 from kopachevsky/fix/181
Fix for Ensure that GA modules don't depend on beta functionality #181
2 parents 3e57e64 + 6e2891b commit c1ecd54

File tree

31 files changed

+34
-122
lines changed

31 files changed

+34
-122
lines changed

CHANGELOG.md

+6
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77
Extending the adopted spec, each change should have a link to its corresponding pull request appended.
88

99
## [Unreleased]
10+
11+
### Changed
12+
13+
* All Beta functionality removed from non-beta clusters, some properties like node_pool taints available only in beta cluster now [#228]
14+
1015
### Added
1116

1217
* Added support for resource usage export config [#238]
@@ -173,6 +178,7 @@ Extending the adopted spec, each change should have a link to its corresponding
173178
[v0.3.0]: https://github.com/terraform-google-modules/terraform-google-kubernetes-engine/compare/v0.2.0...v0.3.0
174179
[v0.2.0]: https://github.com/terraform-google-modules/terraform-google-kubernetes-engine/compare/v0.1.0...v0.2.0
175180

181+
[#228]: https://github.com/terraform-google-modules/terraform-google-kubernetes-engine/pull/228
176182
[#238]: https://github.com/terraform-google-modules/terraform-google-kubernetes-engine/pull/238
177183
[#241]: https://github.com/terraform-google-modules/terraform-google-kubernetes-engine/pull/241
178184
[#250]: https://github.com/terraform-google-modules/terraform-google-kubernetes-engine/pull/250

README.md

-1
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,6 @@ In either case, upgrading to module version `v1.0.0` will trigger a recreation o
162162
| node\_pools\_metadata | Map of maps containing node metadata by node-pool name | map(map(string)) | `<map>` | no |
163163
| node\_pools\_oauth\_scopes | Map of lists containing node oauth scopes by node-pool name | map(list(string)) | `<map>` | no |
164164
| node\_pools\_tags | Map of lists containing node network tags by node-pool name | map(list(string)) | `<map>` | no |
165-
| node\_pools\_taints | Map of lists containing node taints by node-pool name | object | `<map>` | no |
166165
| node\_version | The Kubernetes version of the node pools. Defaults kubernetes_version (master) variable and can be overridden for individual node pools by setting the `version` key on them. Must be empyty or set the same as master at cluster creation. | string | `""` | no |
167166
| non\_masquerade\_cidrs | List of strings in CIDR notation that specify the IP address ranges that do not use IP masquerading. | list(string) | `<list>` | no |
168167
| project\_id | The project ID to host the cluster in (required) | string | n/a | yes |

autogen/README.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ The [project factory](https://github.com/terraform-google-modules/terraform-goog
157157
- [kubectl](https://github.com/kubernetes/kubernetes/releases) 1.9.x
158158
#### Terraform and Plugins
159159
- [Terraform](https://www.terraform.io/downloads.html) 0.12
160-
{% if private_cluster or beta_cluster %}
160+
{% if beta_cluster %}
161161
- [Terraform Provider for GCP Beta][terraform-provider-google-beta] v2.9
162162
{% else %}
163163
- [Terraform Provider for GCP][terraform-provider-google] v2.9
@@ -339,7 +339,7 @@ command.
339339
{% else %}
340340
[upgrading-to-v3.0]: docs/upgrading_to_v3.0.md
341341
{% endif %}
342-
{% if private_cluster or beta_cluster %}
342+
{% if beta_cluster %}
343343
[terraform-provider-google-beta]: https://github.com/terraform-providers/terraform-provider-google-beta
344344
{% else %}
345345
[terraform-provider-google]: https://github.com/terraform-providers/terraform-provider-google

autogen/auth.tf

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
Retrieve authentication token
2121
*****************************************/
2222
data "google_client_config" "default" {
23-
{% if private_cluster or beta_cluster %}
23+
{% if beta_cluster %}
2424
provider = google-beta
2525
{% else %}
2626
provider = google

autogen/cluster.tf

+7-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
Create Container Cluster
2121
*****************************************/
2222
resource "google_container_cluster" "primary" {
23-
{% if private_cluster or beta_cluster %}
23+
{% if beta_cluster %}
2424
provider = google-beta
2525
{% else %}
2626
provider = google
@@ -220,7 +220,11 @@ resource "google_container_cluster" "primary" {
220220
Create Container Cluster node pools
221221
*****************************************/
222222
resource "google_container_node_pool" "pools" {
223+
{% if beta_cluster %}
223224
provider = google-beta
225+
{% else %}
226+
provider = google
227+
{% endif %}
224228
count = length(var.node_pools)
225229
name = var.node_pools[count.index]["name"]
226230
project = var.project_id
@@ -281,6 +285,7 @@ resource "google_container_node_pool" "pools" {
281285
"disable-legacy-endpoints" = var.disable_legacy_metadata_endpoints
282286
},
283287
)
288+
{% if beta_cluster %}
284289
dynamic "taint" {
285290
for_each = concat(
286291
var.node_pools_taints["all"],
@@ -292,6 +297,7 @@ resource "google_container_node_pool" "pools" {
292297
value = taint.value.value
293298
}
294299
}
300+
{% endif %}
295301
tags = concat(
296302
["gke-${var.name}"],
297303
["gke-${var.name}-${var.node_pools[count.index]["name"]}"],

autogen/main.tf

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
Get available zones in region
2121
*****************************************/
2222
data "google_compute_zones" "available" {
23-
{% if private_cluster or beta_cluster %}
23+
{% if beta_cluster %}
2424
provider = google-beta
2525
{% else %}
2626
provider = google

autogen/networks.tf

+2-2
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
{{ autogeneration_note }}
1818

1919
data "google_compute_network" "gke_network" {
20-
{% if private_cluster or beta_cluster %}
20+
{% if beta_cluster %}
2121
provider = google-beta
2222
{% else %}
2323
provider = google
@@ -28,7 +28,7 @@ data "google_compute_network" "gke_network" {
2828
}
2929

3030
data "google_compute_subnetwork" "gke_subnetwork" {
31-
{% if private_cluster or beta_cluster %}
31+
{% if beta_cluster %}
3232
provider = google-beta
3333
{% else %}
3434
provider = google

autogen/variables.tf

+2
Original file line numberDiff line numberDiff line change
@@ -178,6 +178,7 @@ variable "node_pools_metadata" {
178178
}
179179
}
180180

181+
{% if beta_cluster %}
181182
variable "node_pools_taints" {
182183
type = map(list(object({key=string,value=string,effect=string})))
183184
description = "Map of lists containing node taints by node-pool name"
@@ -188,6 +189,7 @@ variable "node_pools_taints" {
188189
}
189190
}
190191

192+
{% endif %}
191193
variable "node_pools_tags" {
192194
type = map(list(string))
193195
description = "Map of lists containing node network tags by node-pool name"

cluster.tf

+1-12
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ resource "google_container_cluster" "primary" {
125125
Create Container Cluster node pools
126126
*****************************************/
127127
resource "google_container_node_pool" "pools" {
128-
provider = google-beta
128+
provider = google
129129
count = length(var.node_pools)
130130
name = var.node_pools[count.index]["name"]
131131
project = var.project_id
@@ -183,17 +183,6 @@ resource "google_container_node_pool" "pools" {
183183
"disable-legacy-endpoints" = var.disable_legacy_metadata_endpoints
184184
},
185185
)
186-
dynamic "taint" {
187-
for_each = concat(
188-
var.node_pools_taints["all"],
189-
var.node_pools_taints[var.node_pools[count.index]["name"]],
190-
)
191-
content {
192-
effect = taint.value.effect
193-
key = taint.value.key
194-
value = taint.value.value
195-
}
196-
}
197186
tags = concat(
198187
["gke-${var.name}"],
199188
["gke-${var.name}-${var.node_pools[count.index]["name"]}"],

examples/deploy_service/main.tf

-5
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,6 @@ provider "google" {
2323
region = var.region
2424
}
2525

26-
provider "google-beta" {
27-
version = "~> 2.12.0"
28-
region = var.region
29-
}
30-
3126
provider "kubernetes" {
3227
load_config_file = false
3328
host = "https://${module.gke.endpoint}"

examples/disable_client_cert/main.tf

-5
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,6 @@ provider "google" {
2323
region = var.region
2424
}
2525

26-
provider "google-beta" {
27-
version = "~> 2.12.0"
28-
region = var.region
29-
}
30-
3126
module "gke" {
3227
source = "../../"
3328

examples/node_pool/main.tf

+1-6
Original file line numberDiff line numberDiff line change
@@ -18,18 +18,13 @@ locals {
1818
cluster_type = "node-pool"
1919
}
2020

21-
provider "google" {
22-
version = "~> 2.12.0"
23-
region = var.region
24-
}
25-
2621
provider "google-beta" {
2722
version = "~> 2.12.0"
2823
region = var.region
2924
}
3025

3126
module "gke" {
32-
source = "../../"
27+
source = "../../modules/beta-public-cluster/"
3328
project_id = var.project_id
3429
name = "${local.cluster_type}-cluster${var.cluster_name_suffix}"
3530
regional = false

examples/shared_vpc/main.tf

-5
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,6 @@ provider "google" {
2323
region = var.region
2424
}
2525

26-
provider "google-beta" {
27-
version = "~> 2.12.0"
28-
region = var.region
29-
}
30-
3126
module "gke" {
3227
source = "../../"
3328
project_id = var.project_id

examples/simple_regional/main.tf

-5
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,6 @@ provider "google" {
2323
region = var.region
2424
}
2525

26-
provider "google-beta" {
27-
version = "~> 2.12.0"
28-
region = var.region
29-
}
30-
3126
module "gke" {
3227
source = "../../"
3328
project_id = var.project_id

examples/simple_regional_beta/main.tf

-6
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,6 @@ locals {
1818
cluster_type = "simple-regional-beta"
1919
}
2020

21-
provider "google" {
22-
version = "~> 2.12.0"
23-
credentials = file(var.credentials_path)
24-
region = var.region
25-
}
26-
2721
provider "google-beta" {
2822
version = "~> 2.12.0"
2923
credentials = file(var.credentials_path)

examples/simple_regional_private/main.tf

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ locals {
1818
cluster_type = "simple-regional-private"
1919
}
2020

21-
provider "google-beta" {
21+
provider "google" {
2222
version = "~> 2.12.0"
2323
region = var.region
2424
}

examples/simple_zonal/main.tf

-5
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,6 @@ provider "google" {
2323
region = var.region
2424
}
2525

26-
provider "google-beta" {
27-
version = "~> 2.12.0"
28-
region = var.region
29-
}
30-
3126
module "gke" {
3227
source = "../../"
3328
project_id = var.project_id

examples/simple_zonal_private/main.tf

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ locals {
1818
cluster_type = "simple-regional-private"
1919
}
2020

21-
provider "google-beta" {
21+
provider "google" {
2222
version = "~> 2.12.0"
2323
region = var.region
2424
}

examples/stub_domains/main.tf

-5
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,6 @@ provider "google" {
2323
region = var.region
2424
}
2525

26-
provider "google-beta" {
27-
version = "~> 2.12.0"
28-
region = var.region
29-
}
30-
3126
module "gke" {
3227
source = "../../"
3328
project_id = var.project_id

examples/stub_domains_private/main.tf

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
* limitations under the License.
1515
*/
1616

17-
provider "google-beta" {
17+
provider "google" {
1818
version = "~> 2.12.0"
1919
region = var.region
2020
}

examples/stub_domains_upstream_nameservers/main.tf

-5
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,6 @@ provider "google" {
2323
region = var.region
2424
}
2525

26-
provider "google-beta" {
27-
version = "~> 2.12.0"
28-
region = var.region
29-
}
30-
3126
module "gke" {
3227
source = "../../"
3328
project_id = var.project_id

examples/upstream_nameservers/main.tf

-5
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,6 @@ provider "google" {
2323
region = var.region
2424
}
2525

26-
provider "google-beta" {
27-
version = "~> 2.12.0"
28-
region = var.region
29-
}
30-
3126
module "gke" {
3227
source = "../../"
3328
project_id = var.project_id

modules/private-cluster/README.md

+2-3
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,6 @@ In either case, upgrading to module version `v1.0.0` will trigger a recreation o
171171
| node\_pools\_metadata | Map of maps containing node metadata by node-pool name | map(map(string)) | `<map>` | no |
172172
| node\_pools\_oauth\_scopes | Map of lists containing node oauth scopes by node-pool name | map(list(string)) | `<map>` | no |
173173
| node\_pools\_tags | Map of lists containing node network tags by node-pool name | map(list(string)) | `<map>` | no |
174-
| node\_pools\_taints | Map of lists containing node taints by node-pool name | object | `<map>` | no |
175174
| node\_version | The Kubernetes version of the node pools. Defaults kubernetes_version (master) variable and can be overridden for individual node pools by setting the `version` key on them. Must be empyty or set the same as master at cluster creation. | string | `""` | no |
176175
| non\_masquerade\_cidrs | List of strings in CIDR notation that specify the IP address ranges that do not use IP masquerading. | list(string) | `<list>` | no |
177176
| project\_id | The project ID to host the cluster in (required) | string | n/a | yes |
@@ -226,7 +225,7 @@ The [project factory](https://github.com/terraform-google-modules/terraform-goog
226225
- [kubectl](https://github.com/kubernetes/kubernetes/releases) 1.9.x
227226
#### Terraform and Plugins
228227
- [Terraform](https://www.terraform.io/downloads.html) 0.12
229-
- [Terraform Provider for GCP Beta][terraform-provider-google-beta] v2.9
228+
- [Terraform Provider for GCP][terraform-provider-google] v2.9
230229

231230
### Configure a Service Account
232231
In order to execute this module you must have a Service Account with the
@@ -396,6 +395,6 @@ command.
396395

397396
[upgrading-to-v2.0]: ../../docs/upgrading_to_v2.0.md
398397
[upgrading-to-v3.0]: ../../docs/upgrading_to_v3.0.md
399-
[terraform-provider-google-beta]: https://github.com/terraform-providers/terraform-provider-google-beta
398+
[terraform-provider-google]: https://github.com/terraform-providers/terraform-provider-google
400399
[3.0.0]: https://registry.terraform.io/modules/terraform-google-modules/kubernetes-engine/google/3.0.0
401400
[terraform-0.12-upgrade]: https://www.terraform.io/upgrade-guides/0-12.html

modules/private-cluster/auth.tf

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
Retrieve authentication token
2121
*****************************************/
2222
data "google_client_config" "default" {
23-
provider = google-beta
23+
provider = google
2424
}
2525

2626
/******************************************

modules/private-cluster/cluster.tf

+2-13
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
Create Container Cluster
2121
*****************************************/
2222
resource "google_container_cluster" "primary" {
23-
provider = google-beta
23+
provider = google
2424

2525
name = var.name
2626
description = var.description
@@ -130,7 +130,7 @@ resource "google_container_cluster" "primary" {
130130
Create Container Cluster node pools
131131
*****************************************/
132132
resource "google_container_node_pool" "pools" {
133-
provider = google-beta
133+
provider = google
134134
count = length(var.node_pools)
135135
name = var.node_pools[count.index]["name"]
136136
project = var.project_id
@@ -188,17 +188,6 @@ resource "google_container_node_pool" "pools" {
188188
"disable-legacy-endpoints" = var.disable_legacy_metadata_endpoints
189189
},
190190
)
191-
dynamic "taint" {
192-
for_each = concat(
193-
var.node_pools_taints["all"],
194-
var.node_pools_taints[var.node_pools[count.index]["name"]],
195-
)
196-
content {
197-
effect = taint.value.effect
198-
key = taint.value.key
199-
value = taint.value.value
200-
}
201-
}
202191
tags = concat(
203192
["gke-${var.name}"],
204193
["gke-${var.name}-${var.node_pools[count.index]["name"]}"],

modules/private-cluster/main.tf

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
Get available zones in region
2121
*****************************************/
2222
data "google_compute_zones" "available" {
23-
provider = google-beta
23+
provider = google
2424

2525
project = var.project_id
2626
region = var.region

0 commit comments

Comments
 (0)