spiegel_podman/docs/source/markdown
Valentin Rothberg 08b0d93ea3 kube play: exit-code propagation
Implement means for reflecting failed containers (i.e., those having
exited non-zero) to better integrate `kube play` with systemd.  The
idea is to have the main PID of `kube play` exit non-zero in a
configurable way such that systemd's restart policies can kick in.

When using the default sdnotify-notify policy, the service container
acts as the main PID to further reduce the resource footprint.  In that
case, before stopping the service container, Podman will lookup the exit
codes of all non-infra containers.  The service will then behave
according to the following three exit-code policies:

 - `none`: exit 0 and ignore containers (default)
 - `any`: exit non-zero if _any_ container did
 - `all`: exit non-zero if _all_ containers did

The upper values can be passed via a hidden `kube play
--service-exit-code-propagation` flag which can be used by tests and
later on by Quadlet.

In case Podman acts as the main PID (i.e., when at least one container
runs with an sdnotify-policy other than "ignore"), Podman will continue
to wait for the service container to exit and reflect its exit code.

Note that this commit also fixes a long-standing annoyance of the
service container exiting non-zero.  The underlying issue was that the
service container had been stopped with SIGKILL instead of SIGTERM and
hence exited non-zero.  Fixing that was a prerequisite for the exit-code
propagation to work but also improves the integration of `kube play`
with systemd and hence Quadlet with systemd.

