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

Move to the new Terraform Plugin Framework #597

Open
Integralist opened this issue Oct 7, 2022 · 3 comments
Open

Move to the new Terraform Plugin Framework #597

Integralist opened this issue Oct 7, 2022 · 3 comments
Labels
breaking-change enhancement New feature or request

Comments

@Integralist
Copy link
Collaborator

The Fastly Terraform provider currently uses Terraform Plugin SDKv2 but we should follow its instructions for migrating to the new Terraform Plugin Framework which supersedes the SDK.

NOTE: The Framework is still in development, but HashiCorp is encouraging providers to migrate.

@Integralist Integralist added enhancement New feature or request breaking-change labels Oct 7, 2022
@Integralist
Copy link
Collaborator Author

@gdubicki
Copy link

Hey, @Integralist! Thank you for your work on this. But can you provide some ETA for it, at least an approximation?

@Integralist
Copy link
Collaborator Author

Hi @gdubicki

Unfortunately, I'm unable to provide an exact ETA.

Basically, there is a lot of work to rewrite the provider to the new framework.

The hardest part of this work is the core structure because the Fastly data model (i.e. everything is contained with a 'service') requires our provider to implement a custom 'nested resources' design which is very complex and non-standard as far as implementing a Terraform provider is concerned.

That said, I have probably 85% of the core structure developed (at least for a VCL service). I still need to develop it out for a Compute service, but then the rest of the work is developing each 'block' (which in actuality are separate 'resources' as far as the Terraform data model is concerned) within the VCL/Compute service resources.

After that, I can look at developing all the other 'resources' such as Dictionaries, and Stores (Config, KV, Secret), TLS, ACLs etc etc.

I'm hoping to get some extra hands to help with the rewrite as managing existing issues and feature requests for the current version of the provider has consumed a fair bit of my time the last few months.

I'm hoping to set aside some dedicated time to work on this next month, but again, even then we're likely talking months of work to rewrite and well as time for rewriting the test suite and implement appropriate CI flows (of which we've been making lots of improvements to in the current provider repo but will need to be replicated for the new project etc etc).

I appreciate your patience and interest in this work (I am also very keen to get back making some meaningful progress here) but "finger in the air" estimations are the best I can give at this point in time.

Hope this helps paint a bit of a picture of where we are with this at the moment.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
breaking-change enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants