diff --git a/website/source/docs/extend/developing-plugins.html.markdown b/website/source/docs/extend/developing-plugins.html.markdown index f79b79fdf..b282f9251 100644 --- a/website/source/docs/extend/developing-plugins.html.markdown +++ b/website/source/docs/extend/developing-plugins.html.markdown @@ -120,13 +120,17 @@ be in order for the logs to be helpful. Here are some tips for developing plugins, often answering common questions or concerns. -First, it is standard practice to name the resulting plugin application +### Naming Conventions + +It is standard practice to name the resulting plugin application in the format of `packer-TYPE-NAME`. For example, if you're building a new builder for CustomCloud, it would be standard practice to name the resulting plugin `packer-builder-custom-cloud`. This naming convention helps users identify the purpose of a plugin. -Next, while developing plugins, you can configure your Packer configuration +### Testing Plugins + +While developing plugins, you can configure your Packer configuration to point directly to the compiled plugin in order to test it. For example, building the CustomCloud plugin, I may configure packer like so: @@ -142,7 +146,9 @@ This would configure Packer to have the "custom-cloud" plugin, and execute the binary that I am building during development. This is extremely useful during development. -Additionally, it is recommended you use a tool like [goxc](https://github.com/laher/goxc) +### Distributing Plugins + +It is recommended you use a tool like [goxc](https://github.com/laher/goxc) in order to cross-compile your plugin for every platform that Packer supports, since Go applications are platform-specific. goxc will allow you to build for every platform from your own computer.