Jira: issues.redhat.com/browse/RUN-1776
Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2023-05-25 14:46:34 +02:00
..
links Install podman-systemd.unit man page, make quadlet discoverable 2023-02-03 08:42:20 -06:00
options source code comments and docs: fix typos, language, Markdown layout 2023-05-22 07:52:16 +02:00
.gitignore Add user mode networking feature to Windows 2023-04-24 17:11:54 -05:00
podman-attach.1.md.in Clean up more language for inclusiveness 2023-01-27 09:40:27 -05:00
podman-auto-update.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-build.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-commit.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-completion.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-container-checkpoint.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-container-cleanup.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-container-clone.1.md.in fix HTMLSpan warnings 2023-05-17 07:21:14 -06:00
podman-container-diff.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-container-exists.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-container-inspect.1.md.in kube play: exit-code propagation 2023-05-25 14:46:34 +02:00
podman-container-prune.1.md Fix manpage headers 2022-09-06 09:37:13 -07:00
podman-container-restore.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-container-runlabel.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-container.1.md Remove 'you' from man pages 2022-12-07 09:29:29 -05:00
podman-cp.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-create.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-diff.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-events.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-exec.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-export.1.md Fix manpage headers 2022-09-06 09:37:13 -07:00
podman-generate-spec.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-generate-systemd.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-generate.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-healthcheck-run.1.md Fix manpage headers 2022-09-06 09:37:13 -07:00
podman-healthcheck.1.md Fix manpage headers 2022-09-06 09:37:13 -07:00
podman-history.1.md man page --format xref: tighten the autocompletion check 2023-02-14 08:11:54 -07:00
podman-image-diff.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-image-exists.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-image-inspect.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-image-mount.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-image-prune.1.md Remove 'you' from man pages 2022-12-07 09:29:29 -05:00
podman-image-scp.1.md Remove 'you' from man pages 2022-12-07 09:29:29 -05:00
podman-image-sign.1.md.in Correct markdown in docs 2023-05-18 16:44:24 -07:00
podman-image-tree.1.md Remove 'you' from man pages 2022-12-07 09:29:29 -05:00
podman-image-trust.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-image-unmount.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-image.1.md Remove 'you' from man pages 2022-12-07 09:29:29 -05:00
podman-images.1.md.in Capitalize all uid,gid and id words that are not options in docs 2023-04-08 00:41:47 -04:00
podman-import.1.md Fix manpage headers 2022-09-06 09:37:13 -07:00
podman-info.1.md podman: Add pasta to podman info 2023-05-25 00:39:52 +08:00
podman-init.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-inspect.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-kill.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-kube-apply.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-kube-down.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-kube-generate.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-kube-play.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-kube.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-load.1.md Fix manpage headers 2022-09-06 09:37:13 -07:00
podman-login.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-logout.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-logs.1.md.in Man page checker: require canonical name in SEE ALSO 2023-01-03 10:24:55 -07:00
podman-machine-info.1.md Add format to podman machine info 2023-03-15 16:15:59 -04:00
podman-machine-init.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-machine-inspect.1.md Document podman-machine-default behavior 2023-05-15 14:23:17 -04:00
podman-machine-list.1.md.in Add user mode networking feature to Windows 2023-04-24 17:11:54 -05:00
podman-machine-os-apply.1.md Document podman-machine-default behavior 2023-05-15 14:23:17 -04:00
podman-machine-os.1.md Introduce podman machine os apply 2023-02-15 14:48:12 -05:00
podman-machine-rm.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-machine-set.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-machine-ssh.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-machine-start.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-machine-stop.1.md Document podman-machine-default behavior 2023-05-15 14:23:17 -04:00
podman-machine.1.md Introduce podman machine os apply 2023-02-15 14:48:12 -05:00
podman-manifest-add.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-manifest-annotate.1.md.in Man pages: refactor common options: --annotation (manifest) 2022-10-12 08:54:04 -06:00
podman-manifest-create.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-manifest-exists.1.md source code comments and docs: fix typos, language, Markdown layout 2023-05-22 07:52:16 +02:00
podman-manifest-inspect.1.md.in Add --insecure,--tls-verify,--verbose flags to podman manifest inspect 2022-11-03 08:00:15 -04:00
podman-manifest-push.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-manifest-remove.1.md Fix manpage headers 2022-09-06 09:37:13 -07:00
podman-manifest-rm.1.md Add links to all SEE ALSO sections 2021-11-10 09:29:21 -05:00
podman-manifest.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-mount.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-network-connect.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-network-create.1.md source code comments and docs: fix typos, language, Markdown layout 2023-05-22 07:52:16 +02:00
podman-network-disconnect.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-network-exists.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-network-inspect.1.md man page --format xref: tighten the autocompletion check 2023-02-14 08:11:54 -07:00
podman-network-ls.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-network-prune.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-network-reload.1.md.in Remove 'you' from man pages 2022-12-07 09:29:29 -05:00
podman-network-rm.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-network-update.1.md network: add support for podman network update and --network-dns-server 2023-01-12 20:19:14 +05:30
podman-network.1.md source code comments and docs: fix typos, language, Markdown layout 2023-05-22 07:52:16 +02:00
podman-pause.1.md.in Remove 'you' from man pages 2022-12-07 09:29:29 -05:00
podman-pod-clone.1.md.in fix HTMLSpan warnings 2023-05-17 07:21:14 -06:00
podman-pod-create.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-pod-exists.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-pod-inspect.1.md.in Add --restart flag to pod create 2023-05-02 10:29:58 -04:00
podman-pod-kill.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-pod-logs.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-pod-pause.1.md Fix manpage headers 2022-09-06 09:37:13 -07:00
podman-pod-prune.1.md Fix manpage headers 2022-09-06 09:37:13 -07:00
podman-pod-ps.1.md.in Add {{.Restarts}} to podman pod ps 2023-05-02 10:30:07 -04:00
podman-pod-restart.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-pod-rm.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-pod-start.1.md.in Remove 'you' from man pages 2022-12-07 09:29:29 -05:00
podman-pod-stats.1.md.in Remove 'you' from man pages 2022-12-07 09:29:29 -05:00
podman-pod-stop.1.md.in Remove 'you' from man pages 2022-12-07 09:29:29 -05:00
podman-pod-top.1.md.in Remove 'you' from man pages 2022-12-07 09:29:29 -05:00
podman-pod-unpause.1.md Fix manpage headers 2022-09-06 09:37:13 -07:00
podman-pod.1.md Fix manpage headers 2022-09-06 09:37:13 -07:00
podman-port.1.md.in Remove 'you' from man pages 2022-12-07 09:29:29 -05:00
podman-ps.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-pull.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-push.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-remote.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-rename.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-restart.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-rm.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-rmi.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-run.1.md.in [CI:DOCS] Improve security in mysql examples 2023-05-17 19:44:05 +02:00
podman-save.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-search.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-secret-create.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-secret-exists.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-secret-inspect.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-secret-ls.1.md.in Add format to podman secret ls 2023-03-15 16:15:59 -04:00
podman-secret-rm.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-secret.1.md Add support for secret exists 2023-04-03 15:33:50 +03:00
podman-start.1.md.in Remove 'you' from man pages 2022-12-07 09:29:29 -05:00
podman-stats.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-stop.1.md.in Remove 'you' from man pages 2022-12-07 09:29:29 -05:00
podman-system-connection-add.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-system-connection-default.1.md Fix manpage headers 2022-09-06 09:37:13 -07:00
podman-system-connection-list.1.md man page --format xref: tighten the autocompletion check 2023-02-14 08:11:54 -07:00
podman-system-connection-remove.1.md Fix manpage headers 2022-09-06 09:37:13 -07:00
podman-system-connection-rename.1.md Fix manpage headers 2022-09-06 09:37:13 -07:00
podman-system-connection.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-system-df.1.md Add format to podman system df 2023-03-15 16:15:59 -04:00
podman-system-migrate.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-system-prune.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-system-renumber.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-system-reset.1.md system reset: show graphRoot/runRoot before removal 2023-04-26 16:02:59 +02:00
podman-system-service.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-system.1.md man page xref: validate displayed man page names 2023-02-13 07:54:57 -07:00
podman-systemd.unit.5.md Quadlet - add support for PodmanArgs to all groups 2023-05-24 10:05:02 +03:00
podman-tag.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-top.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-unmount.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-unpause.1.md.in Remove 'you' from man pages 2022-12-07 09:29:29 -05:00
podman-unshare.1.md [CI:DOCS] Add CNI deprecation notices to documentation 2023-01-19 08:09:32 -06:00
podman-untag.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-update.1.md.in Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-version.1.md [CI:DOCS] man pages: document some --format options 2022-09-15 09:59:32 -06:00
podman-volume-create.1.md source code comments and docs: fix typos, language, Markdown layout 2023-05-22 07:52:16 +02:00
podman-volume-exists.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-volume-export.1.md Fix manpage headers 2022-09-06 09:37:13 -07:00
podman-volume-import.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-volume-inspect.1.md Add format to podman volume inspect 2023-03-15 16:15:59 -04:00
podman-volume-ls.1.md.in Add format to podman volume ls 2023-03-15 16:15:59 -04:00
podman-volume-mount.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-volume-prune.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-volume-reload.1.md Fix manpage headers 2022-09-06 09:37:13 -07:00
podman-volume-rm.1.md Remove future tense from man pages 2023-05-16 15:10:33 -04:00
podman-volume-unmount.1.md Fix manpage headers 2022-09-06 09:37:13 -07:00
podman-volume.1.md Fix manpage headers 2022-09-06 09:37:13 -07:00
podman-wait.1.md.in wait: look for exit code in stopped state 2023-05-22 14:53:19 +02:00
podman.1.md podman: Added find slirp4netns binary file from helper_binaries_dir 2023-05-20 03:17:22 +08:00