It is important to start a provider in debug mode only when you intend to debug it, as its behavior will change in minor ways from normal operation of providers. The main differences are:
Terraform will not start the provider process; it must be run manually.
The provider's constraints will no longer be checked as part of terraform init.
The provider will no longer be restarted once per walk of the Terraform graph; instead the same provider process will be reused until the command is completed.
Prerequisites:
install GoLand & open terraform-provider-itsi project
Steps:
Pass debug flag, It can be done via the Run Configuration:
Make sure plugin is compiled in debug mode (go build -gcflags="all=-N -l", GoLand takes care of this, executing via Debug button)
After launching the plugin will output a message telling you to set the TF_REATTACH_PROVIDERS environment variable:
Copy and paste this to another shell, from which you will run Terraform: