provider: introduce a muxed client #3262
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
With the announcement of the cloudflare-go/v2, we need to introduce a
way to use both versions of the SDK in the provider. This moves us to a
world where the v1 and v2 of the clients can coexist and still be
initialised in a consistent fashion.
At a high level, the guidance for modifying resources and datasources is:
whatever version of the Terraform SDK/framework version you have
today.
the terraform-plugin-framework.
While this commit is rather large by LOC, it is the following changes
but made across the provider.
muxclient
package. Allows Terraform internals to have asingle client instead of trying to swap on the fly potentially causing
concurrency issues.
acctest.SharedClient
intoSharedV1Client
andSharedV2Client
for use in both versions of acceptance tests.
These changes should be internal and not end user facing.