Documentation ¶
Index ¶
- func GetTopic(e interface{}) string
- func NewPlatform() (stdio.Platform, error)
- func ReadRuntime(path string) (string, error)
- func ShouldKillAllOnExit(ctx context.Context, bundlePath string) bool
- func WriteRuntime(path, runtime string) error
- type Container
- func (c *Container) All() (o []process.Process)
- func (c *Container) Cgroup() interface{}
- func (c *Container) CgroupSet(cg interface{})
- func (c *Container) Checkpoint(ctx context.Context, r *task.CheckpointTaskRequest) error
- func (c *Container) CloseIO(ctx context.Context, r *task.CloseIORequest) error
- func (c *Container) Delete(ctx context.Context, r *task.DeleteRequest) (process.Process, error)
- func (c *Container) Exec(ctx context.Context, r *task.ExecProcessRequest) (process.Process, error)
- func (c *Container) ExecdProcesses() (o []process.Process)
- func (c *Container) HasPid(pid int) bool
- func (c *Container) Kill(ctx context.Context, r *task.KillRequest) error
- func (c *Container) Pause(ctx context.Context) error
- func (c *Container) Pid() int
- func (c *Container) Process(id string) (process.Process, error)
- func (c *Container) ProcessAdd(process process.Process)
- func (c *Container) ProcessRemove(id string)
- func (c *Container) ReserveProcess(id string) (bool, func())
- func (c *Container) ResizePty(ctx context.Context, r *task.ResizePtyRequest) error
- func (c *Container) Resume(ctx context.Context) error
- func (c *Container) Start(ctx context.Context, r *task.StartRequest) (process.Process, error)
- func (c *Container) Update(ctx context.Context, r *task.UpdateTaskRequest) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetTopic ¶
func GetTopic(e interface{}) string
GetTopic converts an event from an interface type to the specific event topic id
func NewPlatform ¶
NewPlatform returns a linux platform for use with I/O operations
func ReadRuntime ¶
ReadRuntime reads the runtime information from the path
func ShouldKillAllOnExit ¶
ShouldKillAllOnExit reads the bundle's OCI spec and returns true if there is an error reading the spec or if the container has a private PID namespace
func WriteRuntime ¶
WriteRuntime writes the runtime information into the path
Types ¶
type Container ¶
type Container struct { // ID of the container ID string // Bundle path Bundle string // contains filtered or unexported fields }
Container for operating on a runc container and its processes
func NewContainer ¶
func NewContainer(ctx context.Context, platform stdio.Platform, r *task.CreateTaskRequest) (*Container, error)
NewContainer returns a new runc container
func (*Container) CgroupSet ¶
func (c *Container) CgroupSet(cg interface{})
CgroupSet sets the cgroup to the container
func (*Container) Checkpoint ¶
Checkpoint the container
func (*Container) ExecdProcesses ¶
ExecdProcesses added to the container
func (*Container) ProcessAdd ¶
ProcessAdd adds a new process to the container
func (*Container) ProcessRemove ¶
ProcessRemove removes the process by id from the container
func (*Container) ReserveProcess ¶
ReserveProcess checks for the existence of an id and atomically reserves the process id if it does not already exist
Returns true if the process id was successfully reserved and a cancel func to release the reservation