From 3c3fa6fac4d0f8e89181ea2d4e1fe0318d24b6f4 Mon Sep 17 00:00:00 2001 From: Brent Baude Date: Wed, 14 Jul 2021 16:03:55 -0500 Subject: implement init containers in podman this is the first pass at implementing init containers for podman pods. init containersare made popular by k8s as a way to run setup for pods before the pods standard containers run. unlike k8s, we support two styles of init containers: always and oneshot. always means the container stays in the pod and starts whenever a pod is started. this does not apply to pods restarting. oneshot means the container runs onetime when the pod starts and then is removed. Signed-off-by: Brent Baude --- libpod/define/container.go | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'libpod/define') diff --git a/libpod/define/container.go b/libpod/define/container.go index f3125afa9..f0aca92aa 100644 --- a/libpod/define/container.go +++ b/libpod/define/container.go @@ -26,3 +26,13 @@ var RestartPolicyMap = map[string]string{ RestartPolicyOnFailure: RestartPolicyOnFailure, RestartPolicyUnlessStopped: RestartPolicyUnlessStopped, } + +// InitContainerTypes +const ( + // AlwaysInitContainer is an init container than runs on each + // pod start (including restart) + AlwaysInitContainer = "always" + // OneShotInitContainer is a container that only runs as init once + // and is then deleted. + OneShotInitContainer = "oneshot" +) -- cgit v1.2.3-54-g00ecf