From 958759a71955860b01b17bd3bebf38f9dae1018e Mon Sep 17 00:00:00 2001 From: cdoern Date: Fri, 13 May 2022 10:52:57 -0400 Subject: podman pod clone implement podman pod clone, a command to create an exact copy of a pod while changing certain config elements current supported flags are: --name change the pod name --destroy remove the original pod --start run the new pod on creation and all infra-container related flags from podman pod create (namespaces etc) resolves #12843 Signed-off-by: cdoern --- pkg/domain/entities/pods.go | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'pkg/domain/entities/pods.go') diff --git a/pkg/domain/entities/pods.go b/pkg/domain/entities/pods.go index 9cbbe2bf1..2b6928d49 100644 --- a/pkg/domain/entities/pods.go +++ b/pkg/domain/entities/pods.go @@ -154,6 +154,16 @@ type PodLogsOptions struct { Color bool } +// PodCloneOptions contains options for cloning an existing pod +type PodCloneOptions struct { + ID string + Destroy bool + CreateOpts PodCreateOptions + InfraOptions ContainerCreateOptions + PerContainerOptions ContainerCreateOptions + Start bool +} + type ContainerCreateOptions struct { Annotation []string Attach []string @@ -290,6 +300,10 @@ type PodCreateReport struct { Id string // nolint } +type PodCloneReport struct { + Id string //nolint +} + func (p *PodCreateOptions) CPULimits() *specs.LinuxCPU { cpu := &specs.LinuxCPU{} hasLimits := false -- cgit v1.2.3-54-g00ecf