Add support for Terraform v0.14.x

* Support Terraform v0.13.x and v0.14.x
This commit is contained in:
Dalton Hubble 2020-12-07 00:17:53 -08:00
parent bee455f83a
commit 968febb050
28 changed files with 29 additions and 27 deletions

View File

@ -7,6 +7,7 @@ Notable changes between versions.
* Kubernetes [v1.20.0-rc.0](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.20.md#v1200-rc0) * Kubernetes [v1.20.0-rc.0](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.20.md#v1200-rc0)
* Add input variable validations ([#880](https://github.com/poseidon/typhoon/pull/880)) * Add input variable validations ([#880](https://github.com/poseidon/typhoon/pull/880))
* Require Terraform v0.13+ ([migration guide](https://typhoon.psdn.io/topics/maintenance/#terraform-versions)) * Require Terraform v0.13+ ([migration guide](https://typhoon.psdn.io/topics/maintenance/#terraform-versions))
* Support Terraform v0.13.x and v0.14.x ([#905](https://github.com/poseidon/typhoon/pull/905))
* Set output sensitive to suppress console display for some cases ([#885](https://github.com/poseidon/typhoon/pull/885)) * Set output sensitive to suppress console display for some cases ([#885](https://github.com/poseidon/typhoon/pull/885))
* Add service account token [volume projection](https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#service-account-token-volume-projection) ([#897](https://github.com/poseidon/typhoon/pull/897)) * Add service account token [volume projection](https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#service-account-token-volume-projection) ([#897](https://github.com/poseidon/typhoon/pull/897))
* Scope kube-scheduler and kube-controller-manager permissions ([#898](https://github.com/poseidon/typhoon/pull/898)) * Scope kube-scheduler and kube-controller-manager permissions ([#898](https://github.com/poseidon/typhoon/pull/898))

View File

@ -1,6 +1,6 @@
# Kubernetes assets (kubeconfig, manifests) # Kubernetes assets (kubeconfig, manifests)
module "bootstrap" { module "bootstrap" {
source = "git::https://github.com/poseidon/terraform-render-bootstrap.git?ref=2ed597002a6bdf2222df7e7746706aa9cda17573" source = "git::https://github.com/poseidon/terraform-render-bootstrap.git?ref=64793aa593c5298c9ade7c599148d411afc498fc"
cluster_name = var.cluster_name cluster_name = var.cluster_name
api_servers = [format("%s.%s", var.cluster_name, var.dns_zone)] api_servers = [format("%s.%s", var.cluster_name, var.dns_zone)]

View File

@ -1,7 +1,7 @@
# Terraform version and plugin versions # Terraform version and plugin versions
terraform { terraform {
required_version = "~> 0.13.0" required_version = ">= 0.13.0, < 0.15.0"
required_providers { required_providers {
aws = ">= 2.23, <= 4.0" aws = ">= 2.23, <= 4.0"
template = "~> 2.1" template = "~> 2.1"

View File

@ -1,7 +1,7 @@
# Terraform version and plugin versions # Terraform version and plugin versions
terraform { terraform {
required_version = "~> 0.13.0" required_version = ">= 0.13.0, < 0.15.0"
required_providers { required_providers {
aws = ">= 2.23, <= 4.0" aws = ">= 2.23, <= 4.0"
template = "~> 2.1" template = "~> 2.1"

View File

@ -1,6 +1,6 @@
# Kubernetes assets (kubeconfig, manifests) # Kubernetes assets (kubeconfig, manifests)
module "bootstrap" { module "bootstrap" {
source = "git::https://github.com/poseidon/terraform-render-bootstrap.git?ref=2ed597002a6bdf2222df7e7746706aa9cda17573" source = "git::https://github.com/poseidon/terraform-render-bootstrap.git?ref=64793aa593c5298c9ade7c599148d411afc498fc"
cluster_name = var.cluster_name cluster_name = var.cluster_name
api_servers = [format("%s.%s", var.cluster_name, var.dns_zone)] api_servers = [format("%s.%s", var.cluster_name, var.dns_zone)]

View File

@ -1,7 +1,7 @@
# Terraform version and plugin versions # Terraform version and plugin versions
terraform { terraform {
required_version = "~> 0.13.0" required_version = ">= 0.13.0, < 0.15.0"
required_providers { required_providers {
aws = ">= 2.23, <= 4.0" aws = ">= 2.23, <= 4.0"
template = "~> 2.1" template = "~> 2.1"

View File

@ -1,7 +1,7 @@
# Terraform version and plugin versions # Terraform version and plugin versions
terraform { terraform {
required_version = "~> 0.13.0" required_version = ">= 0.13.0, < 0.15.0"
required_providers { required_providers {
aws = ">= 2.23, <= 4.0" aws = ">= 2.23, <= 4.0"
template = "~> 2.1" template = "~> 2.1"

View File

@ -1,6 +1,6 @@
# Kubernetes assets (kubeconfig, manifests) # Kubernetes assets (kubeconfig, manifests)
module "bootstrap" { module "bootstrap" {
source = "git::https://github.com/poseidon/terraform-render-bootstrap.git?ref=2ed597002a6bdf2222df7e7746706aa9cda17573" source = "git::https://github.com/poseidon/terraform-render-bootstrap.git?ref=64793aa593c5298c9ade7c599148d411afc498fc"
cluster_name = var.cluster_name cluster_name = var.cluster_name
api_servers = [format("%s.%s", var.cluster_name, var.dns_zone)] api_servers = [format("%s.%s", var.cluster_name, var.dns_zone)]

View File

@ -1,7 +1,7 @@
# Terraform version and plugin versions # Terraform version and plugin versions
terraform { terraform {
required_version = "~> 0.13.0" required_version = ">= 0.13.0, < 0.15.0"
required_providers { required_providers {
azurerm = "~> 2.8" azurerm = "~> 2.8"
template = "~> 2.1" template = "~> 2.1"

View File

@ -1,7 +1,7 @@
# Terraform version and plugin versions # Terraform version and plugin versions
terraform { terraform {
required_version = "~> 0.13.0" required_version = ">= 0.13.0, < 0.15.0"
required_providers { required_providers {
azurerm = "~> 2.8" azurerm = "~> 2.8"
template = "~> 2.1" template = "~> 2.1"

View File

@ -1,6 +1,6 @@
# Kubernetes assets (kubeconfig, manifests) # Kubernetes assets (kubeconfig, manifests)
module "bootstrap" { module "bootstrap" {
source = "git::https://github.com/poseidon/terraform-render-bootstrap.git?ref=2ed597002a6bdf2222df7e7746706aa9cda17573" source = "git::https://github.com/poseidon/terraform-render-bootstrap.git?ref=64793aa593c5298c9ade7c599148d411afc498fc"
cluster_name = var.cluster_name cluster_name = var.cluster_name
api_servers = [format("%s.%s", var.cluster_name, var.dns_zone)] api_servers = [format("%s.%s", var.cluster_name, var.dns_zone)]

View File

@ -1,7 +1,7 @@
# Terraform version and plugin versions # Terraform version and plugin versions
terraform { terraform {
required_version = "~> 0.13.0" required_version = ">= 0.13.0, < 0.15.0"
required_providers { required_providers {
azurerm = "~> 2.8" azurerm = "~> 2.8"
template = "~> 2.1" template = "~> 2.1"

View File

@ -1,7 +1,7 @@
# Terraform version and plugin versions # Terraform version and plugin versions
terraform { terraform {
required_version = "~> 0.13.0" required_version = ">= 0.13.0, < 0.15.0"
required_providers { required_providers {
azurerm = "~> 2.8" azurerm = "~> 2.8"
template = "~> 2.1" template = "~> 2.1"

View File

@ -1,6 +1,6 @@
# Kubernetes assets (kubeconfig, manifests) # Kubernetes assets (kubeconfig, manifests)
module "bootstrap" { module "bootstrap" {
source = "git::https://github.com/poseidon/terraform-render-bootstrap.git?ref=2ed597002a6bdf2222df7e7746706aa9cda17573" source = "git::https://github.com/poseidon/terraform-render-bootstrap.git?ref=64793aa593c5298c9ade7c599148d411afc498fc"
cluster_name = var.cluster_name cluster_name = var.cluster_name
api_servers = [var.k8s_domain_name] api_servers = [var.k8s_domain_name]

View File

@ -1,7 +1,7 @@
# Terraform version and plugin versions # Terraform version and plugin versions
terraform { terraform {
required_version = "~> 0.13.0" required_version = ">= 0.13.0, < 0.15.0"
required_providers { required_providers {
template = "~> 2.1" template = "~> 2.1"
null = "~> 2.1" null = "~> 2.1"

View File

@ -1,6 +1,6 @@
# Kubernetes assets (kubeconfig, manifests) # Kubernetes assets (kubeconfig, manifests)
module "bootstrap" { module "bootstrap" {
source = "git::https://github.com/poseidon/terraform-render-bootstrap.git?ref=2ed597002a6bdf2222df7e7746706aa9cda17573" source = "git::https://github.com/poseidon/terraform-render-bootstrap.git?ref=64793aa593c5298c9ade7c599148d411afc498fc"
cluster_name = var.cluster_name cluster_name = var.cluster_name
api_servers = [var.k8s_domain_name] api_servers = [var.k8s_domain_name]

View File

@ -1,7 +1,7 @@
# Terraform version and plugin versions # Terraform version and plugin versions
terraform { terraform {
required_version = "~> 0.13.0" required_version = ">= 0.13.0, < 0.15.0"
required_providers { required_providers {
template = "~> 2.1" template = "~> 2.1"
null = "~> 2.1" null = "~> 2.1"

View File

@ -1,6 +1,6 @@
# Kubernetes assets (kubeconfig, manifests) # Kubernetes assets (kubeconfig, manifests)
module "bootstrap" { module "bootstrap" {
source = "git::https://github.com/poseidon/terraform-render-bootstrap.git?ref=2ed597002a6bdf2222df7e7746706aa9cda17573" source = "git::https://github.com/poseidon/terraform-render-bootstrap.git?ref=64793aa593c5298c9ade7c599148d411afc498fc"
cluster_name = var.cluster_name cluster_name = var.cluster_name
api_servers = [format("%s.%s", var.cluster_name, var.dns_zone)] api_servers = [format("%s.%s", var.cluster_name, var.dns_zone)]

View File

@ -1,7 +1,7 @@
# Terraform version and plugin versions # Terraform version and plugin versions
terraform { terraform {
required_version = "~> 0.13.0" required_version = ">= 0.13.0, < 0.15.0"
required_providers { required_providers {
template = "~> 2.1" template = "~> 2.1"
null = "~> 2.1" null = "~> 2.1"

View File

@ -1,6 +1,6 @@
# Kubernetes assets (kubeconfig, manifests) # Kubernetes assets (kubeconfig, manifests)
module "bootstrap" { module "bootstrap" {
source = "git::https://github.com/poseidon/terraform-render-bootstrap.git?ref=2ed597002a6bdf2222df7e7746706aa9cda17573" source = "git::https://github.com/poseidon/terraform-render-bootstrap.git?ref=64793aa593c5298c9ade7c599148d411afc498fc"
cluster_name = var.cluster_name cluster_name = var.cluster_name
api_servers = [format("%s.%s", var.cluster_name, var.dns_zone)] api_servers = [format("%s.%s", var.cluster_name, var.dns_zone)]

View File

@ -1,7 +1,7 @@
# Terraform version and plugin versions # Terraform version and plugin versions
terraform { terraform {
required_version = "~> 0.13.0" required_version = ">= 0.13.0, < 0.15.0"
required_providers { required_providers {
template = "~> 2.1" template = "~> 2.1"
null = "~> 2.1" null = "~> 2.1"

View File

@ -197,7 +197,8 @@ Typhoon modules have been updated for v0.13.x, but retain compatibility with v0.
| Typhoon Release | Terraform version | | Typhoon Release | Terraform version |
|-------------------|---------------------| |-------------------|---------------------|
| v1.18.8 - ? | v0.12.26+, v0.13.x | | v1.20.0 - ? | v0.13.x, v0.14.x |
| v1.18.8 - v1.19.4 | v0.12.26+, v0.13.x |
| v1.15.0 - v1.18.8 | v0.12.x | | v1.15.0 - v1.18.8 | v0.12.x |
| v1.10.3 - v1.15.0 | v0.11.x | | v1.10.3 - v1.15.0 | v0.11.x |
| v1.9.2 - v1.10.2 | v0.10.4+ or v0.11.x | | v1.9.2 - v1.10.2 | v0.10.4+ or v0.11.x |

View File

@ -1,6 +1,6 @@
# Kubernetes assets (kubeconfig, manifests) # Kubernetes assets (kubeconfig, manifests)
module "bootstrap" { module "bootstrap" {
source = "git::https://github.com/poseidon/terraform-render-bootstrap.git?ref=2ed597002a6bdf2222df7e7746706aa9cda17573" source = "git::https://github.com/poseidon/terraform-render-bootstrap.git?ref=64793aa593c5298c9ade7c599148d411afc498fc"
cluster_name = var.cluster_name cluster_name = var.cluster_name
api_servers = [format("%s.%s", var.cluster_name, var.dns_zone)] api_servers = [format("%s.%s", var.cluster_name, var.dns_zone)]

View File

@ -1,7 +1,7 @@
# Terraform version and plugin versions # Terraform version and plugin versions
terraform { terraform {
required_version = "~> 0.13.0" required_version = ">= 0.13.0, < 0.15.0"
required_providers { required_providers {
google = ">= 2.19, < 4.0" google = ">= 2.19, < 4.0"
template = "~> 2.1" template = "~> 2.1"

View File

@ -1,7 +1,7 @@
# Terraform version and plugin versions # Terraform version and plugin versions
terraform { terraform {
required_version = "~> 0.13.0" required_version = ">= 0.13.0, < 0.15.0"
required_providers { required_providers {
google = ">= 2.19, < 4.0" google = ">= 2.19, < 4.0"
template = "~> 2.1" template = "~> 2.1"

View File

@ -1,6 +1,6 @@
# Kubernetes assets (kubeconfig, manifests) # Kubernetes assets (kubeconfig, manifests)
module "bootstrap" { module "bootstrap" {
source = "git::https://github.com/poseidon/terraform-render-bootstrap.git?ref=2ed597002a6bdf2222df7e7746706aa9cda17573" source = "git::https://github.com/poseidon/terraform-render-bootstrap.git?ref=64793aa593c5298c9ade7c599148d411afc498fc"
cluster_name = var.cluster_name cluster_name = var.cluster_name
api_servers = [format("%s.%s", var.cluster_name, var.dns_zone)] api_servers = [format("%s.%s", var.cluster_name, var.dns_zone)]

View File

@ -1,7 +1,7 @@
# Terraform version and plugin versions # Terraform version and plugin versions
terraform { terraform {
required_version = "~> 0.13.0" required_version = ">= 0.13.0, < 0.15.0"
required_providers { required_providers {
google = ">= 2.19, < 4.0" google = ">= 2.19, < 4.0"
template = "~> 2.1" template = "~> 2.1"

View File

@ -1,7 +1,7 @@
# Terraform version and plugin versions # Terraform version and plugin versions
terraform { terraform {
required_version = "~> 0.13.0" required_version = ">= 0.13.0, < 0.15.0"
required_providers { required_providers {
google = ">= 2.19, < 4.0" google = ">= 2.19, < 4.0"
template = "~> 2.1" template = "~> 2.1"