Waits for a pattern to match output of a command or docker container logs.
Project description
Wait For Output
Waits for a pattern to match output of a command or docker container logs.
Features:
- Waiting for a pattern to appear in docker container logs
- Waiting for a generic command output to appear
- Finding container name by regexp pattern
- Returns result as a exit code and message
- Output of checked command/container log is passed through to the console
Installing
pip install waitforoutput
Usage with docker
--container
takes a regexp expression, or a full container name. Output from container is streamed to the console until timeout is reached, at the end
only result is displayed - the container is not killed.
If multiple containers are found the application will exit with an error.
$ waitforoutput 'Configuration complete; ready for start up' --container 'nginx_*' --timeout 5
/docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration
/docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/
/docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh
10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf
10-listen-on-ipv6-by-default.sh: info: Enabled listen on IPv6 in /etc/nginx/conf.d/default.conf
/docker-entrypoint.sh: Launching /docker-entrypoint.d/20-envsubst-on-templates.sh
/docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh
/docker-entrypoint.sh: Configuration complete; ready for start up
[2021-05-14 05:01:46.188][info]: Match found
Usage with any shell command
Command specified with --command
parameter will be launched, and the waitforoutput
will be streaming output until the --timeout
is reached.
After timeout the process will be killed.
$ waitforoutput 'Linux' --command 'uname -a'
Linux riotkit-dev 5.10.23-1-MANJARO #1 SMP PREEMPT Thu Mar 11 18:47:18 UTC 2021 x86_64 GNU/Linux
[2021-05-14 05:01:46.188][info]: Match found
Authors
Created by Riotkit anarchist tech-collective.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file waitforoutput-1.0.1.tar.gz
.
File metadata
- Download URL: waitforoutput-1.0.1.tar.gz
- Upload date:
- Size: 9.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cd94d8dccea5b0799fbe9c0b14813e6d6bb06aa2381d52821c9cf4af028249ec |
|
MD5 | 1cf25deedc117f25feba02a0c8583286 |
|
BLAKE2b-256 | a46f60c0076c5370a5e8e873424e62fed22283f3beafab5b969dfe8066246752 |
File details
Details for the file waitforoutput-1.0.1-py3-none-any.whl
.
File metadata
- Download URL: waitforoutput-1.0.1-py3-none-any.whl
- Upload date:
- Size: 9.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e83ee49fec71c64c5a3be1464b81fac44ee90dcc555486b53bd6fce993341961 |
|
MD5 | 196011eead7ad10ebe17331b31b55602 |
|
BLAKE2b-256 | 23bb107e4195b50ee84d6448e28ed1221937983c223a573cfe682a1db4bf02f6 |