~bow/wf

Tool for launching processes based on the availability of multiple TCP addresses
chore: Update Makefile and dev setup
chore: Update to use Go 1.15
chore: Update Makefile with release target

refs

master
browse  log 

clone

read-only
https://git.sr.ht/~bow/wf
read/write
git@git.sr.ht:~bow/wf

You can also use your local clone with git send-email.

#wf

latest doc ci cov qual

wf waits until TCP server(s) are ready to accept connections.

#Why?

The main use case for wf is to make containerized applications that depend on external services more robust by waiting for those actual services to be ready, prior to application start. wf can wait on multiple TCP servers and is provided as a single, static binary for linux/amd64, so it can be added into the container and used as-is.

#Usage

wf is provided as a command line application.

$ wf --help

Wait until TCP server(s) are ready to accept connections

Usage:
  wf [FLAGS] ADDRESS...

Flags:
  -t, --timeout duration     set wait timeout (default 5s)
  -f, --poll-freq duration   set connection poll frequency (default 500ms)
  -q, --quiet                suppress waiting messages
  -h, --help                 help for wf
      --version              version for wf

The functionalities themselves are provided as a Go library in the wait package. Refer to the relevant GoDoc documentation for a complete documentation.

#Development

wf was developed using Go 1.15 on linux/amd64. Other versions and/or platforms may work but have not been tested.

# Clone the repository.
$ git clone https://github.com/bow/wf

# Install the development dependencies.
$ make dev

# Run the tests and/or linter.
$ make test
$ make lint

# Build the wf binary.
$ make bin

#Credits

wf was inspired by the wait-for-it.sh script by @vishnubob.