Three ways to use custom Terraform plugins
Blog post from Octopus Deploy
Matthew Casperson discusses the limitations and current methods for using custom plugins with Terraform, as there is an ongoing discussion about potentially supporting custom plugin repositories. Currently, only official Terraform plugins are automatically downloaded, while custom plugins must be manually distributed. Casperson demonstrates how to incorporate a custom plugin, specifically the Octopus plugin, into a Terraform template by outlining three methods for making these plugins accessible: saving the plugin globally in specific directories for Windows, Linux, and MacOS; placing the plugin alongside the template files in the .terraform/plugins/<arch> directory; and using the --plugin-dir option to specify a custom directory. These methods are necessary until Terraform possibly implements support for custom plugin repositories, allowing end users to deploy plugin executables themselves.