add "healthy" sdnotify policy

Add a new "healthy" sdnotify policy that instructs Podman to send the
READY message once the container has turned healthy.

Fixes: #6160
Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
This commit is contained in:
Valentin Rothberg
2023-07-25 09:45:00 +02:00
parent 2a25d1d746
commit 0cfd12786f
9 changed files with 109 additions and 14 deletions

View File

@ -2,7 +2,7 @@
####> podman create, run
####> If file is edited, make sure the changes
####> are applicable to all of those.
#### **--sdnotify**=**container** | *conmon* | *ignore*
#### **--sdnotify**=**container** | *conmon* | *healthy* | *ignore*
Determines how to use the NOTIFY_SOCKET, as passed with systemd and Type=notify.
@ -10,5 +10,7 @@ Default is **container**, which means allow the OCI runtime to proxy the socket
container to receive ready notification. Podman sets the MAINPID to conmon's pid.
The **conmon** option sets MAINPID to conmon's pid, and sends READY when the container
has started. The socket is never passed to the runtime or the container.
The **healthy** option sets MAINPID to conmon's pid, and sends READY when the container
has turned healthy; requires a healthcheck to be set. The socket is never passed to the runtime or the container.
The **ignore** option removes NOTIFY_SOCKET from the environment for itself and child processes,
for the case where some other process above Podman uses NOTIFY_SOCKET and Podman does not use it.