hashicorp / terraform-plugin-go

A low-level Go binding for the Terraform protocol for integrations to be built on top of.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Support/Document Debugger Processes

bflad opened this issue · comments

terraform-plugin-go version

v0.5.0

Use cases

Downstream abstractions, such as terraform-plugin-sdk/v2 and terraform-plugin-framework, make it relatively straightforward to run servers that invert the process lifecycle so they can be instrumented by debugger and testing processes. Providers written directly on terraform-plugin-go or reliant on terraform-plugin-mux essentially must reimplement those projects' logic to do the same. Given that the reattach handling is strongly correlated to low level details about go-plugin and Terraform CLI, it feels like a potential candidate for creating an implementation in this project.

Proposal

Adding DebugServe and/or Debug functionality in tf5server/tf6server, similar to downstream implementations. Document in README (until #129 is sorted).

References