Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Read load_balancer rules from API when importing #2571

Merged
merged 7 commits into from
Jul 7, 2023
Merged

Read load_balancer rules from API when importing #2571

merged 7 commits into from
Jul 7, 2023

Conversation

joshuamsager
Copy link

@joshuamsager joshuamsager commented Jun 30, 2023

Potential solution for: #2561

I say potential because its a complete overhaul of how flattenRules works - perhaps an oversimplification in which I may have introduced regressions.

The solution reads the load balancer rules from the API response instead of the state. It shoves both: overrides and fixed_response into a slice (as the schema demands).

After a terraform import , printing the statefile includes the overrides:

{
  "version": 4,
  "terraform_version": "1.3.7",
  "serial": 108,
  "lineage": "904a1c69-8fe2-7aed-396d-3c1600de4b62",
  "outputs": {},
  "resources": [
    {
      "mode": "managed",
      "type": "cloudflare_load_balancer",
      "name": "test",
      "provider": "provider[\"registry.terraform.io/cloudflare/cloudflare\"]",
      "instances": [
        {
          "schema_version": 1,
          "attributes": {
            "adaptive_routing": [],
            "country_pools": [],
            "created_on": "2023-06-30T14:27:21.847561Z",
            "default_pool_ids": [
              "93bf98cef7c19b43b6fee9c974ea1be7",
              "7a53d74dfc5369c6aee97ba2d0577316",
              "63b386189dc3806bbfab02ba8a42cc8c"
            ],
            "description": "",
            "enabled": true,
            "fallback_pool_id": "93bf98cef7c19b43b6fee9c974ea1be7",
            "id": "a6d1a90a10e74d80389a0a059a4577b1",
            "location_strategy": [],
            "modified_on": "2023-06-30T14:27:21.847561Z",
            "name": "testlb.apps.shopifystaging.com",
            "pop_pools": [],
            "proxied": true,
            "random_steering": [],
            "region_pools": [],
            "rules": [
              {
                "condition": "(http.request.uri.query contains \"east\")",
                "disabled": false,
                "fixed_response": [],
                "name": "east",
                "overrides": [
                  {
                    "adaptive_routing": [],
                    "country_pools": [],
                    "default_pools": [
                      "7a53d74dfc5369c6aee97ba2d0577316"
                    ],
                    "fallback_pool": "",
                    "location_strategy": [],
                    "pop_pools": [],
                    "random_steering": [],
                    "region_pools": [],
                    "session_affinity": "",
                    "session_affinity_attributes": [],
                    "session_affinity_ttl": 0,
                    "steering_policy": "",
                    "ttl": 0
                  }
                ],
                "priority": 0,
                "terminates": false
              },
              {
                "condition": "(http.request.uri.query contains \"central\")",
                "disabled": false,
                "fixed_response": [],
                "name": "central",
                "overrides": [
                  {
                    "adaptive_routing": [],
                    "country_pools": [],
                    "default_pools": [
                      "7a53d74dfc5369c6aee97ba2d0577316"
                    ],
                    "fallback_pool": "",
                    "location_strategy": [],
                    "pop_pools": [],
                    "random_steering": [],
                    "region_pools": [],
                    "session_affinity": "",
                    "session_affinity_attributes": [],
                    "session_affinity_ttl": 0,
                    "steering_policy": "",
                    "ttl": 0
                  }
                ],
                "priority": 10,
                "terminates": false
              }
            ],
            "session_affinity": "none",
            "session_affinity_attributes": [],
            "session_affinity_ttl": null,
            "steering_policy": "dynamic_latency",
            "ttl": 0,
            "zone_id": "1a1742e3ce58501dbca1be3d75d91a02"
          },
          "sensitive_attributes": [],
          "private": "eyJzY2hlbWFfdmVyc2lvbiI6IjEifQ=="
        }
      ]
    }
  ],
  "check_results": null
}

I've tried modifying override rules via Cloudflare's dashboard and re-planning changes in terraform - terraform is able to detect the differences and propose a correct plan:

Terraform will perform the following actions:

  # cloudflare_load_balancer.test will be updated in-place
  ~ resource "cloudflare_load_balancer" "test" {
      ~ default_pool_ids = [
            "93bf98cef7c19b43b6fee9c974ea1be7",
          - "7a53d74dfc5369c6aee97ba2d0577316",
            "63b386189dc3806bbfab02ba8a42cc8c",
          + "7a53d74dfc5369c6aee97ba2d0577316",
        ]
        id               = "a6d1a90a10e74d80389a0a059a4577b1"
        name             = "testlb.apps.shopifystaging.com"
        # (9 unchanged attributes hidden)

      ~ rules {
            name       = "east"
            # (4 unchanged attributes hidden)

          ~ overrides {
              ~ default_pools        = [
                  - "7a53d74dfc5369c6aee97ba2d0577316",
                  + "63b386189dc3806bbfab02ba8a42cc8c",
                ]
                # (2 unchanged attributes hidden)
            }
        }

        # (1 unchanged block hidden)
    }

Plan: 0 to add, 1 to change, 0 to destroy.

Closes #2561

@github-actions
Copy link

github-actions bot commented Jun 30, 2023

changelog detected ✅

@joshuamsager joshuamsager changed the title Read load_balancer from API when importing Read load_balancer rules from API when importing Jul 3, 2023
@jacobbednarz
Copy link
Member

acceptance tests are failing for this change

TF_ACC=1 go test ./internal/sdkv2provider -v -run "^TestAccCloudflareLoadBalancer_" -count 1 -timeout 120m -parallel 1
=== RUN   TestAccCloudflareLoadBalancer_Import
=== PAUSE TestAccCloudflareLoadBalancer_Import
=== RUN   TestAccCloudflareLoadBalancer_Basic
=== PAUSE TestAccCloudflareLoadBalancer_Basic
=== RUN   TestAccCloudflareLoadBalancer_SessionAffinity
=== PAUSE TestAccCloudflareLoadBalancer_SessionAffinity
=== RUN   TestAccCloudflareLoadBalancer_AdaptiveRouting
=== PAUSE TestAccCloudflareLoadBalancer_AdaptiveRouting
=== RUN   TestAccCloudflareLoadBalancer_LocationStrategy
=== PAUSE TestAccCloudflareLoadBalancer_LocationStrategy
=== RUN   TestAccCloudflareLoadBalancer_RandomSteering
=== PAUSE TestAccCloudflareLoadBalancer_RandomSteering
=== RUN   TestAccCloudflareLoadBalancer_GeoBalanced
=== PAUSE TestAccCloudflareLoadBalancer_GeoBalanced
=== RUN   TestAccCloudflareLoadBalancer_ProximityBalanced
=== PAUSE TestAccCloudflareLoadBalancer_ProximityBalanced
=== RUN   TestAccCloudflareLoadBalancer_LeastOutstandingRequestsBalanced
=== PAUSE TestAccCloudflareLoadBalancer_LeastOutstandingRequestsBalanced
=== RUN   TestAccCloudflareLoadBalancer_Rules
=== PAUSE TestAccCloudflareLoadBalancer_Rules
=== RUN   TestAccCloudflareLoadBalancer_DuplicatePool
=== PAUSE TestAccCloudflareLoadBalancer_DuplicatePool
=== RUN   TestAccCloudflareLoadBalancer_Update
=== PAUSE TestAccCloudflareLoadBalancer_Update
=== RUN   TestAccCloudflareLoadBalancer_CreateAfterManualDestroy
=== PAUSE TestAccCloudflareLoadBalancer_CreateAfterManualDestroy
=== CONT  TestAccCloudflareLoadBalancer_Import
--- PASS: TestAccCloudflareLoadBalancer_Import (7.51s)
=== CONT  TestAccCloudflareLoadBalancer_ProximityBalanced
--- PASS: TestAccCloudflareLoadBalancer_ProximityBalanced (8.55s)
=== CONT  TestAccCloudflareLoadBalancer_CreateAfterManualDestroy
--- PASS: TestAccCloudflareLoadBalancer_CreateAfterManualDestroy (12.56s)
=== CONT  TestAccCloudflareLoadBalancer_Update
--- PASS: TestAccCloudflareLoadBalancer_Update (11.14s)
=== CONT  TestAccCloudflareLoadBalancer_DuplicatePool
--- PASS: TestAccCloudflareLoadBalancer_DuplicatePool (2.30s)
=== CONT  TestAccCloudflareLoadBalancer_Rules
panic: interface conversion: interface {} is map[string]interface {}, not *schema.Set

