package main import ( "context" "github.com/urfave/cli/v3" ) var pauseCommand = &cli.Command{ Name: "pause", Usage: "pause suspends all processes inside the container", ArgsUsage: ` Where "" is the name for the instance of the container to be paused. `, Description: `The pause command suspends all processes in the instance of the container. Use runc list to identify instances of containers and their current status.`, // Disable comma as separator for slice flags. DisableSliceFlagSeparator: true, Action: func(_ context.Context, cmd *cli.Command) error { if err := checkArgs(cmd, 1, exactArgs); err != nil { return err } container, err := getContainer(cmd) if err != nil { return err } err = container.Pause() if err != nil { maybeLogCgroupWarning("pause", err) return err } return nil }, } var resumeCommand = &cli.Command{ Name: "resume", Usage: "resumes all processes that have been previously paused", ArgsUsage: ` Where "" is the name for the instance of the container to be resumed.`, Description: `The resume command resumes all processes in the instance of the container. Use runc list to identify instances of containers and their current status.`, // Disable comma as separator for slice flags. DisableSliceFlagSeparator: true, Action: func(_ context.Context, cmd *cli.Command) error { if err := checkArgs(cmd, 1, exactArgs); err != nil { return err } container, err := getContainer(cmd) if err != nil { return err } err = container.Resume() if err != nil { maybeLogCgroupWarning("resume", err) return err } return nil }, }