terraform-provider-cloudflare icon indicating copy to clipboard operation
terraform-provider-cloudflare copied to clipboard

breaking changes for 4.x

Open jacobbednarz opened this issue 2 years ago • 6 comments

Tracking for all the planned cleanup in 4.x

Internal cleanup

  • [ ] Remove all uses of UsingAccount in favour of explicit account ID parameters.
  • [ ] Remove reliance on userBaseUrl.

Schema updates

Deletions/modifications

  • [ ] cloudflare_spectrum_application needs to support a list of config options (not just IP list) in edge_ips (#1687)
  • [ ] cloudflare_zone to swap account_id to Required: true (from optional)
  • [ ] cloudflare_account_member to swap account_id to Required: true (from optional)
  • [ ] remove ability to create user level resources
    • [ ] cloudflare_access_rule
    • [ ] cloudflare_load_balancer
    • [ ] cloudflare_load_balancer_monitor
    • [ ] cloudflare_load_balancer_pool

Additions

  • [x] cloudflare_zone needs to support account_id (#1767)
  • [x] cloudflare_account_member needs to support account_id (#1767)
  • [x] cloudflare_access_rule needs to support account_id (#1790)
  • [ ] cloudflare_load_balancer_pool needs to support account_id
  • [ ] cloudflare_load_balancer_monitor needs to support account_id
  • [ ] cloudflare_workers_kv_namespace needs to support account_id
  • [ ] cloudflare_worker_script needs to support account_id
  • [ ] cloudflare_worker_route needs to support account_id

UX

  • [ ] Replace zone settings override method with either individual setting control or a grouped resource that doesn't rely on defaults

Deprecations

  • [ ] cloudflare_argo_tunnel => cloudflare_tunnel
  • [ ] Remove cloudflare_access_bookmark resource in favour of configuration on cloudflare_access_application (#1647).
  • [ ] Legacy WAF configuration
    • [ ] cloudflare_waf_group (resource)
    • [ ] cloudflare_waf_override (resource)
    • [ ] cloudflare_waf_package (resource)
    • [ ] cloudflare_waf_rule (resource)
    • [ ] cloudflare_waf_groups (datasource)
    • [ ] cloudflare_waf_packages (datasource)
    • [ ] cloudflare_waf_rules (datasource)

jacobbednarz avatar May 25 '22 09:05 jacobbednarz

Seems account_id should be added to the cloudflare_worker_script as well. If I try to run terraform apply without export CLOUDFLARE_ACCOUNT_ID it fails with error:

│ Error: error creating worker script: account ID required
│ 
│   with module.workers.cloudflare_worker_script.main["cors"],
│   on .terraform/modules/workers/cloudflare/worker/main.tf line 17, in resource "cloudflare_worker_script" "main":
│   17: resource "cloudflare_worker_script" "main" {
│ 

Nmishin avatar Jul 20 '22 14:07 Nmishin

thanks @Nmishin - added.

jacobbednarz avatar Jul 20 '22 19:07 jacobbednarz

1 addition: cloudflare_load_balancer needs to support account_id

NJITman avatar Aug 31 '22 23:08 NJITman

thanks, added.

jacobbednarz avatar Aug 31 '22 23:08 jacobbednarz

Another addition that needs account_id support - cloudflare_worker_route

andy-paine-numan avatar Sep 23 '22 08:09 andy-paine-numan

Another addition that needs account_id support - cloudflare_worker_route

thanks, updated

jacobbednarz avatar Sep 25 '22 22:09 jacobbednarz

It seems that account_id was added to most account-level resources in 3.27.0. However, this doesn't seem to enforce the use of account-level API (unlike specifying account_id on provider level or using the CLOUDFLARE_ACCOUNT_ID environment variable, both of which are now deprecated).

andrewkrain avatar Nov 03 '22 20:11 andrewkrain

@andrewkrain please open a new issue following the template provided for the resources you're having issues with so we can address those specifically and just link back to this larger tracking ticket.

jacobbednarz avatar Nov 03 '22 23:11 jacobbednarz

Seems like ip_list should be deprecated in favor of list https://github.com/cloudflare/terraform-provider-cloudflare/blob/master/internal/provider/resource_cloudflare_ip_list.go#L15-L16

Cyb3r-Jak3 avatar Nov 06 '22 23:11 Cyb3r-Jak3

thanks @Cyb3r-Jak3; added.

jacobbednarz avatar Nov 07 '22 04:11 jacobbednarz

This functionality has been released in v4.0.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!

github-actions[bot] avatar Feb 21 '23 00:02 github-actions[bot]