Skip to content

Commit dc90055

Browse files
authored
Merge pull request #231 from terraform-google-modules/release/v5.0.0
Release v5.0.0
2 parents 6dae1f3 + 5486fe9 commit dc90055

File tree

3 files changed

+405
-2
lines changed

3 files changed

+405
-2
lines changed

CHANGELOG.md

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,15 @@ Extending the adopted spec, each change should have a link to its corresponding
88

99
## [Unreleased]
1010

11+
## [v5.0.0] - 2019-XX-XX
12+
v5.0.0 is a backwards-incompatible release. Please see the [upgrading guide](./docs/upgrading_to_v5.0.md).
13+
14+
The v5.0.0 module requires using the [2.12 version](https://github.com/terraform-providers/terraform-provider-google/blob/master/CHANGELOG.md#2120-august-01-2019) of the Google provider.
15+
1116
### Changed
1217

13-
* All Beta functionality removed from non-beta clusters, some properties like node_pool taints available only in beta cluster now [#228]
1418
* **Breaking**: Enabled metadata-concealment by default [#248]
19+
* All beta functionality removed from non-beta clusters, moved `node_pool_taints` to beta modules [#228]
1520

1621
### Added
1722
* Added support for resource usage export config [#238]
@@ -22,6 +27,10 @@ Extending the adopted spec, each change should have a link to its corresponding
2227
* Support for Google Groups based RBAC beta feature [#217]
2328
* Support for disabling node pool autoscaling by setting `autoscaling` to `false` within the node pool variable. [#250]
2429

30+
### Fixed
31+
32+
* Fixed issue with passing a dynamically created Service Account to the module. [#27]
33+
2534
## [v4.1.0] 2019-07-24
2635

2736
### Added
@@ -164,7 +173,8 @@ Extending the adopted spec, each change should have a link to its corresponding
164173

165174
* Initial release of module.
166175

167-
[Unreleased]: https://github.com/terraform-google-modules/terraform-google-kubernetes-engine/compare/v4.1.0...HEAD
176+
[Unreleased]: https://github.com/terraform-google-modules/terraform-google-kubernetes-engine/compare/v5.0.0...HEAD
177+
[v5.0.0]: https://github.com/terraform-google-modules/terraform-google-kubernetes-engine/compare/v4.1.0...v5.0.0
168178
[v4.1.0]: https://github.com/terraform-google-modules/terraform-google-kubernetes-engine/compare/v4.0.0...v4.1.0
169179
[v4.0.0]: https://github.com/terraform-google-modules/terraform-google-kubernetes-engine/compare/v3.0.0...v4.0.0
170180
[v3.0.0]: https://github.com/terraform-google-modules/terraform-google-kubernetes-engine/compare/v2.1.0...v3.0.0
@@ -186,6 +196,7 @@ Extending the adopted spec, each change should have a link to its corresponding
186196
[#236]: https://github.com/terraform-google-modules/terraform-google-kubernetes-engine/pull/236
187197
[#217]: https://github.com/terraform-google-modules/terraform-google-kubernetes-engine/pull/217
188198
[#234]: https://github.com/terraform-google-modules/terraform-google-kubernetes-engine/pull/234
199+
[#27]: https://github.com/terraform-google-modules/terraform-google-kubernetes-engine/issues/27
189200
[#216]: https://github.com/terraform-google-modules/terraform-google-kubernetes-engine/pull/216
190201
[#214]: https://github.com/terraform-google-modules/terraform-google-kubernetes-engine/pull/214
191202
[#210]: https://github.com/terraform-google-modules/terraform-google-kubernetes-engine/pull/210

docs/upgrading_to_v5.0.md

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
# Upgrading to v5.0
2+
3+
The v5.0 release of *kubernetes-engine* is a backwards incompatible
4+
release.
5+
6+
## Migration Instructions
7+
8+
### Node pool taints
9+
Previously, node pool taints could be set on all module versions.
10+
11+
Now, to set taints you must use the beta version of the module.
12+
13+
```diff
14+
module "kubernetes_engine_private_cluster" {
15+
- source = "terraform-google-modules/kubernetes-engine/google"
16+
+ source = "terraform-google-modules/kubernetes-engine/google//modules/beta-public-cluster"
17+
- version = "~> 4.0"
18+
+ version = "~> 5.0"
19+
}
20+
```
21+
22+
### Service Account creation
23+
24+
Previously, if you explicitly specified a Service Account using the `service_account` variable on the module this was sufficient to force that Service Account to be used.
25+
26+
Now, an additional `create_service_account` has been added with a default value of `true`. If you would like to use an explicitly created Service Account from outside the module, you will need to set `create_service_account` to `false` (in addition to passing in the Service Account email).
27+
28+
No action is needed if you use the module's default service account.
29+
30+
```diff
31+
module "kubernetes_engine_private_cluster" {
32+
source = "terraform-google-modules/kubernetes-engine/google"
33+
- version = "~> 4.0"
34+
+ version = "~> 5.0"
35+
36+
service_account = "[email protected]"
37+
+ create_service_account = false
38+
# ...
39+
}
40+
```
41+
42+
### Resource simplification
43+
The `google_container_cluster` and `google_container_node_pool` resources previously were different between regional and zonal clusters. They have now been collapsed into a single resource using the `location` variable.
44+
45+
If you are using regional clusters, no migration is needed. If you are using zonal clusters, a state migration is needed. You can use a [script](../helpers/migrate.py) we provided to determine the required state changes:
46+
47+
1. Download the script
48+
49+
```sh
50+
curl -O https://raw.githubusercontent.com/terraform-google-modules/terraform-google-kubernetes-engine/v5.0.0/helpers/migrate.py
51+
chmod +x migrate.py
52+
```
53+
54+
2. Run the script in dryrun mode to confirm the expected changes:
55+
56+
```sh
57+
$ ./migrate.py --dryrun
58+
59+
---- Migrating the following modules:
60+
-- module.gke-cluster-dev.module.gke
61+
---- Commands to run:
62+
terraform state mv -state terraform.tfstate "module.gke-cluster-dev.module.gke.google_container_cluster.zonal_primary[0]" "module.gke-cluster-dev.module.gke.google_container_cluster.primary[0]"
63+
terraform state mv "module.gke-cluster-dev.module.gke.google_container_node_pool.zonal_pools[0]" "module.gke-cluster-dev.module.gke.google_container_node_pool.pools[0]"
64+
```
65+
66+
3. Execute the migration script
67+
68+
```sh
69+
$ ./migrate.py
70+
71+
---- Migrating the following modules:
72+
-- module.gke-cluster-dev.module.gke
73+
---- Commands to run:
74+
Move "module.gke-cluster-dev.module.gke.google_container_cluster.zonal_primary[0]" to "module.gke-cluster-dev.module.gke.google_container_cluster.primary[0]"
75+
Successfully moved 1 object(s).
76+
Move "module.gke-cluster-dev.module.gke.google_container_node_pool.zonal_pools[0]" to "module.gke-cluster-dev.module.gke.google_container_node_pool.pools[0]"
77+
Successfully moved 1 object(s).
78+
Move "module.gke-cluster-dev.module.gke.null_resource.wait_for_zonal_cluster" to "module.gke-cluster-dev.module.gke.null_resource.wait_for_cluster"
79+
Successfully moved 1 object(s).
80+
```
81+
82+
4. Run `terraform plan` to confirm no changes are expected.

0 commit comments

Comments
 (0)