| #!/usr/bin/env bash |
| |
| # This is a helper script to launch Terraform inside the "dlv" debugger, |
| # configured to await a remote debugging connection on port 2345. You can |
| # then connect to it using the following command, or its equivalent in your |
| # debugging frontend of choice: |
| # dlv connect 127.0.0.1:2345 |
| # |
| # This tool does not install dlv. To install it, see its instructions: |
| # https://github.com/derekparker/delve/tree/master/Documentation/installation |
| # |
| # For more convenient use, you may wish to put this script in your PATH: |
| # ln -s ../src/github.com/hashicorp/terraform/scripts/debug-terraform $GOPATH/bin/debug-terraform |
| # |
| # Note that when running this script the Terraform binary is NOT in $GOPATH/bin, |
| # so any providers installed there won't be found unless Terraform searches |
| # there for some _other_ reason. |
| |
| set -eu |
| |
| echo "Launching Terraform in a headless debug session" |
| echo "Connect to it using: dlv connect 127.0.0.1:2345" |
| echo "(Terraform takes a long time to build and launch in this mode; some logs will appear below)" |
| echo "---------------------------" |
| |
| exec dlv debug github.com/hashicorp/terraform --headless --listen :2345 --log -- "$@" |