goroutine 3902 [running]:
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*MapFieldWriter).setSet(0xc00098f788, {0xc0006d0780, 0x5, 0x5}, {0x1c7e500, 0xc000434570}, 0xc000346640)
	/Users/jacob/go/pkg/mod/github.com/hashicorp/terraform-plugin-sdk/v2@v2.27.0/helper/schema/field_writer_map.go:346 +0x796
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*MapFieldWriter).set(0xc00098f788, {0xc0006d0780, 0x5, 0x5}, {0x1c7e500, 0xc000434570})
	/Users/jacob/go/pkg/mod/github.com/hashicorp/terraform-plugin-sdk/v2@v2.27.0/helper/schema/field_writer_map.go:110 +0x14c
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*MapFieldWriter).setObject(0xc00063cc00?, {0xc00063cc00?, 0x4, 0x4}, {0x1c7e500, 0xc000434480})
	/Users/jacob/go/pkg/mod/github.com/hashicorp/terraform-plugin-sdk/v2@v2.27.0/helper/schema/field_writer_map.go:225 +0x2fb
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*MapFieldWriter).set(0xc00098f788, {0xc00063cc00, 0x4, 0x4}, {0x1c7e500, 0xc000434480})
	/Users/jacob/go/pkg/mod/github.com/hashicorp/terraform-plugin-sdk/v2@v2.27.0/helper/schema/field_writer_map.go:112 +0x11c
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*MapFieldWriter).setList.func1(...)
	/Users/jacob/go/pkg/mod/github.com/hashicorp/terraform-plugin-sdk/v2@v2.27.0/helper/schema/field_writer_map.go:125
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*MapFieldWriter).setList(0xc00098f788, {0xc000434720?, 0x3, 0x3}, {0x1c20080, 0xc0005483f0})
	/Users/jacob/go/pkg/mod/github.com/hashicorp/terraform-plugin-sdk/v2@v2.27.0/helper/schema/field_writer_map.go:145 +0x30b
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*MapFieldWriter).set(0xc00098f788, {0xc000434720, 0x3, 0x3}, {0x1c20080, 0xc0005483f0})
	/Users/jacob/go/pkg/mod/github.com/hashicorp/terraform-plugin-sdk/v2@v2.27.0/helper/schema/field_writer_map.go:106 +0xa5
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*MapFieldWriter).setObject(0xc000742ae0?, {0xc000742ae0?, 0x2, 0x2}, {0x1c7e500, 0xc000434420})
	/Users/jacob/go/pkg/mod/github.com/hashicorp/terraform-plugin-sdk/v2@v2.27.0/helper/schema/field_writer_map.go:225 +0x2fb
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*MapFieldWriter).set(0xc00098f788, {0xc000742ae0, 0x2, 0x2}, {0x1c7e500, 0xc000434420})
	/Users/jacob/go/pkg/mod/github.com/hashicorp/terraform-plugin-sdk/v2@v2.27.0/helper/schema/field_writer_map.go:112 +0x11c
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*MapFieldWriter).setList.func1(...)
	/Users/jacob/go/pkg/mod/github.com/hashicorp/terraform-plugin-sdk/v2@v2.27.0/helper/schema/field_writer_map.go:125
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*MapFieldWriter).setList(0xc00098f788, {0xc0005a0b20?, 0x1, 0x1}, {0x1c20080, 0xc0005485b8})
	/Users/jacob/go/pkg/mod/github.com/hashicorp/terraform-plugin-sdk/v2@v2.27.0/helper/schema/field_writer_map.go:145 +0x30b
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*MapFieldWriter).set(0xc00098f788, {0xc0005a0b20, 0x1, 0x1}, {0x1c20080, 0xc0005485b8})
	/Users/jacob/go/pkg/mod/github.com/hashicorp/terraform-plugin-sdk/v2@v2.27.0/helper/schema/field_writer_map.go:106 +0xa5
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*MapFieldWriter).WriteField(0xc00098f788, {0xc0005a0b20, 0x1, 0x1}, {0x1c20080, 0xc0005485b8})
	/Users/jacob/go/pkg/mod/github.com/hashicorp/terraform-plugin-sdk/v2@v2.27.0/helper/schema/field_writer_map.go:92 +0x3f9
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*ResourceData).Set(0xc00076f780, {0x1ddf157, 0x5}, {0x1c20080, 0xc0005485b8})
	/Users/jacob/go/pkg/mod/github.com/hashicorp/terraform-plugin-sdk/v2@v2.27.0/helper/schema/resource_data.go:230 +0x210
