Skip to content

Releases: hashicorp/terraform-provider-kubernetes

v2.23.0

16 Aug 14:55
8ce025b
Compare
Choose a tag to compare

FEATURES:

  • resource/kubernetes_cron_job_v1: add a new volume type ephemeral to spec.job_template.spec.template.spec.volume to support generic ephemeral volumes. [GH-2199]
  • resource/kubernetes_cron_job: add a new volume type ephemeral to spec.job_template.spec.template.spec.volume to support generic ephemeral volumes. [GH-2199]
  • resource/kubernetes_daemon_set_v1: add a new volume type ephemeral to spec.template.spec.volume to support generic ephemeral volumes. [GH-2199]
  • resource/kubernetes_daemonset: add a new volume type ephemeral to spec.template.spec..volume to support generic ephemeral volumes. [GH-2199]
  • resource/kubernetes_deployment_v1: add a new volume type ephemeral to spec.template.spec.volume to support generic ephemeral volumes. [GH-2199]
  • resource/kubernetes_deployment: add a new volume type ephemeral to spec.template.spec.volume to support generic ephemeral volumes. [GH-2199]
  • resource/kubernetes_job_v1: add a new volume type ephemeral to spec.template.spec.volume to support generic ephemeral volumes. [GH-2199]
  • resource/kubernetes_job: add a new volume type ephemeral to spec.template.spec.volume to support generic ephemeral volumes. [GH-2199]
  • resource/kubernetes_pod_v1: add a new volume type ephemeral to spec.volume to support generic ephemeral volumes. [GH-2199]
  • resource/kubernetes_pod: add a new volume type ephemeral to spec.volume to support generic ephemeral volumes. [GH-2199]

ENHANCEMENTS:

  • resource/kubernetes_endpoint_slice_v1: make attribute endpoint.condition optional. If you had previously included an empty block condition {} in your configuration, we request you to remove it. Doing so will prevent receiving continuous "update in-place" messages while performing the plan and apply operations. [GH-2208]
  • resource/kubernetes_pod_v1: add a new attribute target_state to specify the Pod phase(s) that indicate whether it was successfully created. [GH-2200]
  • resource/kubernetes_pod: add a new attribute target_state to specify the Pod phase(s) that indicate whether it was successfully created. [GH-2200]

BUG FIXES:

  • resource/kubernetes_manifest: update flow in wait block to fix timeout bug within tf apply where the resource is created and appears in Kubernetes but does not appear in TF state file after deadline. The fix would ensure that the resource has been created in the state file while also tainting the resource requiring the user to make the necessary changes in order for their to not be another timeout error. [GH-2163]

DOCS:

  • Fix external broken links in the documentation. [GH-2221]

Community Contributors 🙌

v2.22.0

12 Jul 07:11
adf8a69
Compare
Choose a tag to compare

FEATURES:

  • kubernetes/data_source_kubernetes_persistent_volume.go: Add data source for Kubernetes Persistent Volume Resource [GH-2118]
  • kubernetes/resource_kubernetes_namespace.go: Add attribute wait_for_default_service_account to namespaces which will force Terraform to wait until the default service account has been created by Kubernetes on namespace creation. [GH-2119]
  • kubernetes/resource_kubernetes_endpointslice.go: Add kubernetes_endpoint_slice resource [GH-2086]

ENHANCEMENTS:

  • kubernetes/provider.go: Add tls_server_name kubernetes provider options. [GH-1638]

BUG FIXES:

  • resource/kubernetes_manifest: fix an issue in the kubernetes_manifest resource when it panics if tuple attributes within an object have a different number of elements. This leads to the situation when all types of end tuples are getting the same type. [GH-2164]
  • resource/kubernetes_manifest: fix an issue with the kubernetes_manifest resource, where an object fails to update correctly when employing wait conditions and thus some attributes are not available for the reference after creation. [GH-2173]

Community Contributors 🙌

v2.21.1

05 Jun 13:29
4ab9f3b
Compare
Choose a tag to compare

HOTFIX:

  • Revert add "conflictsWith" to provider block schema. [GH-2131]

v2.21.0

02 Jun 08:12
00bdbcd
Compare
Choose a tag to compare

