Skip to content
This repository has been archived by the owner on Mar 1, 2024. It is now read-only.

Attempt to use new Pulumi bridge for Terraform Plugin Framework #148

Closed
wants to merge 1 commit into from

Conversation

ryanrasti
Copy link

Attempt to use the preview Pulumi bridge for the TPF by following the README. I put the Pulumi bridge code directly in main as its much simpler than doing the shim stuff in that README.

As a first pass, I'm just trying to get the code in main to compile, but I think there's an issue because doing a go get github.com/pulumi/pulumi-terraform-bridge/pf/tfbridge upgrades dependency terraform-plugin-framework from v0.11.1 to v1.1.1 and it appears some internal stuff is breaking. I don't have enough knowledge of go or the libraries in question to know if its possible to downgrade or not.

If someone could pick this draft up or give any pointers -- that'd be really helpful!

$ go build
# github.com/fly-apps/terraform-provider-fly/internal/provider/modifiers
internal/provider/modifiers/string_default.go:33:70: undefined: tfsdk.ModifyAttributePlanRequest
internal/provider/modifiers/string_default.go:33:110: undefined: tfsdk.ModifyAttributePlanResponse
internal/provider/modifiers/string_default.go:45:10: str.Null undefined (type basetypes.StringValue has no field or method Null)
internal/provider/modifiers/string_default.go:49:36: unknown field 'Value' in struct literal of type basetypes.StringValue
# github.com/fly-apps/terraform-provider-fly/internal/utils
internal/utils/maps.go:10:8: TFMap.ElemType undefined (type basetypes.MapValue has no field or method ElemType)
internal/utils/maps.go:12:12: TFMap.Elems undefined (type basetypes.MapValue has no field or method Elems)
internal/utils/maps.go:13:10: TFMap.Elems undefined (type basetypes.MapValue has no field or method Elems)
internal/utils/maps.go:15:9: TFMap.Elems undefined (type basetypes.MapValue has no field or method Elems)
internal/utils/maps.go:15:35: unknown field 'Value' in struct literal of type basetypes.StringValue
# github.com/pulumi/pulumi-terraform-bridge/pf/tfbridge
../../go/pkg/mod/github.com/pulumi/pulumi-terraform-bridge/pf@v0.1.0/tfbridge/naming.go:33:44: undefined: tfgen.Renames
../../go/pkg/mod/github.com/pulumi/pulumi-terraform-bridge/pf@v0.1.0/tfbridge/provider.go:86:20: undefined: tfgen.Renames

@cowwoc
Copy link

cowwoc commented Mar 16, 2023

@DAlperin Any ideas?

@commandodev
Copy link

Not sure how much help I could be here, but I would love to be able to use pulumi with Fly!

@remorses
Copy link

remorses commented Jun 1, 2023

terraform-plugin-framework has been updated so it should be possible to integrate pulumi now

@zxaos
Copy link
Contributor

zxaos commented Jun 2, 2023

Looks like this was resolved by #180 so I'm going to close this.

@zxaos zxaos closed this Jun 2, 2023
@cowwoc
Copy link

cowwoc commented Jun 5, 2023

Does anyone understand how to actually use this? Is there an out-of-the-box fly.io provider or what do end-users have to do to make this work?

@mootari
Copy link

mootari commented Jun 6, 2023

@zxaos From what I understand (which is very little) the bridge has to be implemented explicitly, so I don't think this PR can be closed just yet?

Edit: ... but it should perhaps be done in a separate repository, if I read this template repo correctly.

@remorses
Copy link

remorses commented Jun 6, 2023

Yes you can do it in a different repo, here is an example: https://github.com/checkly/pulumi-checkly

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.

6 participants