mirror of
https://github.com/thegeeklab/wait-for.git
synced 2024-11-22 04:10:40 +00:00
.chglog | ||
.github | ||
.woodpecker | ||
.dictionary | ||
.gitignore | ||
.markdownlint.yml | ||
.prettierignore | ||
Containerfile.multiarch | ||
CONTRIBUTING.md | ||
LICENSE | ||
README.md | ||
renovate.json | ||
wait-for | ||
wait-for.bats |
wait-for
Poor-mans service synchronizer
wait-for is a script designed to synchronize services like containers. It is sh and alpine compatible and was forked from eficode/wait-for.
When using this tool, you only need to pick the wait-for
file as part of your project.
Usage
$ wait-for --help
usage: wait-for host:port [-t timeout] [-- command args]
Synchronize services like containers and wait for readiness.
optional arguments:
-q | --quiet Do not output any status messages
-t WAITFOR_TIMEOUT | --timeout=timeout Timeout in seconds, zero for no timeout
-- COMMAND ARGS Execute command with args after the test finishes
Dependencies
- Installed Netcat or Bash (to use
/dev/tcp
)
Examples
To check if google.com is available:
$ ./wait-for google.com:80 -- echo "Google site is up"
Google site is up
To wait for database container to become available:
version: '2'
services:
db:
image: postgres:9.4
backend:
build: backend
command: sh -c './wait-for db:5432 -- npm start'
depends_on:
- db
Contributors
Special thanks to all contributors. If you would like to contribute, please see the instructions.
License
This project is licensed under the MIT License - see the LICENSE file for details.