hashicorp / terraform-provider-aws

The AWS Provider enables Terraform to manage AWS resources.
https://registry.terraform.io/providers/hashicorp/aws
Mozilla Public License 2.0
9.84k stars 9.19k forks source link

[Proposal]: Generation of flattener/expander (flex) functions #28890

Open breathingdust opened 1 year ago

breathingdust commented 1 year ago

Description

Contributors spend a significant amount of their time manually writing flatteners and expander functions to map AWS SDK for Go types to Terraform sdk/framework types and vice-versa. This could be generated from AWS SDK types and potentially added to skaff. This would allow the majority of this work to be generated and reduce errors in this data handling.

Ideally this could be done at any time, so updates to AWS SDK types could be handled by refreshing generation for the types used in each resource.

This would significantly reduce writing boilerplate code, improving productivity for contributors as well as reducing the onus on review time for maintainers.

References

github-actions[bot] commented 1 year ago

Community Note

Voting for Prioritization

Volunteering to Work on This Issue