BUG FIXES:
- The
consul_acl_role_policy_attachment
resource no longer panic when given the UUID of a role that does not exist (#370 and #378).
NEW FEATURES:
- The
consul_keys
datasource now has aerror_on_missing_keys
argument that makes it possible to get an error when a key is absent from the KV store (#14 and #375).
NEW FEATURES
- The
consul_config_entry_service_router
resource can now be used to manage a Service Router config entry (#369). - The
consul_config_entry_service_resolver
resource can now be used to manage a Service Resolver config entry (#368). - The
consul_config_entry_service_intentions
resource can now be used to manage a Service Intention config entry (#367). - The
consul_config_entry_service_defaults
resource can now be used to manage a Service Defaults config entry (#366). - The
consul_config_entry_service_splitter
resource can now be used to manage a Service Splitter config entry (#364). - The
consul_acl_role_policy_attachment
resource can be used to attach a policy to a role created outside the Terraform configuration (#362). - The
consul_acl_token
andconsul_acl_role
resource now supports templated policies (#358). - The
policies
argument of theconsul_acl_role
resource now accept both a policy ID and a policy name (#363).
CHANGES:
- The
consul_config_entry
resource now ignore changes to theStatus
field forhttp-route
,tcp-route
andapi-gateway
config entries (#361)
NEW FEATURES:
- The provider can now use Terraform Cloud Workload Identity to connect to Consul using the
use_terraform_cloud_workload_identity
argument in the provider configuration [#342]. - The
consul_config_entry
resource now supports thejwt-provider
configuration entries [#349]. - The
consul_prepared_query
resource can now specifytargets
in their configuration [#340]. - The
consul_prepared_query
resource can now specifyremove_empty_tags
in their configuration [#312]. - The
consul_certificate_authority
now supports theconfig_json
argument to set complex configuration [#341].
CHANGES:
- The
name
argument of theconsul_prepared_query
resource is now optional [#312]. - The
consul_acl_role
now return an explicit error message if a policy is specified using its name instead of its ID [#345].
CHANGES:
- The
token
argument in the resources and datasources has been deprecated. Thetoken
argument in the provider configuration should be used instead ([#332] and [#298]).
NEW FEATURES:
- The
consul_config_entry
datasource can now be used to read the configuration of a given config entry ([#318]).
IMPROVEMENTS:
- The
consul_node
resource can now be imported ([#323]). - The
consul_config_entry
resource can now be imported ([#319] and [#316]). - The
consul_peering
resource has been updated to support the changes in Consul 1.14 ([#328]). - The
consul_peering
,consul_peerings
datasources have been updated to support the changes in Consul 1.14 ([#328]). - The
consul_config_entry
resource now support the new peer parameters introduced in Consul 1.14 ([#328]).
NEW FEATURES:
- The
consul_peering
andconsul_peering_token
resources can now be used to manage Consul Cluster Peering configuration (#309). - The
consul_peering
andconsul_peerings
datasources can now be used to introspect Consul Cluster Peering configuration (#309).
IMPROVEMENTS:
- The
consul_acl_token_secret_id
datasource now supports reading tokens in a Consul Admin Partition (#315).
BUG FIXES:
- The support of Admin Partition has been fixed for
consul_config_entry
: a newpartition
argument is now present and should be used instead of settingPartition
inconfig_json
.
CHANGES:
- The
consul_license
resource is now deprecated and will be removed in a future version of the provider (#292).
NEW FEATURES:
- The
consul_admin_partition
resource can now be used to manage Consul Admin Partitions (#292). - The
consul_datacenters
datasource can now be used to get the list of known datacenters (#290 and #293). - The
consul_config_entry
now supports themesh
andexported-services
kinds (#292).
IMPROVEMENTS:
-
The
consul_acl_auth_method
,consul_acl_binding_rule
,consul_acl_policy
,consul_acl_role
,consul_acl_token
,consul_key_prefix
,consul_keys
,consul_namespace
andconsul_node
can now manage resources in Admin Partitions (#292). -
The
consul_acl_auth_method
,consul_acl_policy
,consul_acl_role
,consul_acl_token
,consul_key_prefix
andconsul_keys
datasources can now look for a resource in a specific Admin Partition (#292).
IMPROVEMENTS:
- The
consul_acl_role
resource now has anode_identities
argument (#284 and #287). - The
consul_acl_role
datasource now has anode_identities
attribute (#284 and #287). - The
consul_acl_token
resource now supportsservice_identities
,node_identities
, andexpiration_time
arguments (#284 and #287). - The
consul_acl_token
datasource now supportsroles
,service_identities
,node_identities
, andexpiration_time
attributes (#284 and #287).
NEW FEATURES:
- The
consul_namespace_policy_attachment
and theconsul_namespace_role_attachment
can now be used to attach a default policy or role to an already existing Consul namespace (#247 and #267). - Additional headers can be set to be sent with each requests to the Consul server using the
header
block in the provider configuration (#245).
IMPROVEMENTS:
- The
consul_namespace
resource can now be imported (#247 and #263). - The
tags
attribute in theconsul_services
datasource that was previously documented but missing is now present (#274).
BUG FIXES:
- The
consul_service
now properly detect drift in the health-check configuration (#237 and #262). - Detecting incorrect configuration in
consul_acl_auth_method
is now deferred until read to unsure the configuration has been interpolated (#260 and #261).
NEW FEATURES:
- The darwin/arm64 platform is now supported (#253 and #254).
- The
consul_acl_token_role_attachment
can be used to attach a role to a token created outside the Terraform configuration (#252).
IMPROVEMENTS:
- The
consul_acl_token_secret_id
datasource can now look for a token in a namespace (#242). - The
Content-Type
header is now present in allPUT
andPOST
HTTP requests sent by the provider (#255). - The
consul_config_entry
can now asssociate a config entry with a namespace (#246 and #256). - The
consul_key_prefix
can now be used to manage keys at the root of the key-value store (#258).
BUG FIXES:
- The
consul_acl_auth_method
now correctly detects changes in the configuration (#240 and #244). - All resources and datasources now properly inherit the
datacenter
,token
andnamespace
configuration from the provider when they are not set in the resource (#8 and #259)
NEW FEATURES:
BUG FIXES:
- The same API client is now reused across all operations ([#233]).
NEW FEATURES:
- The TLS configuration of the provider can now be given directly as strings instead of using files ([#220] and [#5]).
- The
consul_intention
resource now has adatacenter
argument ([#213] and [#214]). - The
consul_intention
resource can now be imported ([#222] and [#225]).
BUG FIXES:
- The
consul_acl_binding_rule
now delegates the validation ofbind_type
to Consul and supports thenode
bind type ([#217] and [#218]). - The
CONSUL_HTTP_SSL
environment variable can now be used to force the use of SSL like it does for the Consul CLI ([#215] and [#219]). - The
flags
attribute has been removed from theconsul_license
resource to make it work with Consul 1.8 ([#223] and [#227]).
NEW FEATURES:
-
The new
consul_certificate_authority
can be used to manage the Consul Connect Certificate Authority ([#205]). -
consul_acl_auth_method
now supports thedisplay_name
,max_token_ttl
,token_locality
andnamespace_rule
attributes ([#204]). -
The
consul_service
andconsul_service_health
data sources now support filter expressions ([#203]). -
The
consul_config_entry
resource now support Ingress and Terminating Gateways ([#199] and [#202]). -
The
consul_service
resource now has aenable_tag_override
attribute ([#201]). -
The
consul_acl_auth_method
resource now has aconfig_json
attribute to use an arbitrary complex configuration. Theconfig
attribute has been deprecated and will be removed in a future release ([#208] and [#209]). -
The
consul_acl_auth_method
data source now has aconfig_json
attribute. Theconfig
attribute has been deprecated as it will be blank when the configuration is too complex and it will be removed in a future release ([#208] and [#209]).
NEW FEATURES:
- The
ignore_check_ids
,node_meta
andservice_meta
have been added to theconsul_prepared_query
resource ([#192] and [#193]).
BUG FIXES:
- The
subkey
attribute of theconsul_key_prefix
resource now detects external changes ([#189]).
NEW FEATURES:
- The
consul_acl_role
can now be imported ([#182]). - Roles can be attached to
consul_acl_token
using the newroles
attribute ([#178] and [#180]]). - The
consul_namespace
resource can now be used to manage namespaces in a Consul Enterprise cluster ([#183]). - The
consul_acl_auth_method
,consul_acl_binding_rule
,consul_acl_policy
,consul_acl_role
,consul_acl_token
,consul_intention
,consul_key_prefix
,consul_keys
andconsul_service
can now be associated to a namespace in a Consul Enterprise cluster ([#183]). - The
consul_acl_auth_method
,consul_acl_policy
,consul_acl_role
,consul_acl_token
,consul_key_prefix
,consul_keys
,consul_nodes
,consul_service
,consul_services
datasources can now be used to query a specific namespace in a Consul Enterprise cluster ([#183]). - The
consul_license
resource can now be used to manage automatically the license of a Consul Enterprise cluster ([#172] and [#173]). - The
consul_network_area
andconsul_network_area_members
can now be used to manage the network areas of a Consul Enterprise cluster ([#175]). - The
consul_network_segments
can now be used to manage the network segments of a Consul Enterprise cluster ([#175]).
BUG FIXES:
IMPROVEMENTS:
- The
consul_keys
diffs are now easier to read.
BUG FIXES:
- The
CONSUL_CLIENT_CERT
,CONSUL_CLIENT_KEY
,CONSUL_CACERT
andCONSUL_CAPATH
are now used to set the TLS configuration of the provider. - The
consul_keys
can now create keys with an empty string as value.
NEW FEATURES:
-
The
consul_acl_role
,consul_acl_auth_method
andconsul_acl_binding_rule
can now be used to manage the Consul ACL system ([#128] and [#123]). -
The
consul_acl_token_policy_attachment
can be used to attach a policy to a token created outside the Terraform configuration ([#130] and [#125]). -
The
consul_config_entry
can now be used to manage Consul Configuration Entries ([#127]). -
The
consul_acl_auth_method
,consul_acl_policy
,consul_acl_role
datasources can now be used to retrieve information about the Consul ACL objects ([#153]). -
The
consul_acl_token
can now be used to read public token information ([#137] and [#126]). -
The
consul_acl_token_secret_id
can now be used to read a token secret ID ([#137] and [#126]).
IMPROVEMENTS:
-
The
consul_service
resource can now set the service metadata ([#122]). -
The
consul_service
datasource now returns the service metadata ([#148] and [#132]).
BUG FIXES:
-
The
consul_prepared_query
now handles default values correctly for thefailover
,dns
andtemplate
blocks ([#119] and [#121]) -
The
consul_service
resource correctly associates a service instance with its health-checks ([#147] and [#146]). -
Fix the
check_id
andstatus
attribute of health-checks in theconsul_service
resources that would always mark the plan as dirty ([#142]).
NEW FEATURES:
NEW FEATURES:
- New resource: the
consul_service_health
can now be used to fetch healthy instances of a service ([#87] and [#89])
IMPROVEMENTS:
- The
consul_prepared_query
resource now supports Consul Connect ([#107]) - The
consul_acl_token
andconsul_acl_policy
resources are now importable ([#103])
BUG FIXES:
- Tokens attribute nested in a resource attribute are now marked as sensitive so they won't appear in the ouput and the logs ([#106])
- The default datacenter is left empty if it cannot be read from the agent and is not set in the provider configuration ([#99], [#97] and [#105])
- The attributes
failover
,dns
andtemplate
of theconsul_prepared_query
resource are now set correctly ([#109] and [#108]) - The
consul_acl_token
resource can now be updated and does not crashes Terraform anymore ([#102]) - The
consul_node
resource now detect external changes made to itsaddress
andmeta
attributes ([#104]) - The
external
attribute of theconsul_service
resource has been deprecated ([#104]) - The
local
attribute is now correctly marked as requiring the creation of a new ACL token in theconsul_acl_token
resource ([#117])
NEW FEATURES:
- New resources:
consul_acl_policy
andconsul_acl_token
can now be used to manage Consul ACLs with Terraform. ([!60]) - New resource: the
consul_autopilot_config
resource can now be used to manage the Consul Autopilot configuration ([!86]). - New datasource: The
consul_autopilot_health
datasource returns the autopilot health information of the Consul cluster ([!84])
IMPROVEMENTS:
consul_service
can now manage health-checks associated with the service. ([!64] and [#54])- The
ca_path
attribute of the provider configuration can now be used to indicate a directory containing certificate files. ([!80] and [!79]) - The
consul_prepared_query
resource can now be imported. ([!94]) - The
consul_key_prefix
resource can now be imported. ([!78] and [#77]) consul_keys
andconsul_key_prefix
can now manage flags associated with each key. ([!71] and [#59])
BUG FIXES:
consul_intention
,consul_node
andconsul_service
now correctly re-creates resources deleted out-of-band (#81 and !69).- Consul tokens no longer appear in the logs and the standard output. ([!73] and [#50])
IMPROVEMENTS:
- The
consul_node
resource now supports setting node metadata via themeta
attribute. (#65)
NEW FEATURES:
- New resource:
consul_intention
. This provides management of intentions in Consul Connect, used for service authorization. (#53)
NOTES:
- The
consul_catalog_entry
resource has been deprecated and will be removed in a future release. Please use the upgrade guide in the documentation to migrate toconsul_service
orconsul_node
as appropriate. (#49) - The
consul_agent_service
resource has been deprecated and will be removed in a future release. Please use the upgrade guide in the documentation to migrate toconsul_service
. (#49) - The
consul_agent_self
datasource has been deprecated and will be removed in a future release. Please use the upgrade guide in the documentation to migrate toconsul_agent_config
if applicable. (#49)
IMPROVEMENTS:
- The
consul_service
resource has been modified to use the Consul catalog APIs. Thenode
attribute is now required, and nodes that do not exist will not be created automatically. Please see the upgrade guide in the documentation for more detail. (#49) consul_catalog_*
data sources have been renamed to remove catalog, for clarity. Both will work going forward, with the catalog version potentially being deprecated on a future date. (#49)- The provider now uses the post-1.0 version of the Consul API. (#49)
NOTES:
- This will be the last release prior to significant changes coming to the provider that will deprecate multiple resources. These changes are primarily to simplify overlap of resource functionality, ensure we are using the correct APIs/design provided by Consul for something like Terraform, and remove resources that can no longer be supported by the current version of the Consul API (1.0+). Read more here.
IMPROVEMENTS:
- The provider now allows you to skip HTTPS certificate verification by supplying the
insecure_https
option. (#31)
NEW FEATURES:
- New data source:
consul_agent_config
. This new datasource provides information similar toconsul_agent_self
, but is designed to only expose configuration that Consul will not change without versioning upstream. (#42) - New data source:
consul_key_prefix
corresponds to the existing resource of the same name, allowing config to access a set of keys with a common prefix as a Terraform map for more convenient access (#34)
BUG FIXES:
consul_catalog
resource now correctly re-creates resources deleted out-of-band. (#30)consul_service
resource type now correctly detects when a service has been deleted outside of Terraform, flagging it for re-creation rather than returning an error (#33)consul_catalog_service
data source now accepts thetag
anddatacenter
arguments, as was described in documentation (#32)
BUG FIXES:
- d/consul_agent_self: The
enable_ui
config setting was always set to false, regardless of the actual agent configuration (#16)
NOTES:
- Same functionality as that of Terraform 0.9.8. Repacked as part of Provider Splitout