Woodpecker is a charm for testing networking between peers, and/or
to arbitrary host:port combinations, e.g. www.google.com:80, with or
without a 'send' string and a 'receive' string.
Status messages will either display an error with a check, or all ok.
For detailed information see the juju logs.
Example usage for woodpecker could be to deploy one unit to bare metal,
one to an lxc container - this would validate connection between the two.
Another example would be to use woodpecker to check all API endpoints
in a particular bundle deployment, e.g. openstack, bigdata, etc.
By default, port 31337 will be opened on each peer, and connectivity
validated between each peer on that port.
This can be modified to another port by providing a comma separated list
to the check_ports configuration key.
Additionally, tcp port and ip combinations can be provided to the check_list
string. A send string and receive string can also be defined to provide further
juju set config woodpecker \
This will cause woodpecker to connect to www.google.com, send "get /", and
only return true if "302" is in the response string.
check_list access the following check formats:
All labels must be unique, and all checks must be specified each time
the config value is set.
In addition to basic status messages, if a peer or remote host connection
failure is detected, the workload status of the agent which has found the
issue will be set to blocked.
This layer will set the following states:
juju deploy woodpecker
juju add-unit woodpecker -n 1 --to lxc:1
juju set woodpecker check_ports='31337,1337'
juju set woodpecker check_list='