FEATURES:

  • resource/kubernetes_runtime_class_v1: Add a new resource kubernetes_runtime_class_v1. [GH-2080]

ENHANCEMENTS:

  • kubernetes/provider.go: add conflictsWith rules to provider configuration schema [GH-2084]
  • kubernetes/resource_kubernetes_service_account.go: Remove default_secret_name warning [GH-2085]
  • resource/kubernetes_node_taint Update import documentation GH-2094

BUG FIXES:

  • resource/kubernetes_node_taint: Don't fail when there is a taint in the state file for a node that no longer exists. [GH-2099]
  • resource/kubernetes_job: Fixed a bug where setting backoff_limit to 6 would reset it to 0

v2.20.0

20 Apr 14:14
1fee765
Compare
Choose a tag to compare

ENHANCEMENTS:

kubernetes/resource_kubernetes_env.go: add support for initContainers [GH-2067]
kubernetes/resource_kubernetes_node_taint.go: Remove MaxItems from taint attribute [GH-2046]

BUG FIXES:

  • Fix diff after import when importing resources containing volume_mount [GH-2061]
  • resource/kubernetes_node_taint: Fix an issue when updating taint does not update the ID in the state file. [GH-2077]

v2.19.0

23 Mar 21:46
643cd18
Compare
Choose a tag to compare

Generating changelog for release-v2.19.0 from v2.18.1...

FEATURES:

New Resource: kubernetes_token_request_v1. [GH-2024]

BUG FIXES:

  • data_source/kubernetes_secret_v1: Fix an issue where data_source cannot read secret created with generate_name. [GH-2028]
  • data_source/kubernetes_secret: Fix an issue where data_source cannot read secret created with generate_name. [GH-2028]
  • kubernetes/schema_pod_spec.go: Fix unexpected volumes appearing on plan [GH-2006]
  • resource/kubernetes_cron_job_v1: Fix annotation logic to prevent internalkeys from being removed in templates [GH-1983]
  • resource/kubernetes_manifest: Fix a panic when constructing the diagnostic message about incompatible attribute types [GH-2054]
  • resource/kubernetes_manifest: Fix crash when manifest config contains unknown values of unknown type (DynamicPseudoType) [GH-2055]

v2.18.1

21 Feb 21:40
e837ed5
Compare
Choose a tag to compare

HOTFIX:

  • kubernetes_manifest: fix crash when waiting on conditions that are not yet present [GH-2008]

v2.18.0

15 Feb 08:57
ff4ab89
Compare
Choose a tag to compare

FEATURES:

  • New data source: data_source/kubernetes_nodes. [GH-1921]
  • New data source: data_source/kubernetes_resources. [GH-1967]
  • New resource: resource/kubernetes_node_taint. [GH-1921]

ENHANCEMENT:

  • resource/kubernetes_annotations: Add a new attribute template_annotations that allows adding annotations to resources with pod templates. [GH-1972]
  • resource/kubernetes_cron_job_v1: Add a new attribute spec.timezone. [GH-1971]

BUG FIXES:

  • resource/kubernetes_mutating_webhook_configuration: Fix an issue when the delete operation may not be idempotent. [GH-1999]
  • resource/kubernetes_network_policy_v1: Fix an issue when the delete operation may not be idempotent. [GH-1999]
  • resource/kubernetes_network_policy: Fix an issue when the delete operation may not be idempotent. [GH-1999]
  • resource/kubernetes_persistent_volume_claim_v1: Fix an issue when the delete operation may not be idempotent. [GH-1999]
  • resource/kubernetes_persistent_volume_claim: Fix an issue when the delete operation may not be idempotent. [GH-1999]
  • resource/kubernetes_storage_class_v1: Fix an issue when changing the value of the attribute allow_volume_expansion does not alter Kubernetes resource. [GH-1519]
  • resource/kubernetes_storage_class: Fix an issue when changing the value of the attribute allow_volume_expansion does not alter Kubernetes resource. [GH-1519]

