cloudflare / terraform-provider-cloudflare

Cloudflare Terraform Provider
https://registry.terraform.io/providers/cloudflare/cloudflare
Mozilla Public License 2.0
758 stars 585 forks source link

How to handle documentation around validate in plugin framework #3077

Closed Cyb3r-Jak3 closed 7 months ago

Cyb3r-Jak3 commented 7 months ago

Confirmation

Terraform and Cloudflare provider version

Making an issue for this following https://github.com/cloudflare/terraform-provider-cloudflare/pull/2977

There is the issue with the terraform docs plugin that traces back to the terraform-plugin-framework, which prevents documentation of resources from indicating that a resource must be replaced if an attribute is changed. This leads to a poor user experience, as they might not be expecting to have to replace a resource after reading the documentation.

A possible solution is to make add more functions to the utils section to work around this issue and rely on manually requiring it to be added to the schema of a resource.

Affected resource(s)

d1_database email_routing_address r2_bucket ruleset

Expected output

There is documentation around when resources will have to be recreated due to plan modifiers

Actual output

The documentation is blank.

Steps to reproduce

Add a resource via the plugin framework with a planmodifier that requires replace, and the docs won't render like they do in sdkv2.

References

https://github.com/hashicorp/terraform-plugin-framework/issues/625

github-actions[bot] commented 7 months ago

Thank you for reporting this issue! For maintainers to dig into issues it is required that all issues include the entirety of TF_LOG=DEBUG output to be provided. The only parts that should be redacted are your user credentials in the X-Auth-Key, X-Auth-Email and Authorization HTTP headers. Details such as zone or account identifiers are not considered sensitive but can be redacted if you are very cautious. This log file provides additional context from Terraform, the provider and the Cloudflare API that helps in debugging issues. Without it, maintainers are very limited in what they can do and may hamper diagnosis efforts.

This issue has been marked with triage/needs-information and is unlikely to receive maintainer attention until the log file is provided making this a complete bug report.

github-actions[bot] commented 7 months ago

Community Note

Voting for Prioritization

Volunteering to Work on This Issue

jacobbednarz commented 7 months ago

yes, for now we just need to manually add it when we come across them or migrating schemas. i'm not going to wait for the docs plugin to address this.