github.com/cloudflare/terraform-provider-cloudflare/internal/sdkv2provider.resourceCloudflareLoadBalancerRead({0x1fd6ec8, 0xc00019f830}, 0xc00076f780, {0x1dda080?, 0xc00071c790})
	/Users/jacob/go/src/github.com/cloudflare/terraform-provider-cloudflare/internal/sdkv2provider/resource_cloudflare_load_balancer.go:304 +0xcee
github.com/cloudflare/terraform-provider-cloudflare/internal/sdkv2provider.resourceCloudflareLoadBalancerCreate({0x1fd6ec8, 0xc00019f830}, 0xc00076f780, {0x1dda080?, 0xc00071c790?})
	/Users/jacob/go/src/github.com/cloudflare/terraform-provider-cloudflare/internal/sdkv2provider/resource_cloudflare_load_balancer.go:144 +0xb58
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*Resource).create(0xc00031cb60, {0x1fd6f00, 0xc000510a80}, 0xd?, {0x1dda080, 0xc00071c790})
	/Users/jacob/go/pkg/mod/github.com/hashicorp/terraform-plugin-sdk/v2@v2.27.0/helper/schema/resource.go:733 +0x12e
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*Resource).Apply(0xc00031cb60, {0x1fd6f00, 0xc000510a80}, 0xc000b1b520, 0xc00076e900, {0x1dda080, 0xc00071c790})
	/Users/jacob/go/pkg/mod/github.com/hashicorp/terraform-plugin-sdk/v2@v2.27.0/helper/schema/resource.go:864 +0xa7d
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*GRPCProviderServer).ApplyResourceChange(0xc00061e0f0, {0x1fd6f00?, 0xc0005109c0?}, 0xc000616190)
	/Users/jacob/go/pkg/mod/github.com/hashicorp/terraform-plugin-sdk/v2@v2.27.0/helper/schema/grpc_provider.go:1024 +0xe8d
github.com/hashicorp/terraform-plugin-go/tfprotov5/tf5server.(*server).ApplyResourceChange(0xc000220320, {0x1fd6f00?, 0xc0005101b0?}, 0xc00009c070)
	/Users/jacob/go/pkg/mod/github.com/hashicorp/terraform-plugin-go@v0.17.0/tfprotov5/tf5server/server.go:821 +0x574
github.com/hashicorp/terraform-plugin-go/tfprotov5/internal/tfplugin5._Provider_ApplyResourceChange_Handler({0x1da09a0?, 0xc000220320}, {0x1fd6f00, 0xc0005101b0}, 0xc00009c000, 0x0)
	/Users/jacob/go/pkg/mod/github.com/hashicorp/terraform-plugin-go@v0.17.0/tfprotov5/internal/tfplugin5/tfplugin5_grpc.pb.go:422 +0x170
