wait: add --ignore option

In the recent past, I met the frequent need to wait for a container to
exist that, at the same time, may get removed (e.g., system tests in [1]).

Add an `--ignore` option to podman-wait which will ignore errors when a
specified container is missing and mark its exit code as -1.  Also
remove ID fields from the WaitReport.  It is actually not used by
callers and removing it makes the code simpler and faster.

Once merged, we can go over the tests and simplify them.

[1] github.com/containers/podman/pull/16852

Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
This commit is contained in:
Valentin Rothberg
2022-12-15 14:24:33 +01:00
parent 18f1a8046b
commit f4d0496b54
6 changed files with 50 additions and 16 deletions

View File

@ -23,6 +23,10 @@ Condition to wait on (default "stopped")
Print usage statement
#### **--ignore**
Ignore errors when a specified container is missing and mark its return code as -1.
#### **--interval**, **-i**=*duration*
Time interval to wait before polling for completion. A duration string is a sequence of decimal numbers, each with optional fraction and a unit suffix, such as "300ms", "-1.5h" or "2h45m". Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". Time unit defaults to "ms".
@ -46,6 +50,9 @@ $ podman wait 860a4b23
$ podman wait mywebserver myftpserver
0
125
$ podman wait --ignore does-not-exist
-1
```
## SEE ALSO