spiegel_podman/pkg/domain/entities
Valentin Rothberg 4eff0c8cf2 pod: add exit policies
Add the notion of an "exit policy" to a pod.  This policy controls the
behaviour when the last container of pod exits.  Initially, there are
two policies:

 - "continue" : the pod continues running. This is the default policy
                when creating a pod.

 - "stop" : stop the pod when the last container exits. This is the
            default behaviour for `play kube`.

In order to implement the deferred stop of a pod, add a worker queue to
the libpod runtime.  The queue will pick up work items and in this case
helps resolve dead locks that would otherwise occur if we attempted to
stop a pod during container cleanup.

Note that the default restart policy of `play kube` is "Always".  Hence,
in order to really solve #13464, the YAML files must set a custom
restart policy; the tests use "OnFailure".

Fixes: #13464
Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2022-05-02 13:29:59 +02:00
..
reports enable gocritic linter 2022-04-26 18:12:22 +02:00
types Fix build with GO111MODULE=off 2021-04-15 14:24:39 -04:00
auto-update.go auto-update: simple rollback 2021-08-05 15:20:38 +02:00
container_ps.go bump go module to version 4 2022-01-18 12:47:07 +01:00
containers.go enable gocritic linter 2022-04-26 18:12:22 +02:00
engine.go Standardize on capatalized Cgroups 2022-01-14 12:30:20 -05:00
engine_container.go play: kube: use in-memory kubefile and remove tempfile 2022-03-24 00:57:01 -07:00
engine_image.go bump go module to version 4 2022-01-18 12:47:07 +01:00
engine_system.go Adds tunnel routes for system reset. 2020-05-11 17:03:32 -04:00
events.go bump go module to version 4 2022-01-18 12:47:07 +01:00
filters.go Fix Id->ID where possible for lint 2020-06-10 05:49:41 -04:00
generate.go Handlers for generate systemd with custom dependencies 2022-01-19 21:46:16 +05:00
healthcheck.go podmanv2 enable healthcheck run 2020-03-29 18:48:29 -05:00
images.go Revert "images --size" 2022-04-14 10:58:36 +02:00
manifest.go Refactor manifest list operations 2022-01-14 16:13:35 -07:00
network.go enable gocritic linter 2022-04-26 18:12:22 +02:00
play.go Add podman play kube --annotation 2022-03-09 17:30:01 -05:00
pods.go pod: add exit policies 2022-05-02 13:29:59 +02:00
secrets.go bump go module to version 4 2022-01-18 12:47:07 +01:00
set.go Fix Id->ID where possible for lint 2020-06-10 05:49:41 -04:00
system.go bump go module to version 4 2022-01-18 12:47:07 +01:00
types.go Update swagger to improve compatibility 2022-03-22 15:20:30 -07:00
volumes.go Add podman volume mount support 2022-02-28 14:26:22 -05:00