cloudflare / terraform-provider-cloudflare

Cloudflare Terraform Provider
https://registry.terraform.io/providers/cloudflare/cloudflare
Mozilla Public License 2.0
792 stars 611 forks source link

Compression Rulesets don't yet support `zstandard` algorithm #4144

Closed ebachle closed 1 month ago

ebachle commented 1 month ago

Confirmation

Terraform and Cloudflare provider version

Terraform v1.8.5
on darwin_arm64
+ provider registry.terraform.io/cloudflare/cloudflare v4.43.0

Your version of Terraform is out of date! The latest version
is 1.9.5. You can update by downloading from https://www.terraform.io/downloads.html

1.8.5 vs 1.9.5 for terraform version shouldn't really matter.

Affected resource(s)

cloudflare_ruleset

Terraform configuration files

resource "cloudflare_ruleset" "compression_rules" {
  zone_id     = var.zone_id
  name        = "Compression Settings"
  description = "Compression Settings"
  kind        = "zone"
  phase       = "http_response_compression"
  rules {
    action = "compress_response"
    action_parameters {
      algorithms {
        name = "zstandard"
      }
      algorithms {
        name = "auto"
      }
    }
    expression  = "(http.response.content_type.media_type in {\"text/html\"})" # or any other expression
    description = "Zstandard"
    enabled     = true
  }
}

Link to debug output

Probably not necessary here

Panic output

No response

Expected output

It should accept zstandard here.

Actual output

terraform validate
│ Error: Invalid Attribute Value Match
│
│   with cloudflare_ruleset.compression_rules,
│   on rules-compression.tf line 11, in resource "cloudflare_ruleset" "compression_rules":
│   11:         name = "zstandard"
│
│ Attribute rules[0].action_parameters[0].algorithms[0].name value must be one of: ["gzip" "brotli" "auto" "default" "none"], got: "zstandard"

Steps to reproduce

  1. Using 4.43.0 of terraform
  2. Create a cloudflare_ruleset object for compression rules, and specify zstandard as the algorithm
  3. Receive error

Additional factoids

I'm happy to make the PR to fix it :)

References

No response

github-actions[bot] commented 1 month ago

Community Note

Voting for Prioritization

Volunteering to Work on This Issue

github-actions[bot] commented 1 month ago

Thank you for reporting this issue! For maintainers to dig into issues it is required that all issues include the entirety of TF_LOG=DEBUG output to be provided. The only parts that should be redacted are your user credentials in the X-Auth-Key, X-Auth-Email and Authorization HTTP headers. Details such as zone or account identifiers are not considered sensitive but can be redacted if you are very cautious. This log file provides additional context from Terraform, the provider and the Cloudflare API that helps in debugging issues. Without it, maintainers are very limited in what they can do and may hamper diagnosis efforts.

This issue has been marked with triage/needs-information and is unlikely to receive maintainer attention until the log file is provided making this a complete bug report.

github-actions[bot] commented 2 weeks ago

This functionality has been released in v4.45.0 of the Terraform Cloudflare Provider.

Please see the Terraform documentation on provider versioning or reach out if you need any assistance upgrading.

For further feature requests or bug reports with this functionality, please create a new GitHub issue following the template. Thank you!