Boot Hooks
Boot hooks are scripts which execute pre/post to events that occur in the boot script.
Currently, that is pre/post_start
, and pre/post_stop
. These scripts are simply
shell scripts which will be sourced into the boot script during execution.
Example Usage
Given a config like the following:
use Mix.Releases.Config
environment :default do
set pre_start_hook: "rel/hooks/pre_start"
set post_start_hook: "rel/hooks/post_start"
end
release :myapp do
set version: current_version(:myapp)
end
And the two hook scripts under rel/hooks
:
# pre_start
echo "we're starting!"
# post_start
echo "we've started!"
When you build your release, and run it, you’ll see something like the following:
> _build/dev/rel/myapp/bin/myapp foreground
we're starting!
...snip...
we've started!
...snip...
You have access to anything defined in the boot script’s environment, see Shell Script API for details.