mirror of
https://github.com/containers/podman.git
synced 2025-09-10 00:02:21 +08:00
libpod: allow the notify socket to be passed programatically
The notify socket can now either be specified via an environment variable or programatically (where the env is ignored). The notify mode and the socket are now also displayed in `container inspect` which comes in handy for debugging and allows for propper testing. Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
This commit is contained in:
@ -88,7 +88,13 @@ function _assert_mainpid_is_conmon() {
|
||||
export NOTIFY_SOCKET=$PODMAN_TMPDIR/ignore.sock
|
||||
_start_socat
|
||||
|
||||
run_podman 1 run --rm --sdnotify=ignore $IMAGE printenv NOTIFY_SOCKET
|
||||
run_podman create --rm --sdnotify=ignore $IMAGE printenv NOTIFY_SOCKET
|
||||
cid="$output"
|
||||
|
||||
run_podman container inspect $cid --format "{{.Config.SdNotifyMode}} {{.Config.SdNotifySocket}}"
|
||||
is "$output" "ignore $NOTIFY_SOCKET"
|
||||
|
||||
run_podman 1 start --attach $cid
|
||||
is "$output" "" "\$NOTIFY_SOCKET in container"
|
||||
|
||||
is "$(< $_SOCAT_LOG)" "" "nothing received on socket"
|
||||
@ -106,6 +112,9 @@ function _assert_mainpid_is_conmon() {
|
||||
cid="$output"
|
||||
wait_for_ready $cid
|
||||
|
||||
run_podman container inspect $cid --format "{{.Config.SdNotifyMode}} {{.Config.SdNotifySocket}}"
|
||||
is "$output" "conmon $NOTIFY_SOCKET"
|
||||
|
||||
run_podman container inspect sdnotify_conmon_c --format "{{.State.ConmonPid}}"
|
||||
mainPID="$output"
|
||||
|
||||
@ -151,6 +160,9 @@ READY=1" "sdnotify sent MAINPID and READY"
|
||||
cid="$output"
|
||||
wait_for_ready $cid
|
||||
|
||||
run_podman container inspect $cid --format "{{.Config.SdNotifyMode}} {{.Config.SdNotifySocket}}"
|
||||
is "$output" "container $NOTIFY_SOCKET"
|
||||
|
||||
run_podman logs $cid
|
||||
is "${lines[0]}" "/run/notify/notify.sock" "NOTIFY_SOCKET is passed to container"
|
||||
|
||||
|
Reference in New Issue
Block a user