MCPcopy
hub / github.com/containerd/containerd / createContainer

Method createContainer

integration/release_upgrade_linux_test.go:659–678  ·  view source on GitHub ↗

createContainer creates a container in that pod.

(name, imageRef string, wantedState criruntime.ContainerState, opts ...ContainerOpts)

Source from the content-addressed store, hash-verified

657
658// createContainer creates a container in that pod.
659func (pCtx *podTCtx) createContainer(name, imageRef string, wantedState criruntime.ContainerState, opts ...ContainerOpts) string {
660 t := pCtx.t
661
662 cfg := ContainerConfig(name, imageRef, opts...)
663 cnID, err := pCtx.rSvc.CreateContainer(pCtx.id, cfg, pCtx.cfg)
664 require.NoError(t, err)
665
666 switch wantedState {
667 case criruntime.ContainerState_CONTAINER_CREATED:
668 // no-op
669 case criruntime.ContainerState_CONTAINER_RUNNING:
670 require.NoError(t, pCtx.rSvc.StartContainer(cnID))
671 case criruntime.ContainerState_CONTAINER_EXITED:
672 require.NoError(t, pCtx.rSvc.StartContainer(cnID))
673 require.NoError(t, pCtx.rSvc.StopContainer(cnID, 0))
674 default:
675 t.Fatalf("unsupport state %s", wantedState)
676 }
677 return cnID
678}
679
680// containerDataDir returns container metadata dir maintained by CRI plugin.
681func (pCtx *podTCtx) containerDataDir(cntrID string) string {

Calls 4

ContainerConfigFunction · 0.85
CreateContainerMethod · 0.65
StartContainerMethod · 0.65
StopContainerMethod · 0.65

Tested by

no test coverage detected