DOCS:

  • New data source: data_source/kubernetes_nodes. [GH-1921]
  • New data source: data_source/kubernetes_resources. [GH-1967]
  • New resource: resource/kubernetes_node_taint. [GH-1921]
  • provider: Add a note regarding the KUBECONFIG environment variable. [GH-1989]
  • resource/kubernetes_annotations: Add a new attribute template_annotations. [GH-1972]
  • resource/kubernetes_job_v1: Add documentation for the attribute spec.completion_mode. [GH-1997]
  • resource/kubernetes_job: Add documentation for the attribute spec.completion_mode. [GH-1997]
  • resource/resource_kubernetes_cron_job_v1: Add a new attribute spec.timezone. [GH-1971]

Community Contributors 🙌

v2.17.0

23 Jan 16:34
fbd2190
Compare
Choose a tag to compare

ENHANCEMENT:

  • Add a new optional attribute grpc to pod.spec.container.liveness_probe, pod.spec.container.readiness_probe, and pod.spec.container.startup_probe. That affects all resources and data sources that use mentioned pod.spec.container probes directly or as a template. [GH-1915]
  • resource/kubernetes_cluster_role_binding_v1: add attribute generate_name to produce a unique random name [GH-1899]
  • resource/kubernetes_cluster_role_binding: add attribute generate_name to produce a unique random name [GH-1899]
  • resource/kubernetes_cluster_role_v1: add attribute generate_name to produce a unique random name [GH-1899]
  • resource/kubernetes_cluster_role: add attribute generate_name to produce a unique random name [GH-1899]
  • resource/kubernetes_ingress_v1: add create and delete timeouts [GH-1936]
  • resource/kubernetes_ingress_v1: make the attribute spec.ingress_class_name computed [GH-1947]
  • resource/kubernetes_persistent_volume_v1: add additional validation on the delete operation to make it idempotent [GH-1935]
  • resource/kubernetes_persistent_volume: add additional validation on the delete operation to make it idempotent [GH-1935]
  • resource/kubernetes_role_binding_v1: add attribute generate_name to produce a unique random name [GH-1899]
  • resource/kubernetes_role_binding: add attribute generate_name to produce a unique random name [GH-1899]

Community Contributors 🙌

v2.16.1

05 Dec 23:39
8aeeabb
Compare
Choose a tag to compare

ENHANCEMENTS:

  • Add additional validation on the delete operation to make it idempotent. [GH-1914], [GH-1919], [GH-1898]

This affects the following resources:

  • kubernetes_api_service
  • kubernetes_api_service_v1
  • kubernetes_cluster_role
  • kubernetes_cluster_role_v1
  • kubernetes_cluster_role_binding
  • kubernetes_cluster_role_binding_v1
  • kubernetes_config_map
  • kubernetes_config_map_v1
  • kubernetes_daemonset
  • kubernetes_daemon_set_v1
  • kubernetes_deployment
  • kubernetes_deployment_v1
  • kubernetes_endpoints
  • kubernetes_endpoints_v1
  • kubernetes_horizontal_pod_autoscaler
  • kubernetes_horizontal_pod_autoscaler_v1
  • kubernetes_horizontal_pod_autoscaler_v2beta2
  • kubernetes_horizontal_pod_autoscaler_v2
  • kubernetes_mutating_webhook_configuration
  • kubernetes_mutating_webhook_configuration_v1
  • kubernetes_network_policy
  • kubernetes_network_policy_v1
  • kubernetes_persistent_volume_claim
  • kubernetes_persistent_volume_claim_v1
  • kubernetes_pod
  • kubernetes_pod_v1
  • kubernetes_pod_disruption_budget
  • kubernetes_pod_disruption_budget_v1
  • kubernetes_pod_security_policy
  • kubernetes_pod_security_policy_v1beta1
  • kubernetes_priority_class
  • kubernetes_replication_controller
  • kubernetes_resource_quota
  • kubernetes_role
  • kubernetes_role_binding
  • kubernetes_secret
  • kubernetes_namespace
  • kubernetes_service
  • kubernetes_service_account
  • kubernetes_stateful_set
  • kubernetes_storage_class
  • kubernetes_validating_webhook_configuration
  • kubernetes_validating_webhook_configuration_v1

Special thanks to @sheneska for making these changes as part of her internship @hashicorp! 🚀