google.golang.org/grpc.(*Server).processUnaryRPC(0xc0000b8000, {0x1fdb418, 0xc000583860}, 0xc000710000, 0xc0004a4990, 0x26e1020, 0x0)
	/Users/jacob/go/pkg/mod/google.golang.org/grpc@v1.56.1/server.go:1337 +0xdf3
google.golang.org/grpc.(*Server).handleStream(0xc0000b8000, {0x1fdb418, 0xc000583860}, 0xc000710000, 0x0)
	/Users/jacob/go/pkg/mod/google.golang.org/grpc@v1.56.1/server.go:1714 +0xa36
google.golang.org/grpc.(*Server).serveStreams.func1.1()
	/Users/jacob/go/pkg/mod/google.golang.org/grpc@v1.56.1/server.go:959 +0x98
created by google.golang.org/grpc.(*Server).serveStreams.func1
	/Users/jacob/go/pkg/mod/google.golang.org/grpc@v1.56.1/server.go:957 +0x18c
FAIL	github.com/cloudflare/terraform-provider-cloudflare/internal/sdkv2provider	45.561s
FAIL
make: *** [testacc] Error 1

@joshuamsager
Copy link
Author

@jacobbednarz I fixed the panic, thanks for sharing. I need a hand resolving the 2 remaining errors, only 1 of which seems related to my change.

@joshuamsager
Copy link
Author

joshuamsager commented Jul 5, 2023

@jacobbednarz I fixed the test related to my change. The remaining failing test fails on master:

=== RUN   TestAccCloudflareLoadBalancer_SessionAffinity
=== PAUSE TestAccCloudflareLoadBalancer_SessionAffinity
=== CONT  TestAccCloudflareLoadBalancer_SessionAffinity
    resource_cloudflare_load_balancer_test.go:133: Step 1/1 error: Check failed: Check 4/8 error: cloudflare_load_balancer.kqhmwmbnyx: Attribute 'session_affinity_ttl' found when not expected
--- FAIL: TestAccCloudflareLoadBalancer_SessionAffinity (6.76s)
FAIL
FAIL	github.com/cloudflare/terraform-provider-cloudflare/internal/sdkv2provider	7.131s
FAIL

I think this particular test failure was introduced here

@jacobbednarz
Copy link
Member

LGTM @joshuamsager. i've pushed a couple of fixes to the test suite which should address those failing on master.

acceptance tests are now passng

