Options for making changes are:
- chef-client run
- chef single recipe run
- custom shell script
A Noah watcher/agent LWRP will be provided that allows chef recipes to register the patterns to watch and the command to run when triggered, e.g.
noah_watch 'haproxy nodes' do
pattern 'some pattern'
command 'some command'
end
This LWRP will be responsible for generating its own callback route for each watch created through it. The agent will need to be configured with these callbacks, which should possibly support dynamic creation of callback routes.
Quickest to implement, likely starting place for the LWRP.
Allows possible reuse of chef recipe, possibly more overhead with setup compared to other two options.
Most flexibility in actions taken; possible issue with chef and custom script both managing contents of a file.