Erlang Boilerplate
We recommend to use the
rebar3
toolchain to generate the basic Erlang OTP application boilerplate and start from there.rebar3 new app name="myplugin" desc="this is my first VerneMQ plugin"
===> Writing myplugin/src/myplugin_app.erl
===> Writing myplugin/src/myplugin_sup.erl
===> Writing myplugin/src/myplugin.app.src
===> Writing myplugin/rebar.config
===> Writing myplugin/.gitignore
===> Writing myplugin/LICENSE
===> Writing myplugin/README.md
Change the
rebar.config
file to include the vernemq_dev
dependency:{erl_opts, [debug_info]}.
{deps, [{vernemq_dev,
{git, "git://github.com/vernemq/vernemq_dev.git", {branch, "master"}}}
]}.
Compile the application, this will automatically fetch
vernemq_dev
.rebar3 compile
===> Verifying dependencies...
===> Fetching vmq_commons ({git,
"git://github.com/vernemq/vernemq_dev.git",
{branch,"master"}})
===> Compiling vernemq_dev
===> Compiling myplugin
Now you're ready to implement the hooks. Don't forget to add the proper
vmq_plugin_hooks
entries to your src/myplugin.app.src
file.