TF_ACC=1 go test ./internal/sdkv2provider -v -run "^TestAccCloudflareLoadBalancer_" -count 1 -timeout 120m -parallel 1
=== RUN   TestAccCloudflareLoadBalancer_Import
=== PAUSE TestAccCloudflareLoadBalancer_Import
=== RUN   TestAccCloudflareLoadBalancer_Basic
=== PAUSE TestAccCloudflareLoadBalancer_Basic
=== RUN   TestAccCloudflareLoadBalancer_SessionAffinity
=== PAUSE TestAccCloudflareLoadBalancer_SessionAffinity
=== RUN   TestAccCloudflareLoadBalancer_SessionAffinityIPCookie
=== PAUSE TestAccCloudflareLoadBalancer_SessionAffinityIPCookie
=== RUN   TestAccCloudflareLoadBalancer_AdaptiveRouting
=== PAUSE TestAccCloudflareLoadBalancer_AdaptiveRouting
=== RUN   TestAccCloudflareLoadBalancer_LocationStrategy
=== PAUSE TestAccCloudflareLoadBalancer_LocationStrategy
=== RUN   TestAccCloudflareLoadBalancer_RandomSteering
=== PAUSE TestAccCloudflareLoadBalancer_RandomSteering
=== RUN   TestAccCloudflareLoadBalancer_GeoBalanced
=== PAUSE TestAccCloudflareLoadBalancer_GeoBalanced
=== RUN   TestAccCloudflareLoadBalancer_ProximityBalanced
=== PAUSE TestAccCloudflareLoadBalancer_ProximityBalanced
=== RUN   TestAccCloudflareLoadBalancer_LeastOutstandingRequestsBalanced
=== PAUSE TestAccCloudflareLoadBalancer_LeastOutstandingRequestsBalanced
=== RUN   TestAccCloudflareLoadBalancer_Rules
=== PAUSE TestAccCloudflareLoadBalancer_Rules
=== RUN   TestAccCloudflareLoadBalancer_DuplicatePool
=== PAUSE TestAccCloudflareLoadBalancer_DuplicatePool
=== RUN   TestAccCloudflareLoadBalancer_Update
=== PAUSE TestAccCloudflareLoadBalancer_Update
=== RUN   TestAccCloudflareLoadBalancer_CreateAfterManualDestroy
=== PAUSE TestAccCloudflareLoadBalancer_CreateAfterManualDestroy
=== CONT  TestAccCloudflareLoadBalancer_Import
--- PASS: TestAccCloudflareLoadBalancer_Import (8.56s)
=== CONT  TestAccCloudflareLoadBalancer_GeoBalanced
--- PASS: TestAccCloudflareLoadBalancer_GeoBalanced (7.76s)
=== CONT  TestAccCloudflareLoadBalancer_CreateAfterManualDestroy
--- PASS: TestAccCloudflareLoadBalancer_CreateAfterManualDestroy (11.14s)
=== CONT  TestAccCloudflareLoadBalancer_Update
--- PASS: TestAccCloudflareLoadBalancer_Update (10.12s)
=== CONT  TestAccCloudflareLoadBalancer_DuplicatePool
--- PASS: TestAccCloudflareLoadBalancer_DuplicatePool (2.08s)
=== CONT  TestAccCloudflareLoadBalancer_Rules
--- PASS: TestAccCloudflareLoadBalancer_Rules (6.13s)
=== CONT  TestAccCloudflareLoadBalancer_LeastOutstandingRequestsBalanced
--- PASS: TestAccCloudflareLoadBalancer_LeastOutstandingRequestsBalanced (15.40s)
=== CONT  TestAccCloudflareLoadBalancer_ProximityBalanced
--- PASS: TestAccCloudflareLoadBalancer_ProximityBalanced (5.70s)
=== CONT  TestAccCloudflareLoadBalancer_AdaptiveRouting
--- PASS: TestAccCloudflareLoadBalancer_AdaptiveRouting (5.75s)
=== CONT  TestAccCloudflareLoadBalancer_RandomSteering
--- PASS: TestAccCloudflareLoadBalancer_RandomSteering (10.00s)
=== CONT  TestAccCloudflareLoadBalancer_LocationStrategy
--- PASS: TestAccCloudflareLoadBalancer_LocationStrategy (5.70s)
=== CONT  TestAccCloudflareLoadBalancer_SessionAffinity
--- PASS: TestAccCloudflareLoadBalancer_SessionAffinity (5.80s)
=== CONT  TestAccCloudflareLoadBalancer_SessionAffinityIPCookie
--- PASS: TestAccCloudflareLoadBalancer_SessionAffinityIPCookie (5.35s)
=== CONT  TestAccCloudflareLoadBalancer_Basic
--- PASS: TestAccCloudflareLoadBalancer_Basic (5.50s)
PASS
ok  	github.com/cloudflare/terraform-provider-cloudflare/internal/sdkv2provider	106.131s

@Ltadrian
Copy link

Ltadrian commented Jul 6, 2023

Looks good to me!

@jacobbednarz jacobbednarz merged commit 4bfad7b into cloudflare:master Jul 7, 2023
@github-actions github-actions bot added this to the v4.10.0 milestone Jul 7, 2023
github-actions bot pushed a commit that referenced this pull request Jul 7, 2023
@github-actions
Copy link

This functionality has been released in v4.10.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 github-actions bot locked as resolved and limited conversation to collaborators Jul 12, 2023
@joshuamsager joshuamsager deleted the joshuamsager/read-overrides-from-api branch July 12, 2023 17:58
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

terraform import of cloudflare_load_balancer does not import overrides
4 participants