You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+48-2Lines changed: 48 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -7,13 +7,37 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
Extending the adopted spec, each change should have a link to its corresponding pull request appended.
8
8
9
9
## [Unreleased]
10
-
### Added
10
+
11
+
### Changed
11
12
12
13
* Made `region` variable optional for zonal clusters [#247]
14
+
15
+
### Added
16
+
17
+
* Added [private](https://github.com/terraform-google-modules/terraform-google-kubernetes-engine/tree/master/modules/private-cluster-update-variant) and [beta private](https://github.com/terraform-google-modules/terraform-google-kubernetes-engine/tree/master/modules/beta-private-cluster-update-variant) variants which allow node pools to be created before being destroyed. [#256]
18
+
19
+
## [v5.0.0] - 2019-09-25
20
+
v5.0.0 is a backwards-incompatible release. Please see the [upgrading guide](./docs/upgrading_to_v5.0.md).
21
+
22
+
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.
23
+
24
+
### Changed
25
+
26
+
***Breaking**: Enabled metadata-concealment by default [#248]
27
+
* All beta functionality removed from non-beta clusters, moved `node_pool_taints` to beta modules [#228]
28
+
29
+
### Added
30
+
* Added support for resource usage export config [#238]
31
+
* Added `sandbox_enabled` variable to use GKE Sandbox [#241]
13
32
* Added `grant_registry_access` variable to grant Container Registry access to created SA [#236]
14
33
* Support for Intranode Visbiility (IV) and Veritical Pod Autoscaling (VPA) beta features [#216]
15
34
* Support for Workload Identity beta feature [#234]
16
35
* Support for Google Groups based RBAC beta feature [#217]
36
+
* Support for disabling node pool autoscaling by setting `autoscaling` to `false` within the node pool variable. [#250]
37
+
38
+
### Fixed
39
+
40
+
* Fixed issue with passing a dynamically created Service Account to the module. [#27]
17
41
18
42
## [v4.1.0] 2019-07-24
19
43
@@ -32,6 +56,8 @@ Extending the adopted spec, each change should have a link to its corresponding
32
56
* Supported version of Terraform is 0.12. [#177]
33
57
34
58
## [v3.0.0] - 2019-07-08
59
+
v3.0.0 is a breaking release. Refer to the
60
+
[Upgrading to v3.0 guide][upgrading-to-v3.0] for details.
35
61
36
62
### Added
37
63
@@ -72,6 +98,8 @@ Extending the adopted spec, each change should have a link to its corresponding
72
98
2.3. [#148]
73
99
74
100
## [v2.0.0] - 2019-04-12
101
+
v2.0.0 is a breaking release. Refer to the
102
+
[Upgrading to v2.0 guide][upgrading-to-v2.0] for details.
75
103
76
104
### Added
77
105
@@ -103,6 +131,10 @@ Extending the adopted spec, each change should have a link to its corresponding
103
131
* Fix empty zone list. [#132]
104
132
105
133
## [v1.0.0] - 2019-03-25
134
+
Version 1.0.0 of this module introduces a breaking change: adding the `disable-legacy-endpoints` metadata field to all node pools. This metadata is required by GKE and [determines whether the `/0.1/` and `/v1beta1/` paths are available in the nodes' metadata server](https://cloud.google.com/kubernetes-engine/docs/how-to/protecting-cluster-metadata#disable-legacy-apis). If your applications do not require access to the node's metadata server, you can leave the default value of `true` provided by the module. If your applications require access to the metadata server, be sure to read the linked documentation to see if you need to set the value for this field to `false` to allow your applications access to the above metadata server paths.
135
+
136
+
In either case, upgrading to module version `v1.0.0` will trigger a recreation of all node pools in the cluster.
137
+
106
138
### Added
107
139
* Allow creation of service accounts. [#80]
108
140
* Add support for private clusters via submodule. [#69]
@@ -157,7 +189,8 @@ Extending the adopted spec, each change should have a link to its corresponding
This document provides guidelines for contributing to the module.
4
+
5
+
## Dependencies
6
+
7
+
The following dependencies must be installed on the development system:
8
+
9
+
-[Docker Engine][docker-engine]
10
+
-[Google Cloud SDK][google-cloud-sdk]
11
+
-[make]
12
+
13
+
## Generating Documentation for Inputs and Outputs
14
+
15
+
The Inputs and Outputs tables in the READMEs of the root module,
16
+
submodules, and example modules are automatically generated based on
17
+
the `variables` and `outputs` of the respective modules. These tables
18
+
must be refreshed if the module interfaces are changed.
19
+
20
+
## Templating
21
+
22
+
To more cleanly handle cases where desired functionality would require complex duplication of Terraform resources (i.e. [PR 51](https://github.com/terraform-google-modules/terraform-google-kubernetes-engine/pull/51)), this repository is largely generated from the [`autogen`](/autogen) directory.
23
+
24
+
The root module is generated by running `make generate`. Changes to this repository should be made in the [`autogen`](/autogen) directory where appropriate.
25
+
26
+
Note: The correct sequence to update the repo using autogen functionality is to run
27
+
`make docker_generate && make docker_generate_docs`. This will create the various Terraform files, and then
28
+
generate the Terraform documentation using `terraform-docs`.
29
+
30
+
### Autogeneration of documentation from .tf files
31
+
To generate new Inputs and Outputs tables run
32
+
```
33
+
make docker_generate_docs
34
+
```
35
+
36
+
## Integration Testing
37
+
38
+
Integration tests are used to verify the behaviour of the root module,
39
+
submodules, and example modules. Additions, changes, and fixes should
40
+
be accompanied with tests.
41
+
42
+
The integration tests are run using [Kitchen][kitchen],
43
+
[Kitchen-Terraform][kitchen-terraform], and [InSpec][inspec]. These
44
+
tools are packaged within a Docker image for convenience.
45
+
46
+
The general strategy for these tests is to verify the behaviour of the
47
+
[example modules](./examples/), thus ensuring that the root module,
48
+
submodules, and example modules are all functionally correct.
49
+
50
+
Six test-kitchen instances are defined:
51
+
52
+
-`deploy-service`
53
+
-`node-pool`
54
+
-`shared-vpc`
55
+
-`simple-regional`
56
+
-`simple-zonal`
57
+
-`stub-domains`
58
+
59
+
The test-kitchen instances in `test/fixtures/` wrap identically-named examples in the `examples/` directory.`
60
+
61
+
### Test Environment
62
+
The easiest way to test the module is in an isolated test project. The setup for such a project is defined in [test/setup](./test/setup/) directory.
63
+
64
+
To use this setup, you need a service account with Project Creator access on a folder. Export the Service Account credentials to your environment like so:
65
+
66
+
```
67
+
export SERVICE_ACCOUNT_JSON=$(< credentials.json)
68
+
```
69
+
70
+
You will also need to set a few environment variables:
0 commit comments