Skip to content

Releases: elastic/terraform-provider-elasticstack

v0.6.0

24 May 12:39
Compare
Choose a tag to compare

Added

  • New resource elasticstack_elasticsearch_enrich_policy to manage enrich policies (#286) (Enrich API)
  • New data source elasticstack_elasticsearch_enrich_policy to read enrich policies (#293) (Enrich API)
  • Add 'mapping_coerce' field to index resource (#229)
  • Add 'min_*' conditions to ILM rollover (#250)
  • Add support for Kibana connections (#226)
  • [Breaking Change] Add 'deletion_protection' field to index resource to avoid unintentional deletion. (#167)
    • To delete index resource, you'll need to explicitly set deletion_protection = false as follows.
    resource "elasticstack_elasticsearch_index" "example" {
      name = "example"
      mappings = jsonencode({
        properties = {
          field1    = { type = "text" }
        }
      })
      deletion_protection = false
    }
  • Add elasticstack_kibana_space for managing Kibana spaces (#272)
  • Add elasticstack_elasticsearch_transform for managing Elasticsearch transforms (#284)
  • Add elasticstack_elasticsearch_watch for managing Elasticsearch Watches (#155)
  • Add elasticstack_kibana_alerting_rule for managing Kibana alerting rules (#292)
  • Add client for communicating with the Fleet APIs (#311])
  • Add elasticstack_fleet_enrollment_tokens and elasticstack_fleet_agent_policy for managing Fleet enrollment tokens and agent policies (#322])
  • Add elasticstack_fleet_output and elasticstack_fleet_server_host for managing Fleet outputs and server hosts (#327])
  • Add elasticstack_kibana_action_connector for managing Kibana action connectors (#306)

Fixed

  • Updated unsupported queue_max_bytes_number and queue_max_bytes_units with queue.max_bytes (#266)
  • Respect ignore_unavailable and include_global_state values when configuring SLM policies (#224)
  • Refactor API client functions and return diagnostics (#220)
  • Fix not to recreate index when field is removed from mapping (#232)
  • Add query params fields to index resource (#244)
  • Properly handle errors which occur during provider execution (#262)
  • Correctly handle empty logstash pipeline metadata in plan diffs (#256)
  • Fix error when logging API requests in debug mode (#259)
  • [Breaking Change] Change pipeline_metadata type from schema.TypeMap to schema.TypeString. This is to fix an error caused by updates to Logstash Pipelines outside of TF (#278)
    • To use the updated pipeline_metadata field, you'll need to encapsulate any Terraform configuration with jsonencode{} as follows:
      resource "elasticstack_elasticsearch_logstash_pipeline" "example" {
        name = "example"
        pipeline = <<-EOF
          input{}
          filter{}
          output{}
      EOF
        pipeline_metadata = jsonencode({
          type = "logstash_pipeline"
          version = 1
        })
      }
  • Fix order of indices field in SLM (#326)

v0.5.0

06 Dec 23:39
99bd1e9
Compare
Choose a tag to compare

Added

New resource elasticstack_elasticsearch_logstash_pipeline to manage Logstash pipelines (Centralized Pipeline Management) (#151)
Add elasticstack_elasticsearch_script resource (#173)
Add elasticstack_elasticsearch_security_role data source (#177)
Add elasticstack_elasticsearch_security_role_mapping data source (#178)
Apply total_shards_per_node setting in allocate action in ILM. Supported from Elasticsearch version 7.16 (#112)
Add elasticstack_elasticsearch_security_api_key resource (#193)
Add elasticstack_elasticsearch_security_system_user resource to manage built-in user (#188)
Add unassigned_node_left_delayed_timeout to index resource (#196)
Add support for Client certificate based authentication (#191)

Fixed

Remove unnecessary unsetting id on delete (#174)
Fix not found handling for snapshot repository (#175)
Add warn log when to remove resource from state (#185)
Import snapshot repository name when importing (#187)

v0.4.0

17 Oct 23:45
7d60797
Compare
Choose a tag to compare

Added

  • Add ca_data field to provider schema (#145)
  • Add individual setting fields (#137)
  • Allow use of api_key instead of username/password for authentication (#130)
  • Add allow_restricted_indices setting to security role (#125)
  • Add conditional to only set password and password_hash when a new value is defined (#127)
  • Add support for ELASTICSEARCH_INSECURE environment variable as the default of the insecure config value (#127)
  • Add elasticstack_elasticsearch_security_role_mapping resource (148)

Fixed

  • Refactor main function not to use deprecated debug method (#149)
  • Expose provider package (#142)
  • Upgrade Go version to 1.19 and sdk version to v2.22.0 (#139)
  • Make API calls context aware to be able to handle timeouts (#138)
  • Correctly identify a missing security user (#101)
  • Support 7.x Elasticsearch < 7.15 by removing the default media_type attribute in the Append processor (#118)

v0.3.3

22 Mar 12:11
Compare
Choose a tag to compare

Fixed

  • Make sure it is possible to set priority to 0 in ILM template (#88)
  • Set the ILM name on read operation (#87)
  • Always use data_stream setting if it's present (#91)

v0.3.2

28 Feb 12:30
Compare
Choose a tag to compare

Fixed

  • Properly apply number_of_replicas setting in allocate action in ILM (#80)

v0.3.1

24 Feb 13:31
Compare
Choose a tag to compare

Fixed

  • Add new field allow_custom_routing in data_stream section of index_template, which appears only in Elasticsearch version 8.0.0. Make sure index_template resource can work with both 7.x and 8.x versions (#72)
  • Panic using elasticstack_elasticsearch_security_user_data_source when the user absent or there is not enough permissions to fetch users from ES API (#73)
  • Fix typo in the index alias model (#78)

v0.3.0

17 Feb 11:48
Compare
Choose a tag to compare

Added

  • New resource elasticstack_elasticsearch_data_stream to manage Elasticsearch data streams (#45)
  • New resource elasticstack_elasticsearch_ingest_pipeline to manage Elasticsearch ingest pipelines (#56)
  • New resource elasticstack_elasticsearch_component_template to manage Elasticsearch component templates (#39)
  • New helper data sources to create processors for ingest pipelines (#67)

Fixed

  • Update only changed index settings (#52)
  • Enable import of index settings (#53)
  • Handle allocate action in ILM policy (#59)
  • Send only initialized values to Elasticsearch API when managing the users (#66)

v0.2.0

27 Jan 07:24
f425d41
Compare
Choose a tag to compare

Added

  • New resource to manage Elasticsearch indices (#38)
  • The insecure option to the Elasticsearch provider configuration to ignore certificate verification (#36)
  • The ca_file option to the Elasticsearch provider configuration to provide path to the custom root certificate file (#35)
  • Documentation templates for all the exisiting resources (#32)

Fixed

  • Identify missing or deleted resources in the Elasticsearch cluster and make sure Terraform can re-create them (#40)

Changed

  • [Breaking] Rename aliases configuration option in
    elasticstack_elasticsearch_index_template resource to singular alias

v0.1.0

20 Dec 12:34
35628f7
Compare
Choose a tag to compare

Version 0.1.0 is an initial beta version of the Elastic Stack terraform provider. It is currently not yet fully supported by Elastic, but will be in subsequent versions.

For this early release, we'd like to get feedback from early adopters. Any modifications made to resources in later versions will be communicated prior to release.