Go to file
Robert Kaussow 6e25a245d7
chore: use renovate preset config
2021-01-04 16:01:48 +01:00
.github refactoring 2020-09-21 20:49:37 +02:00
docker fix typo 2020-10-14 16:36:36 +02:00
.drone.jsonnet add dockerhub auth for ci 2020-11-28 14:11:46 +01:00
.drone.yml add dockerhub auth for ci 2020-11-28 14:11:46 +01:00
.gitignore Add testing using bats 2017-05-03 11:52:29 +03:00
LICENSE fork: initial commit 2020-02-03 15:47:49 +01:00
README.md fix pipeline dependencies 2020-10-14 16:34:44 +02:00
renovate.json chore: use renovate preset config 2021-01-04 16:01:48 +01:00
wait-for format error messages 2020-02-03 23:05:30 +01:00
wait-for.bats enable drone ci 2020-02-03 16:51:44 +01:00

README.md

wait-for

Poor-mans docker service synchronizer

Build Status Docker Hub Quay.io GitHub contributors Source: GitHub License: MIT

wait-for is a script designed to synchronize services like docker containers. It is sh and alpine compatible. It was inspired by vishnubob/wait-for-it, but the core has been rewritten at Eficode by dsuni and mrako.

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 docker 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

Examples

To check if eficode.com is available:

$ ./wait-for www.eficode.com:80 -- echo "Eficode site is up"

Eficode 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 goes to all contributors.

License

This project is licensed under the MIT License - see the LICENSE file for details.