You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Comparing our Pulumi and Terraform provider to the Talos provider and their effort to work with an internal/ provider, siderolabs/terraform-provider-talos#130, I see that Talos had internalized the provider and needed to revert that to simplify the shimming.
Looking at how the Pulumi providers wrap the SDKv2 and Framework providers, it appears that this is the only resource from TF that they depend on -- the provider objects.
Our SDKv2 Provider is exposed today as equinix.Provider. We intentionally left this object in an exported package because of the dependency that Pulumi and Crossplane (at the time) had on this object.
The Pulumi Equinix shim would take the return value of that function. With the New... function exported and taking user-agent as an argument, we wouldn't need the submodule, shim patch, or the UA patch.
The text was updated successfully, but these errors were encountered:
ocobles
changed the title
Comparing our Pulumi and Terraform provider to the Talos provider and their effort to work with an internal/ provider, https://github.com/siderolabs/terraform-provider-talos/issues/130, I see that Talos had internalized the provider and needed to revert that to simplify the shimming.
refactor: externalize NewFrameworkProvider as we do with SDKv2 Equinix Provider for easier downstream Pulumi provider
Mar 11, 2024
Based on the difficulties we ran into with refactoring provider resources into isolated packages, we probably don't want to (and maybe can't) tie the framework provider back into the equinix package/directory.
I'm hesitant to introduce a public interface to satisfy Pulumi--and thus establish that there is some broader validity in consuming this provider as a Go module rather than a plugin binary--but if we do go that route, we should introduce a new package for that purpose and hide both the SDK and framework providers behind it.
Originally posted by @displague in equinix/pulumi-equinix#79 (comment)
The text was updated successfully, but these errors were encountered: