entities

package
v4.9.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 2, 2024 License: Apache-2.0 Imports: 37 Imported by: 19

Documentation

Index

Constants

View Source
const (
	ABIMode    = EngineMode("abi")
	TunnelMode = EngineMode("tunnel")
)
View Source
const (
	LocalFarmImageBuilderName   = "(local)"
	LocalFarmImageBuilderDriver = "local"
)
View Source
const (
	InfraMode  = ContainerMode("infra")
	CloneMode  = ContainerMode("clone")
	UpdateMode = ContainerMode("update")
	CreateMode = ContainerMode("create")
)

Variables

View Source
var (
	TypePVC     = "PersistentVolumeClaim"
	TypePod     = "Pod"
	TypeService = "Service"
)

Functions

func ConvertToLibpodEvent

func ConvertToLibpodEvent(e Event) *libpodEvents.Event

ConvertToLibpodEvent converts an entities event to a libpod one.

func FilterIDFn

func FilterIDFn(id []string) func(Identifier) bool

func FilterIDOrNameFn

func FilterIDOrNameFn(id []string) func(IDOrNamed) bool

func FilterNameFn

func FilterNameFn(name []string) func(Named) bool

func FilterNamesFn

func FilterNamesFn(name []string) func(Names) bool

func ValidatePodStatsOptions

func ValidatePodStatsOptions(args []string, options *PodStatsOptions) error

ValidatePodStatsOptions validates the specified slice and options. Allows for sharing code in the front- and the back-end.

Types

type ApplyOptions added in v4.4.0

type ApplyOptions struct {
	// Kubeconfig - path to the cluster's kubeconfig file.
	Kubeconfig string
	// Namespace - namespace to deploy the workload in on the cluster.
	Namespace string
	// CACertFile - the path to the CA cert file for the Kubernetes cluster.
	CACertFile string
	// File - the path to the Kubernetes yaml to deploy.
	File string
	// Service - creates a service for the container being deployed.
	Service bool
}

ApplyOptions controls the deployment of kube yaml files to a Kubernetes Cluster

type AttachOptions

type AttachOptions struct {
	DetachKeys string
	Latest     bool
	NoStdin    bool
	SigProxy   bool
	Stdin      *os.File
	Stdout     *os.File
	Stderr     *os.File
}

AttachOptions describes the cli and other values needed to perform an attach

type AuthConfig

type AuthConfig struct {
	types.AuthConfig
}

swagger:model AuthConfig

type AuthReport

type AuthReport struct {
	IdentityToken string
	Status        string
}

AuthReport describes the response for authentication check

type AutoUpdateOptions

type AutoUpdateOptions struct {
	// Authfile to use when contacting registries.
	Authfile string
	// Only check for but do not perform any update.  If an update is
	// pending, it will be indicated in the Updated field of
	// AutoUpdateReport.
	DryRun bool
	// If restarting the service with the new image failed, restart it
	// another time with the previous image.
	Rollback bool
	// Allow contacting registries over HTTP, or HTTPS with failed TLS
	// verification. Note that this does not affect other TLS connections.
	InsecureSkipTLSVerify types.OptionalBool
}

AutoUpdateOptions are the options for running auto-update.

type AutoUpdateReport

type AutoUpdateReport struct {
	// ID of the container *before* an update.
	ContainerID string
	// Name of the container *before* an update.
	ContainerName string
	// Name of the image.
	ImageName string
	// The configured auto-update policy.
	Policy string
	// SystemdUnit running a container configured for auto updates.
	SystemdUnit string
	// Indicates the update status: true, false, failed, pending (see
	// DryRun).
	Updated string
}

AutoUpdateReport contains the results from running auto-update.

type BoolReport

type BoolReport struct {
	Value bool
}

type BuildOptions

type BuildOptions struct {
	buildahDefine.BuildOptions
	ContainerFiles []string
	FarmBuildOptions
	// Files that need to be closed after the build
	// so need to pass this to the main build functions
	LogFileToClose *os.File
	TmpDirToClose  string
}

BuildOptions describe the options for building container images.

type BuildReport

type BuildReport struct {
	// ID of the image.
	ID string
	// Format to save the image in
	SaveFormat string
}

BuildReport is the image-build report.

type CheckpointOptions

type CheckpointOptions struct {
	All            bool
	Export         string
	CreateImage    string
	IgnoreRootFS   bool
	IgnoreVolumes  bool
	Keep           bool
	Latest         bool
	LeaveRunning   bool
	TCPEstablished bool
	PreCheckPoint  bool
	WithPrevious   bool
	Compression    archive.Compression
	PrintStats     bool
	FileLocks      bool
}

type CheckpointReport

type CheckpointReport struct {
	Err             error                                   `json:"-"`
	Id              string                                  `json:"Id"` //nolint:revive,stylecheck
	RawInput        string                                  `json:"-"`
	RuntimeDuration int64                                   `json:"runtime_checkpoint_duration"`
	CRIUStatistics  *define.CRIUCheckpointRestoreStatistics `json:"criu_statistics"`
}

type CommitOptions

type CommitOptions struct {
	Author         string
	Changes        []string
	Format         string
	ImageName      string
	IncludeVolumes bool
	Message        string
	Pause          bool
	Quiet          bool
	Squash         bool
	Writer         io.Writer
}

type CommitReport

type CommitReport struct {
	Id string //nolint:revive,stylecheck
}

type ComponentVersion

type ComponentVersion struct {
	types.Version
}

type Container

type Container struct {
	IDOrNamed
}

type ContainerCleanupOptions

type ContainerCleanupOptions struct {
	All         bool
	Exec        string
	Latest      bool
	Remove      bool
	RemoveImage bool
}

ContainerCleanupOptions are the CLI values for the cleanup command

type ContainerCleanupReport

type ContainerCleanupReport struct {
	CleanErr error
	Id       string //nolint:revive,stylecheck
	RawInput string
	RmErr    error
	RmiErr   error
}

ContainerCleanupReport describes the response from a container cleanup

type ContainerCloneOptions added in v4.1.0

type ContainerCloneOptions struct {
	ID           string
	Destroy      bool
	CreateOpts   ContainerCreateOptions
	Image        string
	RawImageName string
	Run          bool
	Force        bool
}

ContainerCloneOptions contains options for cloning an existing continer

type ContainerCopyFunc

type ContainerCopyFunc func() error

type ContainerCpOptions

type ContainerCpOptions struct {
	// Pause the container while copying.
	Pause bool
	// Extract the tarfile into the destination directory.
	Extract bool
	// OverwriteDirNonDir allows for overwriting a directory with a
	// non-directory and vice versa.
	OverwriteDirNonDir bool
}

ContainerCpOptions describes input options for cp.

type ContainerCreateOptions

type ContainerCreateOptions struct {
	Annotation         []string
	Attach             []string
	Authfile           string
	BlkIOWeight        string
	BlkIOWeightDevice  []string
	CapAdd             []string
	CapDrop            []string
	CgroupNS           string
	CgroupsMode        string
	CgroupParent       string `json:"cgroup_parent,omitempty"`
	CIDFile            string
	ConmonPIDFile      string `json:"container_conmon_pidfile,omitempty"`
	CPUPeriod          uint64
	CPUQuota           int64
	CPURTPeriod        uint64
	CPURTRuntime       int64
	CPUShares          uint64
	CPUS               float64 `json:"cpus,omitempty"`
	CPUSetCPUs         string  `json:"cpuset_cpus,omitempty"`
	CPUSetMems         string
	Devices            []string `json:"devices,omitempty"`
	DeviceCgroupRule   []string
	DeviceReadBPs      []string `json:"device_read_bps,omitempty"`
	DeviceReadIOPs     []string
	DeviceWriteBPs     []string
	DeviceWriteIOPs    []string
	Entrypoint         *string `json:"container_command,omitempty"`
	Env                []string
	EnvHost            bool
	EnvFile            []string
	Expose             []string
	GIDMap             []string
	GroupAdd           []string
	HealthCmd          string
	HealthInterval     string
	HealthRetries      uint
	HealthStartPeriod  string
	HealthTimeout      string
	HealthOnFailure    string
	Hostname           string `json:"hostname,omitempty"`
	HTTPProxy          bool
	HostUsers          []string
	ImageVolume        string
	Init               bool
	InitContainerType  string
	InitPath           string
	IntelRdtClosID     string
	Interactive        bool
	IPC                string
	Label              []string
	LabelFile          []string
	LogDriver          string
	LogOptions         []string
	Memory             string
	MemoryReservation  string
	MemorySwap         string
	MemorySwappiness   int64
	Name               string `json:"container_name"`
	NoHealthCheck      bool
	OOMKillDisable     bool
	OOMScoreAdj        *int
	Arch               string
	OS                 string
	Variant            string
	PID                string `json:"pid,omitempty"`
	PIDsLimit          *int64
	Platform           string
	Pod                string
	PodIDFile          string
	Personality        string
	PreserveFDs        uint
	Privileged         bool
	PublishAll         bool
	Pull               string
	Quiet              bool
	ReadOnly           bool
	ReadWriteTmpFS     bool
	Restart            string
	Replace            bool
	Requires           []string
	Rm                 bool
	RootFS             bool
	Secrets            []string
	SecurityOpt        []string `json:"security_opt,omitempty"`
	SdNotifyMode       string
	ShmSize            string
	ShmSizeSystemd     string
	SignaturePolicy    string
	StartupHCCmd       string
	StartupHCInterval  string
	StartupHCRetries   uint
	StartupHCSuccesses uint
	StartupHCTimeout   string
	StopSignal         string
	StopTimeout        uint
	StorageOpts        []string
	SubGIDName         string
	SubUIDName         string
	Sysctl             []string `json:"sysctl,omitempty"`
	Systemd            string
	Timeout            uint
	TLSVerify          commonFlag.OptionalBool
	TmpFS              []string
	TTY                bool
	Timezone           string
	Umask              string
	EnvMerge           []string
	UnsetEnv           []string
	UnsetEnvAll        bool
	UIDMap             []string
	Ulimit             []string
	User               string
	UserNS             string `json:"-"`
	UTS                string
	Mount              []string
	Volume             []string `json:"volume,omitempty"`
	VolumesFrom        []string `json:"volumes_from,omitempty"`
	Workdir            string
	SeccompPolicy      string
	PidFile            string
	ChrootDirs         []string
	IsInfra            bool
	IsClone            bool
	DecryptionKeys     []string
	Net                *NetOptions `json:"net,omitempty"`

	CgroupConf []string

	GroupEntry  string
	PasswdEntry string
}

func NewInfraContainerCreateOptions

func NewInfraContainerCreateOptions() ContainerCreateOptions

type ContainerCreateReport

type ContainerCreateReport struct {
	Id string //nolint:revive,stylecheck
}

type ContainerCreateResponse

type ContainerCreateResponse struct {
	// ID of the container created
	// required: true
	ID string `json:"Id"`
	// Warnings during container creation
	// required: true
	Warnings []string `json:"Warnings"`
}

ContainerCreateResponse is the response struct for creating a container

type ContainerEngine

type ContainerEngine interface {
	AutoUpdate(ctx context.Context, options AutoUpdateOptions) ([]*AutoUpdateReport, []error)
	Config(ctx context.Context) (*config.Config, error)
	ContainerAttach(ctx context.Context, nameOrID string, options AttachOptions) error
	ContainerCheckpoint(ctx context.Context, namesOrIds []string, options CheckpointOptions) ([]*CheckpointReport, error)
	ContainerCleanup(ctx context.Context, namesOrIds []string, options ContainerCleanupOptions) ([]*ContainerCleanupReport, error)
	ContainerClone(ctx context.Context, ctrClone ContainerCloneOptions) (*ContainerCreateReport, error)
	ContainerCommit(ctx context.Context, nameOrID string, options CommitOptions) (*CommitReport, error)
	ContainerCopyFromArchive(ctx context.Context, nameOrID, path string, reader io.Reader, options CopyOptions) (ContainerCopyFunc, error)
	ContainerCopyToArchive(ctx context.Context, nameOrID string, path string, writer io.Writer) (ContainerCopyFunc, error)
	ContainerCreate(ctx context.Context, s *specgen.SpecGenerator) (*ContainerCreateReport, error)
	ContainerExec(ctx context.Context, nameOrID string, options ExecOptions, streams define.AttachStreams) (int, error)
	ContainerExecDetached(ctx context.Context, nameOrID string, options ExecOptions) (string, error)
	ContainerExists(ctx context.Context, nameOrID string, options ContainerExistsOptions) (*BoolReport, error)
	ContainerExport(ctx context.Context, nameOrID string, options ContainerExportOptions) error
	ContainerInit(ctx context.Context, namesOrIds []string, options ContainerInitOptions) ([]*ContainerInitReport, error)
	ContainerInspect(ctx context.Context, namesOrIds []string, options InspectOptions) ([]*ContainerInspectReport, []error, error)
	ContainerKill(ctx context.Context, namesOrIds []string, options KillOptions) ([]*KillReport, error)
	ContainerList(ctx context.Context, options ContainerListOptions) ([]ListContainer, error)
	ContainerListExternal(ctx context.Context) ([]ListContainer, error)
	ContainerLogs(ctx context.Context, containers []string, options ContainerLogsOptions) error
	ContainerMount(ctx context.Context, nameOrIDs []string, options ContainerMountOptions) ([]*ContainerMountReport, error)
	ContainerPause(ctx context.Context, namesOrIds []string, options PauseUnPauseOptions) ([]*PauseUnpauseReport, error)
	ContainerPort(ctx context.Context, nameOrID string, options ContainerPortOptions) ([]*ContainerPortReport, error)
	ContainerPrune(ctx context.Context, options ContainerPruneOptions) ([]*reports.PruneReport, error)
	ContainerRename(ctr context.Context, nameOrID string, options ContainerRenameOptions) error
	ContainerRestart(ctx context.Context, namesOrIds []string, options RestartOptions) ([]*RestartReport, error)
	ContainerRestore(ctx context.Context, namesOrIds []string, options RestoreOptions) ([]*RestoreReport, error)
	ContainerRm(ctx context.Context, namesOrIds []string, options RmOptions) ([]*reports.RmReport, error)
	ContainerRun(ctx context.Context, opts ContainerRunOptions) (*ContainerRunReport, error)
	ContainerRunlabel(ctx context.Context, label string, image string, args []string, opts ContainerRunlabelOptions) error
	ContainerStart(ctx context.Context, namesOrIds []string, options ContainerStartOptions) ([]*ContainerStartReport, error)
	ContainerStat(ctx context.Context, nameOrDir string, path string) (*ContainerStatReport, error)
	ContainerStats(ctx context.Context, namesOrIds []string, options ContainerStatsOptions) (chan ContainerStatsReport, error)
	ContainerStop(ctx context.Context, namesOrIds []string, options StopOptions) ([]*StopReport, error)
	ContainerTop(ctx context.Context, options TopOptions) (*StringSliceReport, error)
	ContainerUnmount(ctx context.Context, nameOrIDs []string, options ContainerUnmountOptions) ([]*ContainerUnmountReport, error)
	ContainerUnpause(ctx context.Context, namesOrIds []string, options PauseUnPauseOptions) ([]*PauseUnpauseReport, error)
	ContainerUpdate(ctx context.Context, options *ContainerUpdateOptions) (string, error)
	ContainerWait(ctx context.Context, namesOrIds []string, options WaitOptions) ([]WaitReport, error)
	Diff(ctx context.Context, namesOrIds []string, options DiffOptions) (*DiffReport, error)
	Events(ctx context.Context, opts EventsOptions) error
	GenerateSpec(ctx context.Context, opts *GenerateSpecOptions) (*GenerateSpecReport, error)
	GenerateSystemd(ctx context.Context, nameOrID string, opts GenerateSystemdOptions) (*GenerateSystemdReport, error)
	GenerateKube(ctx context.Context, nameOrIDs []string, opts GenerateKubeOptions) (*GenerateKubeReport, error)
	SystemPrune(ctx context.Context, options SystemPruneOptions) (*SystemPruneReport, error)
	HealthCheckRun(ctx context.Context, nameOrID string, options HealthCheckOptions) (*define.HealthCheckResults, error)
	Info(ctx context.Context) (*define.Info, error)
	KubeApply(ctx context.Context, body io.Reader, opts ApplyOptions) error
	Locks(ctx context.Context) (*LocksReport, error)
	Migrate(ctx context.Context, options SystemMigrateOptions) error
	NetworkConnect(ctx context.Context, networkname string, options NetworkConnectOptions) error
	NetworkCreate(ctx context.Context, network types.Network, createOptions *types.NetworkCreateOptions) (*types.Network, error)
	NetworkUpdate(ctx context.Context, networkname string, options NetworkUpdateOptions) error
	NetworkDisconnect(ctx context.Context, networkname string, options NetworkDisconnectOptions) error
	NetworkExists(ctx context.Context, networkname string) (*BoolReport, error)
	NetworkInspect(ctx context.Context, namesOrIds []string, options InspectOptions) ([]types.Network, []error, error)
	NetworkList(ctx context.Context, options NetworkListOptions) ([]types.Network, error)
	NetworkPrune(ctx context.Context, options NetworkPruneOptions) ([]*NetworkPruneReport, error)
	NetworkReload(ctx context.Context, names []string, options NetworkReloadOptions) ([]*NetworkReloadReport, error)
	NetworkRm(ctx context.Context, namesOrIds []string, options NetworkRmOptions) ([]*NetworkRmReport, error)
	PlayKube(ctx context.Context, body io.Reader, opts PlayKubeOptions) (*PlayKubeReport, error)
	PlayKubeDown(ctx context.Context, body io.Reader, opts PlayKubeDownOptions) (*PlayKubeReport, error)
	PodCreate(ctx context.Context, specg PodSpec) (*PodCreateReport, error)
	PodClone(ctx context.Context, podClone PodCloneOptions) (*PodCloneReport, error)
	PodExists(ctx context.Context, nameOrID string) (*BoolReport, error)
	PodInspect(ctx context.Context, namesOrID []string, options InspectOptions) ([]*PodInspectReport, []error, error)
	PodKill(ctx context.Context, namesOrIds []string, options PodKillOptions) ([]*PodKillReport, error)
	PodLogs(ctx context.Context, pod string, options PodLogsOptions) error
	PodPause(ctx context.Context, namesOrIds []string, options PodPauseOptions) ([]*PodPauseReport, error)
	PodPrune(ctx context.Context, options PodPruneOptions) ([]*PodPruneReport, error)
	PodPs(ctx context.Context, options PodPSOptions) ([]*ListPodsReport, error)
	PodRestart(ctx context.Context, namesOrIds []string, options PodRestartOptions) ([]*PodRestartReport, error)
	PodRm(ctx context.Context, namesOrIds []string, options PodRmOptions) ([]*PodRmReport, error)
	PodStart(ctx context.Context, namesOrIds []string, options PodStartOptions) ([]*PodStartReport, error)
	PodStats(ctx context.Context, namesOrIds []string, options PodStatsOptions) ([]*PodStatsReport, error)
	PodStop(ctx context.Context, namesOrIds []string, options PodStopOptions) ([]*PodStopReport, error)
	PodTop(ctx context.Context, options PodTopOptions) (*StringSliceReport, error)
	PodUnpause(ctx context.Context, namesOrIds []string, options PodunpauseOptions) ([]*PodUnpauseReport, error)
	Renumber(ctx context.Context) error
	Reset(ctx context.Context) error
	SetupRootless(ctx context.Context, noMoveProcess bool) error
	SecretCreate(ctx context.Context, name string, reader io.Reader, options SecretCreateOptions) (*SecretCreateReport, error)
	SecretInspect(ctx context.Context, nameOrIDs []string, options SecretInspectOptions) ([]*SecretInfoReport, []error, error)
	SecretList(ctx context.Context, opts SecretListRequest) ([]*SecretInfoReport, error)
	SecretRm(ctx context.Context, nameOrID []string, opts SecretRmOptions) ([]*SecretRmReport, error)
	SecretExists(ctx context.Context, nameOrID string) (*BoolReport, error)
	Shutdown(ctx context.Context)
	SystemDf(ctx context.Context, options SystemDfOptions) (*SystemDfReport, error)
	Unshare(ctx context.Context, args []string, options SystemUnshareOptions) error
	Version(ctx context.Context) (*SystemVersionReport, error)
	VolumeCreate(ctx context.Context, opts VolumeCreateOptions) (*IDOrNameResponse, error)
	VolumeExists(ctx context.Context, namesOrID string) (*BoolReport, error)
	VolumeMounted(ctx context.Context, namesOrID string) (*BoolReport, error)
	VolumeInspect(ctx context.Context, namesOrIds []string, opts InspectOptions) ([]*VolumeInspectReport, []error, error)
	VolumeList(ctx context.Context, opts VolumeListOptions) ([]*VolumeListReport, error)
	VolumeMount(ctx context.Context, namesOrIds []string) ([]*VolumeMountReport, error)
	VolumePrune(ctx context.Context, options VolumePruneOptions) ([]*reports.PruneReport, error)
	VolumeRm(ctx context.Context, namesOrIds []string, opts VolumeRmOptions) ([]*VolumeRmReport, error)
	VolumeUnmount(ctx context.Context, namesOrIds []string) ([]*VolumeUnmountReport, error)
	VolumeReload(ctx context.Context) (*VolumeReloadReport, error)
}

type ContainerExistsOptions

type ContainerExistsOptions struct {
	External bool
}

ContainerExistsOptions describes the cli values to check if a container exists

type ContainerExportOptions

type ContainerExportOptions struct {
	Output io.Writer
}

type ContainerFilter

type ContainerFilter func(Container) bool

func CompileContainerFilters

func CompileContainerFilters(filters url.Values) ContainerFilter

type ContainerInitOptions

type ContainerInitOptions struct {
	All    bool
	Latest bool
}

ContainerInitOptions describes input options for the container init cli

type ContainerInitReport

type ContainerInitReport struct {
	Err      error
	Id       string //nolint:revive,stylecheck
	RawInput string
}

ContainerInitReport describes the results of a container init

type ContainerInspectReport

type ContainerInspectReport struct {
	*define.InspectContainerData
}

type ContainerListOptions

type ContainerListOptions struct {
	All       bool
	Filters   map[string][]string
	Format    string
	Last      int
	Latest    bool
	Namespace bool
	Pod       bool
	Quiet     bool
	Size      bool
	External  bool
	Sort      string
	Sync      bool
	Watch     uint
}

ContainerListOptions describes the CLI options for listing containers

type ContainerLogsOptions

type ContainerLogsOptions struct {
	// Show extra details provided to the logs.
	Details bool
	// Follow the log output.
	Follow bool
	// Display logs for the latest container only. Ignored on the remote client.
	Latest bool
	// Show container names in the output.
	Names bool
	// Show logs since this timestamp.
	Since time.Time
	// Show logs until this timestamp.
	Until time.Time
	// Number of lines to display at the end of the output.
	Tail int64
	// Show timestamps in the logs.
	Timestamps bool
	// Show different colors in the logs.
	Colors bool
	// Write the stdout to this Writer.
	StdoutWriter io.Writer
	// Write the stderr to this Writer.
	StderrWriter io.Writer
}

ContainerLogsOptions describes the options to extract container logs.

func PodLogsOptionsToContainerLogsOptions

func PodLogsOptionsToContainerLogsOptions(options PodLogsOptions) ContainerLogsOptions

PodLogsOptionsToContainerLogsOptions converts PodLogOptions to ContainerLogOptions

type ContainerMode added in v4.3.0

type ContainerMode string

type ContainerMountOptions

type ContainerMountOptions struct {
	All        bool
	Format     string
	Latest     bool
	NoTruncate bool
}

ContainerMountOptions describes the input values for mounting containers in the CLI

type ContainerMountReport

type ContainerMountReport struct {
	Err  error
	Id   string //nolint:revive,stylecheck
	Name string
	Path string
}

ContainerMountReport describes the response from container mount

type ContainerPortOptions

type ContainerPortOptions struct {
	All    bool
	Latest bool
}

ContainerPortOptions describes the options to obtain port information on containers

type ContainerPortReport

type ContainerPortReport struct {
	Id    string //nolint:revive,stylecheck
	Ports []nettypes.PortMapping
}

ContainerPortReport describes the output needed for the CLI to output ports

type ContainerPruneOptions

type ContainerPruneOptions struct {
	Filters url.Values `json:"filters" schema:"filters"`
}

ContainerPruneOptions describes the options needed to prune a container from the CLI

type ContainerRenameOptions

type ContainerRenameOptions struct {
	// NewName is the new name that will be given to the container.
	NewName string
}

ContainerRenameOptions describes input options for renaming a container.

type ContainerRunOptions

type ContainerRunOptions struct {
	CIDFile      string
	Detach       bool
	DetachKeys   string
	ErrorStream  *os.File
	InputStream  *os.File
	OutputStream *os.File
	PreserveFDs  uint
	Rm           bool
	SigProxy     bool
	Spec         *specgen.SpecGenerator
	Passwd       bool
}

ContainerRunOptions describes the options needed to run a container from the CLI

type ContainerRunReport

type ContainerRunReport struct {
	ExitCode int
	Id       string //nolint:revive,stylecheck
}

ContainerRunReport describes the results of running a container

type ContainerRunlabelOptions

type ContainerRunlabelOptions struct {
	// Authfile - path to an authentication file.
	Authfile string
	// CertDir - path to a directory containing TLS certifications and
	// keys.
	CertDir string
	// Credentials - `user:password` to use when pulling an image.
	Credentials string
	// Display - do not execute but print the command.
	Display bool
	// Replace - replace an existing container with a new one from the
	// image.
	Replace bool
	// Name - use this name when executing the runlabel container.
	Name string
	// Optional1 - fist optional parameter for install.
	Optional1 string
	// Optional2 - second optional parameter for install.
	Optional2 string
	// Optional3 - third optional parameter for install.
	Optional3 string
	// Pull - pull the specified image if it's not in the local storage.
	Pull bool
	// Quiet - suppress output when pulling images.
	Quiet bool
	// SignaturePolicy - path to a signature-policy file.
	SignaturePolicy string
	// SkipTLSVerify - skip HTTPS and certificate verifications when
	// contacting registries.
	SkipTLSVerify types.OptionalBool
}

ContainerRunlabelOptions are the options to execute container-runlabel.

type ContainerRunlabelReport

type ContainerRunlabelReport struct{}

ContainerRunlabelReport contains the results from executing container-runlabel.

type ContainerStartOptions

type ContainerStartOptions struct {
	Filters     map[string][]string
	All         bool
	Attach      bool
	DetachKeys  string
	Interactive bool
	Latest      bool
	SigProxy    bool
	Stdout      *os.File
	Stderr      *os.File
	Stdin       *os.File
}

ContainerStartOptions describes the val from the CLI needed to start a container

type ContainerStartReport

type ContainerStartReport struct {
	Id       string //nolint:revive,stylecheck
	RawInput string
	Err      error
	ExitCode int
}

ContainerStartReport describes the response from starting containers from the cli

type ContainerStatReport

type ContainerStatReport struct {
	define.FileInfo
}

type ContainerStatsOptions

type ContainerStatsOptions struct {
	// Get all containers stats
	All bool
	// Operate on the latest known container.  Only supported for local
	// clients.
	Latest bool
	// Stream stats.
	Stream bool
	// Interval in seconds
	Interval int
}

ContainerStatsOptions describes input options for getting stats on containers

type ContainerStatsReport

type ContainerStatsReport struct {
	// Error from reading stats.
	Error error
	// Results, set when there is no error.
	Stats []define.ContainerStats
}

ContainerStatsReport is used for streaming container stats.

type ContainerUnmountOptions

type ContainerUnmountOptions struct {
	All    bool
	Force  bool
	Latest bool
}

ContainerUnmountOptions are the options from the cli for unmounting

type ContainerUnmountReport

type ContainerUnmountReport struct {
	Err error
	Id  string //nolint:revive,stylecheck
}

ContainerUnmountReport describes the response from umounting a container

type ContainerUpdateOptions added in v4.3.0

type ContainerUpdateOptions struct {
	NameOrID string
	Specgen  *specgen.SpecGenerator
}

ContainerUpdateOptions containers options for updating an existing containers cgroup configuration

type CopyOptions

type CopyOptions struct {
	// If used with ContainerCopyFromArchive and set to true
	// it will change ownership of files from the source tar archive
	// to the primary uid/gid of the destination container.
	Chown bool
	// Map to translate path names.
	Rename map[string]string
	// NoOverwriteDirNonDir when true prevents an existing directory or file from being overwritten
	// by the other type
	NoOverwriteDirNonDir bool
}

type DiffOptions

type DiffOptions struct {
	Format string          `json:",omitempty"` // CLI only
	Latest bool            `json:",omitempty"` // API and CLI, only supported by containers
	Type   define.DiffType // Type which should be compared
}

DiffOptions all API and CLI diff commands and diff sub-commands use the same options

type DiffReport

type DiffReport struct {
	Changes []archive.Change
}

DiffReport provides changes for object

type EngineMode

type EngineMode string

EngineMode is the connection type podman is using to access libpod

func (EngineMode) String

func (m EngineMode) String() string

Convert EngineMode to String

type EngineSetup

type EngineSetup string

EngineSetup calls out whether a "normal" or specialized engine should be created

type Event

type Event struct {
	// TODO: it would be nice to have full control over the types at some
	// point and fork such Docker types.
	dockerEvents.Message
	HealthStatus string `json:",omitempty"`
}

Event combines various event-related data such as time, event type, status and more.

func ConvertToEntitiesEvent

func ConvertToEntitiesEvent(e libpodEvents.Event) *Event

ConvertToEntitiesEvent converts a libpod event to an entities one.

type EventsOptions

type EventsOptions struct {
	FromStart bool
	EventChan chan *events.Event
	Filter    []string
	Stream    bool
	Since     string
	Until     string
}

type ExecOptions

type ExecOptions struct {
	Cmd         []string
	DetachKeys  string
	Envs        map[string]string
	Interactive bool
	Latest      bool
	PreserveFDs uint
	Privileged  bool
	Tty         bool
	User        string
	WorkDir     string
}

ExecOptions describes the cli values to exec into a container

type FarmBuildOptions added in v4.8.0

type FarmBuildOptions struct {
	// Cleanup removes built images from farm nodes on success
	Cleanup bool
	// Authfile is the path to the file holding registry credentials
	Authfile string
	// SkipTLSVerify skips tls verification when set to true
	SkipTLSVerify bool
}

FarmBuildOptions describes the options for building container images on farm nodes

type FarmInspectReport added in v4.8.0

type FarmInspectReport struct {
	NativePlatforms   []string
	EmulatedPlatforms []string
	OS                string
	Arch              string
	Variant           string
}

FarmInspectReport describes the response from farm inspect

type GenerateKubeOptions

type GenerateKubeOptions struct {
	// PodmanOnly - add podman-only reserved annotations in the generated YAML file (Cannot be used by Kubernetes)
	PodmanOnly bool
	// Service - generate YAML for a Kubernetes _service_ object.
	Service bool
	// Type - the k8s kind to be generated i.e Pod or Deployment
	Type string
	// Replicas - the value to set in the replicas field for a Deployment
	Replicas int32
	// UseLongAnnotations - don't truncate annotations to the Kubernetes maximum length of 63 characters
	UseLongAnnotations bool
}

GenerateKubeOptions control the generation of Kubernetes YAML files.

type GenerateKubeReport

type GenerateKubeReport struct {
	// Reader - the io.Reader to reader the generated YAML file.
	Reader io.Reader
}

GenerateKubeReport

FIXME: Podman4.0 should change io.Reader to io.ReaderCloser

type GenerateSpecOptions added in v4.3.0

type GenerateSpecOptions struct {
	ID       string
	FileName string
	Compact  bool
	Name     bool
}

type GenerateSpecReport added in v4.3.0

type GenerateSpecReport struct {
	Data []byte
}

type GenerateSystemdOptions

type GenerateSystemdOptions struct {
	Name                   bool
	New                    bool
	RestartPolicy          *string
	RestartSec             *uint
	StartTimeout           *uint
	StopTimeout            *uint
	ContainerPrefix        string
	PodPrefix              string
	Separator              string
	NoHeader               bool
	TemplateUnitFile       bool
	Wants                  []string
	After                  []string
	Requires               []string
	AdditionalEnvVariables []string
}

GenerateSystemdOptions control the generation of systemd unit files.

type GenerateSystemdReport

type GenerateSystemdReport struct {
	// Units of the generate process. key = unit name -> value = unit content
	Units map[string]string
}

GenerateSystemdReport

type HealthCheckOptions

type HealthCheckOptions struct{}

type IDOrNameResponse

type IDOrNameResponse struct {
	// The Id or Name of an object
	IDOrName string
}

type IDOrNamed

type IDOrNamed interface {
	Identifier
	Named
}

IDOrNamed interface allows filters to access ID() or Name() of object

type IDResponse added in v4.1.1

type IDResponse dockerAPI.IDResponse

swagger:model

type Identifier

type Identifier interface {
	Id() string
}

Identifier interface allows filters to access ID() of object

type Image

type Image struct {
	ID              string            `json:"Id"`
	RepoTags        []string          `json:",omitempty"`
	RepoDigests     []string          `json:",omitempty"`
	Parent          string            `json:",omitempty"`
	Comment         string            `json:",omitempty"`
	Created         string            `json:",omitempty"`
	Container       string            `json:",omitempty"`
	ContainerConfig *container.Config `json:",omitempty"`
	DockerVersion   string            `json:",omitempty"`
	Author          string            `json:",omitempty"`
	Config          *container.Config `json:",omitempty"`
	Architecture    string            `json:",omitempty"`
	Variant         string            `json:",omitempty"`
	Os              string            `json:",omitempty"`
	OsVersion       string            `json:",omitempty"`
	Size            int64             `json:",omitempty"`
	VirtualSize     int64             `json:",omitempty"`
	GraphDriver     string            `json:",omitempty"`
	RootFS          string            `json:",omitempty"`
	Metadata        string            `json:",omitempty"`

	// Podman extensions
	Digest        digest.Digest                 `json:",omitempty"`
	PodmanVersion string                        `json:",omitempty"`
	ManifestType  string                        `json:",omitempty"`
	User          string                        `json:",omitempty"`
	History       []v1.History                  `json:",omitempty"`
	NamesHistory  []string                      `json:",omitempty"`
	HealthCheck   *manifest.Schema2HealthConfig `json:",omitempty"`
}

func (*Image) Id

func (i *Image) Id() string

type ImageEngine

type ImageEngine interface {
	Build(ctx context.Context, containerFiles []string, opts BuildOptions) (*BuildReport, error)
	Config(ctx context.Context) (*config.Config, error)
	Exists(ctx context.Context, nameOrID string) (*BoolReport, error)
	History(ctx context.Context, nameOrID string, opts ImageHistoryOptions) (*ImageHistoryReport, error)
	Import(ctx context.Context, opts ImageImportOptions) (*ImageImportReport, error)
	Inspect(ctx context.Context, namesOrIDs []string, opts InspectOptions) ([]*ImageInspectReport, []error, error)
	List(ctx context.Context, opts ImageListOptions) ([]*ImageSummary, error)
	Load(ctx context.Context, opts ImageLoadOptions) (*ImageLoadReport, error)
	Mount(ctx context.Context, images []string, options ImageMountOptions) ([]*ImageMountReport, error)
	Prune(ctx context.Context, opts ImagePruneOptions) ([]*reports.PruneReport, error)
	Pull(ctx context.Context, rawImage string, opts ImagePullOptions) (*ImagePullReport, error)
	Push(ctx context.Context, source string, destination string, opts ImagePushOptions) (*ImagePushReport, error)
	Remove(ctx context.Context, images []string, opts ImageRemoveOptions) (*ImageRemoveReport, []error)
	Save(ctx context.Context, nameOrID string, tags []string, options ImageSaveOptions) error
	Scp(ctx context.Context, src, dst string, parentFlags []string, quiet bool, sshMode ssh.EngineMode) error
	Search(ctx context.Context, term string, opts ImageSearchOptions) ([]ImageSearchReport, error)
	SetTrust(ctx context.Context, args []string, options SetTrustOptions) error
	ShowTrust(ctx context.Context, args []string, options ShowTrustOptions) (*ShowTrustReport, error)
	Shutdown(ctx context.Context)
	Tag(ctx context.Context, nameOrID string, tags []string, options ImageTagOptions) error
	Tree(ctx context.Context, nameOrID string, options ImageTreeOptions) (*ImageTreeReport, error)
	Unmount(ctx context.Context, images []string, options ImageUnmountOptions) ([]*ImageUnmountReport, error)
	Untag(ctx context.Context, nameOrID string, tags []string, options ImageUntagOptions) error
	ManifestCreate(ctx context.Context, name string, images []string, opts ManifestCreateOptions) (string, error)
	ManifestExists(ctx context.Context, name string) (*BoolReport, error)
	ManifestInspect(ctx context.Context, name string, opts ManifestInspectOptions) ([]byte, error)
	ManifestAdd(ctx context.Context, listName string, imageNames []string, opts ManifestAddOptions) (string, error)
	ManifestAnnotate(ctx context.Context, names, image string, opts ManifestAnnotateOptions) (string, error)
	ManifestRemoveDigest(ctx context.Context, names, image string) (string, error)
	ManifestRm(ctx context.Context, names []string) (*ImageRemoveReport, []error)
	ManifestPush(ctx context.Context, name, destination string, imagePushOpts ImagePushOptions) (string, error)
	ManifestListClear(ctx context.Context, name string) (string, error)
	Sign(ctx context.Context, names []string, options SignOptions) (*SignReport, error)
	FarmNodeName(ctx context.Context) string
	FarmNodeDriver(ctx context.Context) string
	FarmNodeInspect(ctx context.Context) (*FarmInspectReport, error)
}

type ImageFilter

type ImageFilter func(Image) bool

func CompileImageFilters

func CompileImageFilters(filters url.Values) ImageFilter

type ImageHistoryLayer

type ImageHistoryLayer struct {
	ID        string    `json:"id"`
	Created   time.Time `json:"created,omitempty"`
	CreatedBy string    `json:",omitempty"`
	Tags      []string  `json:"tags,omitempty"`
	Size      int64     `json:"size"`
	Comment   string    `json:"comment,omitempty"`
}

type ImageHistoryOptions

type ImageHistoryOptions struct{}

type ImageHistoryReport

type ImageHistoryReport struct {
	Layers []ImageHistoryLayer
}

type ImageImportOptions

type ImageImportOptions struct {
	Architecture    string
	Variant         string
	Changes         []string
	Message         string
	OS              string
	Quiet           bool
	Reference       string
	SignaturePolicy string
	Source          string
	SourceIsURL     bool
}

type ImageImportReport

type ImageImportReport struct {
	Id string //nolint:revive,stylecheck
}

type ImageInspectReport

type ImageInspectReport struct {
	*inspect.ImageData
}

ImageInspectReport is the data when inspecting an image.

type ImageListOptions

type ImageListOptions struct {
	All    bool     `json:"all" schema:"all"`
	Filter []string `json:"Filter,omitempty"`
}

Image List Options

type ImageLoadOptions

type ImageLoadOptions struct {
	Input           string
	Quiet           bool
	SignaturePolicy string
}

type ImageLoadReport

type ImageLoadReport struct {
	Names []string
}

type ImageMountOptions

type ImageMountOptions struct {
	All    bool
	Format string
}

ImageMountOptions describes the input values for mounting images in the CLI

type ImageMountReport

type ImageMountReport struct {
	Id           string //nolint:revive,stylecheck
	Name         string
	Repositories []string
	Path         string
}

ImageMountReport describes the response from image mount

type ImagePruneOptions

type ImagePruneOptions struct {
	All      bool     `json:"all" schema:"all"`
	External bool     `json:"external" schema:"external"`
	Filter   []string `json:"filter" schema:"filter"`
}

type ImagePullOptions

type ImagePullOptions struct {
	// AllTags can be specified to pull all tags of an image. Note
	// that this only works if the image does not include a tag.
	AllTags bool
	// Authfile is the path to the authentication file. Ignored for remote
	// calls.
	Authfile string
	// CertDir is the path to certificate directories.  Ignored for remote
	// calls.
	CertDir string
	// Username for authenticating against the registry.
	Username string
	// Password for authenticating against the registry.
	Password string
	// Arch will overwrite the local architecture for image pulls.
	Arch string
	// OS will overwrite the local operating system (OS) for image
	// pulls.
	OS string
	// Variant will overwrite the local variant for image pulls.
	Variant string
	// Quiet can be specified to suppress pull progress when pulling.  Ignored
	// for remote calls.
	Quiet bool
	// SignaturePolicy to use when pulling.  Ignored for remote calls.
	SignaturePolicy string
	// SkipTLSVerify to skip HTTPS and certificate verification.
	SkipTLSVerify types.OptionalBool
	// PullPolicy whether to pull new image
	PullPolicy config.PullPolicy
	// Writer is used to display copy information including progress bars.
	Writer io.Writer
	// OciDecryptConfig contains the config that can be used to decrypt an image if it is
	// encrypted if non-nil. If nil, it does not attempt to decrypt an image.
	OciDecryptConfig *encconfig.DecryptConfig
}

ImagePullOptions are the arguments for pulling images.

type ImagePullReport

type ImagePullReport struct {
	// Stream used to provide output from c/image
	Stream string `json:"stream,omitempty"`
	// Error contains text of errors from c/image
	Error string `json:"error,omitempty"`
	// Images contains the ID's of the images pulled
	Images []string `json:"images,omitempty"`
	// ID contains image id (retained for backwards compatibility)
	ID string `json:"id,omitempty"`
}

ImagePullReport is the response from pulling one or more images.

type ImagePushOptions

type ImagePushOptions struct {
	// All indicates that all images referenced in a manifest list should be pushed
	All bool
	// Authfile is the path to the authentication file. Ignored for remote
	// calls.
	Authfile string
	// CertDir is the path to certificate directories.  Ignored for remote
	// calls.
	CertDir string
	// Compress tarball image layers when pushing to a directory using the 'dir'
	// transport. Default is same compression type as source. Ignored for remote
	// calls.
	Compress bool
	// Username for authenticating against the registry.
	Username string
	// Password for authenticating against the registry.
	Password string
	// Format is the Manifest type (oci, v2s1, or v2s2) to use when pushing an
	// image. Default is manifest type of source, with fallbacks.
	// Ignored for remote calls.
	Format string
	// Quiet can be specified to suppress push progress when pushing.
	Quiet bool
	// Rm indicates whether to remove the manifest list if push succeeds
	Rm bool
	// RemoveSignatures, discard any pre-existing signatures in the image.
	// Ignored for remote calls.
	RemoveSignatures bool
	// SignaturePolicy to use when pulling.  Ignored for remote calls.
	SignaturePolicy string
	// Signers, if non-empty, asks for signatures to be added during the copy
	// using the provided signers.
	// Rejected for remote calls.
	Signers []*signer.Signer
	// SignBy adds a signature at the destination using the specified key.
	// Ignored for remote calls.
	SignBy string
	// SignPassphrase, if non-empty, specifies a passphrase to use when signing
	// with the key ID from SignBy.
	SignPassphrase string
	// SignBySigstorePrivateKeyFile, if non-empty, asks for a signature to be added
	// during the copy, using a sigstore private key file at the provided path.
	// Ignored for remote calls.
	SignBySigstorePrivateKeyFile string
	// SignSigstorePrivateKeyPassphrase is the passphrase to use when signing with
	// SignBySigstorePrivateKeyFile.
	SignSigstorePrivateKeyPassphrase []byte
	// SkipTLSVerify to skip HTTPS and certificate verification.
	SkipTLSVerify types.OptionalBool
	// Progress to get progress notifications
	Progress chan types.ProgressProperties
	// CompressionFormat is the format to use for the compression of the blobs
	CompressionFormat string
	// CompressionLevel is the level to use for the compression of the blobs
	CompressionLevel *int
	// Writer is used to display copy information including progress bars.
	Writer io.Writer
	// OciEncryptConfig when non-nil indicates that an image should be encrypted.
	// The encryption options is derived from the construction of EncryptConfig object.
	OciEncryptConfig *encconfig.EncryptConfig
	// OciEncryptLayers represents the list of layers to encrypt.
	// If nil, don't encrypt any layers.
	// If non-nil and len==0, denotes encrypt all layers.
	// integers in the slice represent 0-indexed layer indices, with support for negative
	// indexing. i.e. 0 is the first layer, -1 is the last (top-most) layer.
	OciEncryptLayers *[]int
	//  If necessary, add clones of existing instances with requested compression algorithms to manifest list
	// Note: Following option is only valid for `manifest push`
	AddCompression []string
	// ForceCompressionFormat ensures that the compression algorithm set in
	// CompressionFormat is used exclusively, and blobs of other compression
	// algorithms are not reused.
	ForceCompressionFormat bool
}

ImagePushOptions are the arguments for pushing images.

type ImagePushReport added in v4.2.0

type ImagePushReport struct {
	// The digest of the manifest of the pushed image.
	ManifestDigest string
}

ImagePushReport is the response from pushing an image.

type ImagePushStream added in v4.6.0

type ImagePushStream struct {
	// ManifestDigest is the digest of the manifest of the pushed image.
	ManifestDigest string `json:"manifestdigest,omitempty"`
	// Stream used to provide push progress
	Stream string `json:"stream,omitempty"`
	// Error contains text of errors from pushing
	Error string `json:"error,omitempty"`
}

ImagePushStream is the response from pushing an image. Only used in the remote API.

type ImageRemoveOptions

type ImageRemoveOptions struct {
	// All will remove all images.
	All bool
	// Foce will force image removal including containers using the images.
	Force bool
	// Ignore if a specified image does not exist and do not throw an error.
	Ignore bool
	// Confirms if given name is a manifest list and removes it, otherwise returns error.
	LookupManifest bool
	// NoPrune will not remove dangling images
	NoPrune bool
}

ImageRemoveOptions can be used to alter image removal.

type ImageRemoveReport

type ImageRemoveReport struct {
	// Deleted images.
	Deleted []string `json:",omitempty"`
	// Untagged images. Can be longer than Deleted.
	Untagged []string `json:",omitempty"`
	// ExitCode describes the exit codes as described in the `podman rmi`
	// man page.
	ExitCode int
}

ImageRemoveReport is the response for removing one or more image(s) from storage and images what was untagged vs actually removed.

type ImageSaveOptions

type ImageSaveOptions struct {
	// Compress layers when saving to a directory.
	Compress bool
	// Format of saving the image: oci-archive, oci-dir (directory with oci
	// manifest type), docker-archive, docker-dir (directory with v2s2
	// manifest type).
	Format string
	// MultiImageArchive denotes if the created archive shall include more
	// than one image.  Additional tags will be interpreted as references
	// to images which are added to the archive.
	MultiImageArchive bool
	// Accept uncompressed layers when copying OCI images.
	OciAcceptUncompressedLayers bool
	// Output - write image to the specified path.
	Output string
	// Quiet - suppress output when copying images
	Quiet           bool
	SignaturePolicy string
}

ImageSaveOptions provide options for saving images.

type ImageScpConnections

type ImageScpConnections struct {
	// Connections holds the raw string values for connections (ssh or unix)
	Connections []string
	// URI contains the ssh connection URLs to be used by the client
	URI []*url.URL
	// Identities contains ssh identity keys to be used by the client
	Identities []string
}

ImageScpConnections provides the ssh related information used in remote image transfer

type ImageScpOptions

type ImageScpOptions struct {
	// Remote determines if this entity is operating on a remote machine
	Remote bool `json:"remote,omitempty"`
	// File is the input/output file for the save and load Operation
	File string `json:"file,omitempty"`
	// Quiet Determines if the save and load operation will be done quietly
	Quiet bool `json:"quiet,omitempty"`
	// Image is the image the user is providing to save and load
	Image string `json:"image,omitempty"`
	// User is used in conjunction with Transfer to determine if a valid user was given to save from/load into
	User string `json:"user,omitempty"`
	// Tag is the name to be used for the image on the destination
	Tag string `json:"tag,omitempty"`
}

ImageScpOptions provide options for securely copying images to and from a remote host

type ImageSearchOptions

type ImageSearchOptions struct {
	// Authfile is the path to the authentication file. Ignored for remote
	// calls.
	Authfile string
	// CertDir is the path to certificate directories.  Ignored for remote
	// calls.
	CertDir string
	// Username for authenticating against the registry.
	Username string
	// Password for authenticating against the registry.
	Password string
	// IdentityToken is used to authenticate the user and get
	// an access token for the registry.
	IdentityToken string
	// Filters for the search results.
	Filters []string
	// Limit the number of results.
	Limit int
	// SkipTLSVerify to skip  HTTPS and certificate verification.
	SkipTLSVerify types.OptionalBool
	// ListTags search the available tags of the repository
	ListTags bool
}

ImageSearchOptions are the arguments for searching images.

type ImageSearchReport

type ImageSearchReport struct {
	// Index is the image index (e.g., "docker.io" or "quay.io")
	Index string
	// Name is the canonical name of the image (e.g., "docker.io/library/alpine").
	Name string
	// Description of the image.
	Description string
	// Stars is the number of stars of the image.
	Stars int
	// Official indicates if it's an official image.
	Official string
	// Automated indicates if the image was created by an automated build.
	Automated string
	// Tag is the repository tag
	Tag string
}

ImageSearchReport is the response from searching images.

type ImageSummary

type ImageSummary struct {
	ID          string `json:"Id"`
	ParentId    string //nolint:revive,stylecheck
	RepoTags    []string
	RepoDigests []string
	Created     int64
	Size        int64
	SharedSize  int
	VirtualSize int64
	Labels      map[string]string
	Containers  int
	ReadOnly    bool `json:",omitempty"`
	Dangling    bool `json:",omitempty"`

	// Podman extensions
	Names   []string `json:",omitempty"`
	Digest  string   `json:",omitempty"`
	History []string `json:",omitempty"`
}

swagger:model LibpodImageSummary

func (*ImageSummary) Id

func (i *ImageSummary) Id() string

func (*ImageSummary) IsDangling

func (i *ImageSummary) IsDangling() bool

func (*ImageSummary) IsReadOnly

func (i *ImageSummary) IsReadOnly() bool

type ImageTagOptions

type ImageTagOptions struct{}

type ImageTreeOptions

type ImageTreeOptions struct {
	WhatRequires bool // Show all child images and layers of the specified image
}

ImageTreeOptions provides options for ImageEngine.Tree()

type ImageTreeReport

type ImageTreeReport struct {
	Tree string // TODO: Refactor move presentation work out of server
}

ImageTreeReport provides results from ImageEngine.Tree()

type ImageUnmountOptions

type ImageUnmountOptions struct {
	All   bool
	Force bool
}

ImageUnmountOptions are the options from the cli for unmounting

type ImageUnmountReport

type ImageUnmountReport struct {
	Err error
	Id  string //nolint:revive,stylecheck
}

ImageUnmountReport describes the response from umounting an image

type ImageUntagOptions

type ImageUntagOptions struct{}

type InspectOptions

type InspectOptions struct {
	// Format - change the output to JSON or a Go template.
	Format string `json:",omitempty"`
	// Latest - inspect the latest container Podman is aware of.
	Latest bool `json:",omitempty"`
	// Size (containers only) - display total file size.
	Size bool `json:",omitempty"`
	// Type -- return JSON for specified type.
	Type string `json:",omitempty"`
	// All -- inspect all
	All bool `json:",omitempty"`
}

InspectOptions all CLI inspect commands and inspect sub-commands use the same options

type KillOptions

type KillOptions struct {
	All    bool
	Latest bool
	Signal string
}

type KillReport

type KillReport struct {
	Err      error
	Id       string //nolint:revive,stylecheck
	RawInput string
}

type KubeGenerateOptions added in v4.3.0

type KubeGenerateOptions = GenerateKubeOptions

type KubePlayReport added in v4.3.0

type KubePlayReport = PlayKubeReport

type ListContainer

type ListContainer struct {
	// AutoRemove
	AutoRemove bool
	// Container command
	Command []string
	// Container creation time
	Created time.Time
	// Human-readable container creation time.
	CreatedAt string
	// CIDFile specified at creation time.
	CIDFile string
	// If container has exited/stopped
	Exited bool
	// Time container exited
	ExitedAt int64
	// If container has exited, the return code from the command
	ExitCode int32
	// The unique identifier for the container
	ID string `json:"Id"`
	// Container image
	Image string
	// Container image ID
	ImageID string
	// If this container is a Pod infra container
	IsInfra bool
	// Labels for container
	Labels map[string]string
	// User volume mounts
	Mounts []string
	// The names assigned to the container
	Names []string
	// Namespaces the container belongs to.  Requires the
	// namespace boolean to be true
	Namespaces ListContainerNamespaces
	// The network names assigned to the container
	Networks []string
	// The process id of the container
	Pid int
	// If the container is part of Pod, the Pod ID. Requires the pod
	// boolean to be set
	Pod string
	// If the container is part of Pod, the Pod name. Requires the pod
	// boolean to be set
	PodName string
	// Port mappings
	Ports []types.PortMapping
	// Restarts is how many times the container was restarted by its
	// restart policy. This is NOT incremented by normal container restarts
	// (only by restart policy).
	Restarts uint
	// Size of the container rootfs.  Requires the size boolean to be true
	Size *define.ContainerSize
	// Time when container started
	StartedAt int64
	// State of container
	State string
	// Status is a human-readable approximation of a duration for json output
	Status string
}

ListContainer describes a container suitable for listing

func (ListContainer) CGROUPNS

func (l ListContainer) CGROUPNS() string

func (ListContainer) IPC

func (l ListContainer) IPC() string

func (ListContainer) MNT

func (l ListContainer) MNT() string

func (ListContainer) NET

func (l ListContainer) NET() string

func (ListContainer) PIDNS

func (l ListContainer) PIDNS() string

func (ListContainer) USERNS

func (l ListContainer) USERNS() string

func (ListContainer) UTS

func (l ListContainer) UTS() string

type ListContainerNamespaces

type ListContainerNamespaces struct {
	// Mount namespace
	MNT string `json:"Mnt,omitempty"`
	// Cgroup namespace
	Cgroup string `json:"Cgroup,omitempty"`
	// IPC namespace
	IPC string `json:"Ipc,omitempty"`
	// Network namespace
	NET string `json:"Net,omitempty"`
	// PID namespace
	PIDNS string `json:"Pidns,omitempty"`
	// UTS namespace
	UTS string `json:"Uts,omitempty"`
	// User namespace
	User string `json:"User,omitempty"`
}

ListContainerNamespaces contains the identifiers of the container's Linux namespaces

type ListPodContainer

type ListPodContainer struct {
	Id           string //nolint:revive,stylecheck
	Names        string
	Status       string
	RestartCount uint
}

type ListPodsReport

type ListPodsReport struct {
	Cgroup     string
	Containers []*ListPodContainer
	Created    time.Time
	Id         string //nolint:revive,stylecheck
	InfraId    string //nolint:revive,stylecheck
	Name       string
	Namespace  string
	// Network names connected to infra container
	Networks []string
	Status   string
	Labels   map[string]string
}

type ListRegistriesReport

type ListRegistriesReport struct {
	Registries []string
}

ListRegistriesReport is the report when querying for a sorted list of registries which may be contacted during certain operations.

type ListReporter added in v4.2.0

type ListReporter struct {
	Name               string
	Default            bool
	Created            string
	Running            bool
	Starting           bool
	LastUp             string
	Stream             string
	VMType             string
	CPUs               uint64
	Memory             string
	DiskSize           string
	Port               int
	RemoteUsername     string
	IdentityPath       string
	UserModeNetworking bool
}

type LocksReport added in v4.6.0

type LocksReport struct {
	LockConflicts map[uint32][]string
	LocksHeld     []uint32
}

LocksReport describes any conflicts in Libpod's lock allocations that could lead to deadlocks.

type MachineHostInfo added in v4.2.0

type MachineHostInfo struct {
	Arch             string `json:"Arch"`
	CurrentMachine   string `json:"CurrentMachine"`
	DefaultMachine   string `json:"DefaultMachine"`
	EventsDir        string `json:"EventsDir"`
	MachineConfigDir string `json:"MachineConfigDir"`
	MachineImageDir  string `json:"MachineImageDir"`
	MachineState     string `json:"MachineState"`
	NumberOfMachines int    `json:"NumberOfMachines"`
	OS               string `json:"OS"`
	VMType           string `json:"VMType"`
}

MachineHostInfo contains info on the machine host

type MachineInfo added in v4.2.0

type MachineInfo struct {
	Host    *MachineHostInfo `json:"Host"`
	Version define.Version   `json:"Version"`
}

MachineInfo contains info on the machine host and version info

type ManifestAddOptions

type ManifestAddOptions struct {
	ManifestAnnotateOptions
	// True when operating on a list to include all images
	All bool `json:"all" schema:"all"`
	// authfile to use when pushing manifest list
	Authfile string `json:"-" schema:"-"`
	// Home directory for certificates when pushing a manifest list
	CertDir string `json:"-" schema:"-"`
	// Password to authenticate to registry when pushing manifest list
	Password string `json:"-" schema:"-"`
	// Should TLS registry certificate be verified?
	SkipTLSVerify types.OptionalBool `json:"-" schema:"-"`
	// Username to authenticate to registry when pushing manifest list
	Username string `json:"-" schema:"-"`
	// Images is an optional list of images to add to manifest list
	Images []string `json:"images" schema:"images"`
}

ManifestAddOptions provides model for adding digests to manifest list

swagger:model

type ManifestAnnotateOptions

type ManifestAnnotateOptions struct {
	// Annotation to add to manifest list
	Annotation []string `json:"annotation" schema:"annotation"`
	// Annotations to add to manifest list by a map which is prefferred over Annotation
	Annotations map[string]string `json:"annotations" schema:"annotations"`
	// Arch overrides the architecture for the image
	Arch string `json:"arch" schema:"arch"`
	// Feature list for the image
	Features []string `json:"features" schema:"features"`
	// OS overrides the operating system for the image
	OS string `json:"os" schema:"os"`
	// OS features for the image
	OSFeatures []string `json:"os_features" schema:"os_features"`
	// OSVersion overrides the operating system for the image
	OSVersion string `json:"os_version" schema:"os_version"`
	// Variant for the image
	Variant string `json:"variant" schema:"variant"`
}

ManifestAnnotateOptions provides model for annotating manifest list

type ManifestCreateOptions

type ManifestCreateOptions struct {
	// True when adding lists to include all images
	All bool `schema:"all"`
	// Amend an extant list if there's already one with the desired name
	Amend bool `schema:"amend"`
	// Should TLS registry certificate be verified?
	SkipTLSVerify types.OptionalBool `json:"-" schema:"-"`
}

ManifestCreateOptions provides model for creating manifest

type ManifestInspectOptions added in v4.4.0

type ManifestInspectOptions struct {
	// Path to an authentication file.
	Authfile string `json:"-" schema:"-"`
	// Should TLS registry certificate be verified?
	SkipTLSVerify types.OptionalBool `json:"-" schema:"-"`
}

ManifestInspectOptions provides model for inspecting manifest

type ManifestModifyOptions

type ManifestModifyOptions struct {
	Operation string `json:"operation" schema:"operation"` // Valid values: update, remove, annotate
	ManifestAddOptions
	ManifestRemoveOptions
}

ManifestModifyOptions provides the model for mutating a manifest

swagger 2.0 does not support oneOf for schema validation.

Operation "update" uses all fields. Operation "remove" uses fields: Operation and Images Operation "annotate" uses fields: Operation and Annotations

swagger:model

type ManifestModifyReport

type ManifestModifyReport struct {
	// Manifest List ID
	ID string `json:"Id"`
	// Images to removed from manifest list, otherwise not provided.
	Images []string `json:"images,omitempty" schema:"images"`
	// Errors associated with operation
	Errors []error `json:"errors,omitempty"`
}

ManifestModifyReport provides the model for removed digests and changed manifest

swagger:model

type ManifestPushReport added in v4.3.0

type ManifestPushReport struct {
	// ID of the pushed manifest
	ID string `json:"Id"`
	// Stream used to provide push progress
	Stream string `json:"stream,omitempty"`
	// Error contains text of errors from pushing
	Error string `json:"error,omitempty"`
}

ManifestPushReport provides the model for the pushed manifest

swagger:model

type ManifestRemoveOptions

type ManifestRemoveOptions struct {
}

ManifestRemoveOptions provides the model for removing digests from a manifest

swagger:model

type ManifestRemoveReport added in v4.2.0

type ManifestRemoveReport struct {
	// Deleted manifest list.
	Deleted []string `json:",omitempty"`
	// Untagged images. Can be longer than Deleted.
	Untagged []string `json:",omitempty"`
	// Errors associated with operation
	Errors []string `json:",omitempty"`
	// ExitCode describes the exit codes as described in the `podman rmi`
	// man page.
	ExitCode int
}

ManifestRemoveReport provides the model for the removed manifest

swagger:model

type Named

type Named interface {
	Name() string
}

Named interface allows filters to access Name() of object

type Names

type Names interface {
	Names() []string
}

Names interface allows filters to access Name() of object

type NetFlags

type NetFlags struct {
	AddHosts     []string `json:"add-host,omitempty"`
	DNS          []string `json:"dns,omitempty"`
	DNSOpt       []string `json:"dns-opt,omitempty"`
	DNDSearch    []string `json:"dns-search,omitempty"`
	MacAddr      string   `json:"mac-address,omitempty"`
	Publish      []string `json:"publish,omitempty"`
	IP           string   `json:"ip,omitempty"`
	NoHosts      bool     `json:"no-hosts,omitempty"`
	Network      string   `json:"network,omitempty"`
	NetworkAlias []string `json:"network-alias,omitempty"`
}

type NetOptions

type NetOptions struct {
	AddHosts           []string                           `json:"hostadd,omitempty"`
	Aliases            []string                           `json:"network_alias,omitempty"`
	Networks           map[string]types.PerNetworkOptions `json:"networks,omitempty"`
	UseImageResolvConf bool                               `json:"no_manage_resolv_conf,omitempty"`
	DNSOptions         []string                           `json:"dns_option,omitempty"`
	DNSSearch          []string                           `json:"dns_search,omitempty"`
	DNSServers         []net.IP                           `json:"dns_server,omitempty"`
	Network            specgen.Namespace                  `json:"netns,omitempty"`
	NoHosts            bool                               `json:"no_manage_hosts,omitempty"`
	PublishPorts       []types.PortMapping                `json:"portmappings,omitempty"`
	// NetworkOptions are additional options for each network
	NetworkOptions map[string][]string `json:"network_options,omitempty"`
}

NetOptions reflect the shared network options between pods and containers

type NetworkConnectOptions

type NetworkConnectOptions struct {
	Container string `json:"container"`
	types.PerNetworkOptions
}

NetworkConnectOptions describes options for connecting a container to a network

type NetworkCreateOptions

type NetworkCreateOptions struct {
	DisableDNS        bool
	Driver            string
	Gateways          []net.IP
	Internal          bool
	Labels            map[string]string
	MacVLAN           string
	NetworkDNSServers []string
	Ranges            []string
	Subnets           []string
	Routes            []string
	IPv6              bool
	// Mapping of driver options and values.
	Options map[string]string
	// IgnoreIfExists if true, do not fail if the network already exists
	IgnoreIfExists bool
	// InterfaceName sets the NetworkInterface in the network config
	InterfaceName string
}

NetworkCreateOptions describes options to create a network

type NetworkCreateReport

type NetworkCreateReport struct {
	Name string
}

NetworkCreateReport describes a created network for the cli

type NetworkDisconnectOptions

type NetworkDisconnectOptions struct {
	Container string
	Force     bool
}

NetworkDisconnectOptions describes options for disconnecting containers from networks

type NetworkListOptions

type NetworkListOptions struct {
	Format  string
	Quiet   bool
	Filters map[string][]string
}

NetworkListOptions describes options for listing networks in cli

type NetworkPruneOptions

type NetworkPruneOptions struct {
	Filters map[string][]string
}

NetworkPruneOptions describes options for pruning unused networks

type NetworkPruneReport

type NetworkPruneReport struct {
	Name  string
	Error error
}

NetworkPruneReport containers the name of network and an error associated in its pruning (removal) swagger:model NetworkPruneReport

type NetworkReloadOptions

type NetworkReloadOptions struct {
	All    bool
	Latest bool
}

NetworkReloadOptions describes options for reloading container network configuration.

type NetworkReloadReport

type NetworkReloadReport struct {
	//nolint:stylecheck,revive
	Id  string
	Err error
}

NetworkReloadReport describes the results of reloading a container network.

type NetworkRmOptions

type NetworkRmOptions struct {
	Force   bool
	Timeout *uint
}

NetworkRmOptions describes options for removing networks

type NetworkRmReport

type NetworkRmReport struct {
	Name string
	Err  error
}

NetworkRmReport describes the results of network removal

type NetworkUpdateOptions added in v4.4.0

type NetworkUpdateOptions struct {
	AddDNSServers    []string `json:"adddnsservers"`
	RemoveDNSServers []string `json:"removednsservers"`
}

NetworkUpdateOptions describes options to update a network

type PauseUnPauseOptions

type PauseUnPauseOptions struct {
	Filters map[string][]string
	All     bool
	Latest  bool
}

type PauseUnpauseReport

type PauseUnpauseReport struct {
	Err      error
	Id       string //nolint:revive,stylecheck
	RawInput string
}

type PlayKubeDownOptions

type PlayKubeDownOptions struct {
	// Force - remove volumes if passed
	Force bool
}

PlayKubeDownOptions are options for tearing down pods

type PlayKubeOptions

type PlayKubeOptions struct {
	// Annotations - Annotations to add to Pods
	Annotations map[string]string
	// Authfile - path to an authentication file.
	Authfile string
	// Indicator to build all images with Containerfile or Dockerfile
	Build types.OptionalBool
	// CertDir - to a directory containing TLS certifications and keys.
	CertDir string
	// ContextDir - directory containing image contexts used for Build
	ContextDir string
	// Down indicates whether to bring contents of a yaml file "down"
	// as in stop
	Down bool
	// ExitCodePropagation decides how the main PID of the Kube service
	// should exit depending on the containers' exit codes.
	ExitCodePropagation string
	// Replace indicates whether to delete and recreate a yaml file
	Replace bool
	// Do not create /etc/hosts within the pod's containers,
	// instead use the version from the image
	NoHosts bool
	// Username for authenticating against the registry.
	Username string
	// Password for authenticating against the registry.
	Password string
	// Networks - name of the network to connect to.
	Networks []string
	// Quiet - suppress output when pulling images.
	Quiet bool
	// SignaturePolicy - path to a signature-policy file.
	SignaturePolicy string
	// SkipTLSVerify - skip https and certificate validation when
	// contacting container registries.
	SkipTLSVerify types.OptionalBool
	// SeccompProfileRoot - path to a directory containing seccomp
	// profiles.
	SeccompProfileRoot string
	// StaticIPs - Static IP address used by the pod(s).
	StaticIPs []net.IP
	// StaticMACs - Static MAC address used by the pod(s).
	StaticMACs []net.HardwareAddr
	// ConfigMaps - slice of pathnames to kubernetes configmap YAMLs.
	ConfigMaps []string
	// LogDriver for the container. For example: journald
	LogDriver string
	// LogOptions for the log driver for the container.
	LogOptions []string
	// Start - don't start the pod if false
	Start types.OptionalBool
	// ServiceContainer - creates a service container that is started before and is stopped after all pods.
	ServiceContainer bool
	// UseLongAnnotations - use annotations that were not truncated to the
	// Kubernetes maximum length of 63 characters
	UseLongAnnotations bool
	// Userns - define the user namespace to use.
	Userns string
	// IsRemote - was the request triggered by running podman-remote
	IsRemote bool
	// Force - remove volumes on --down
	Force bool
	// PublishPorts - configure how to expose ports configured inside the K8S YAML file
	PublishPorts []string
	// PublishAllPorts - whether to publish all ports defined in the K8S YAML file
	// (containerPort, hostPort) otherwise only hostPort will be published
	PublishAllPorts bool
	// Wait - indicates whether to return after having created the pods
	Wait bool
}

PlayKubeOptions controls playing kube YAML files.

type PlayKubePod

type PlayKubePod struct {
	// ID - ID of the pod created as a result of play kube.
	ID string
	// Containers - the IDs of the containers running in the created pod.
	Containers []string
	// InitContainers - the IDs of the init containers to be run in the created pod.
	InitContainers []string
	// Logs - non-fatal errors and log messages while processing.
	Logs []string
	// ContainerErrors - any errors that occurred while starting containers
	// in the pod.
	ContainerErrors []string
}

PlayKubePod represents a single pod and associated containers created by play kube

type PlayKubeReport

type PlayKubeReport struct {
	// Pods - pods created by play kube.
	Pods []PlayKubePod
	// Volumes - volumes created by play kube.
	Volumes []PlayKubeVolume
	PlayKubeTeardown
	// Secrets - secrets created by play kube
	Secrets []PlaySecret
	// ServiceContainerID - ID of the service container if one is created
	ServiceContainerID string
	// If set, exit with the specified exit code.
	ExitCode *int32
}

PlayKubeReport contains the results of running play kube.

type PlayKubeTeardown

type PlayKubeTeardown struct {
	StopReport     []*PodStopReport
	RmReport       []*PodRmReport
	VolumeRmReport []*VolumeRmReport
	SecretRmReport []*SecretRmReport
}

PlayKubeDownReport contains the results of tearing down play kube

type PlayKubeVolume

type PlayKubeVolume struct {
	// Name - Name of the volume created by play kube.
	Name string
}

PlayKubeVolume represents a single volume created by play kube.

type PlaySecret added in v4.3.0

type PlaySecret struct {
	CreateReport *SecretCreateReport
}

type PodCloneOptions added in v4.2.0

type PodCloneOptions struct {
	ID                  string
	Destroy             bool
	CreateOpts          PodCreateOptions
	InfraOptions        ContainerCreateOptions
	PerContainerOptions ContainerCreateOptions
	Start               bool
}

PodCloneOptions contains options for cloning an existing pod

type PodCloneReport added in v4.2.0

type PodCloneReport struct {
	Id string //nolint:revive,stylecheck
}

type PodCreateOptions

type PodCreateOptions struct {
	CgroupParent       string            `json:"cgroup_parent,omitempty"`
	CreateCommand      []string          `json:"create_command,omitempty"`
	Devices            []string          `json:"devices,omitempty"`
	DeviceReadBPs      []string          `json:"device_read_bps,omitempty"`
	ExitPolicy         string            `json:"exit_policy,omitempty"`
	Hostname           string            `json:"hostname,omitempty"`
	Infra              bool              `json:"infra,omitempty"`
	InfraImage         string            `json:"infra_image,omitempty"`
	InfraName          string            `json:"container_name,omitempty"`
	InfraCommand       *string           `json:"container_command,omitempty"`
	InfraConmonPidFile string            `json:"container_conmon_pidfile,omitempty"`
	Ipc                string            `json:"ipc,omitempty"`
	Labels             map[string]string `json:"labels,omitempty"`
	Name               string            `json:"name,omitempty"`
	Net                *NetOptions       `json:"net,omitempty"`
	Share              []string          `json:"share,omitempty"`
	ShareParent        *bool             `json:"share_parent,omitempty"`
	Restart            string            `json:"restart,omitempty"`
	Pid                string            `json:"pid,omitempty"`
	Cpus               float64           `json:"cpus,omitempty"`
	CpusetCpus         string            `json:"cpuset_cpus,omitempty"`
	Userns             specgen.Namespace `json:"-"`
	Volume             []string          `json:"volume,omitempty"`
	VolumesFrom        []string          `json:"volumes_from,omitempty"`
	SecurityOpt        []string          `json:"security_opt,omitempty"`
	Sysctl             []string          `json:"sysctl,omitempty"`
	Uts                string            `json:"uts,omitempty"`
}

PodCreateOptions provides all possible options for creating a pod and its infra container. The JSON tags below are made to match the respective field in ContainerCreateOptions for the purpose of mapping. swagger:model PodCreateOptions

func (*PodCreateOptions) CPULimits

func (p *PodCreateOptions) CPULimits() *specs.LinuxCPU

type PodCreateReport

type PodCreateReport struct {
	Id string //nolint:revive,stylecheck
}

type PodDeleteReport

type PodDeleteReport struct{ Report }

type PodInspectReport

type PodInspectReport struct {
	*define.InspectPodData
}

type PodKillOptions

type PodKillOptions struct {
	All    bool
	Latest bool
	Signal string
}

type PodKillReport

type PodKillReport struct {
	Errs []error
	Id   string //nolint:revive,stylecheck
}

type PodLogsOptions

type PodLogsOptions struct {
	// Other fields are exactly same as ContainerLogOpts
	ContainerLogsOptions
	// If specified will only fetch the logs of specified container
	ContainerName string
	// Show different colors in the logs.
	Color bool
}

PodLogsOptions describes the options to extract pod logs.

type PodPSOptions

type PodPSOptions struct {
	CtrNames  bool
	CtrIds    bool
	CtrStatus bool
	Filters   map[string][]string
	Format    string
	Latest    bool
	Namespace bool
	Quiet     bool
	Sort      string
}

type PodPauseOptions

type PodPauseOptions struct {
	All    bool
	Latest bool
}

type PodPauseReport

type PodPauseReport struct {
	Errs []error
	Id   string //nolint:revive,stylecheck
}

type PodPruneOptions

type PodPruneOptions struct {
	Force bool `json:"force" schema:"force"`
}

type PodPruneReport

type PodPruneReport struct {
	Err error
	Id  string //nolint:revive,stylecheck
}

type PodRestartOptions

type PodRestartOptions struct {
	All    bool
	Latest bool
}

type PodRestartReport

type PodRestartReport struct {
	Errs []error
	Id   string //nolint:revive,stylecheck
}

type PodRmOptions

type PodRmOptions struct {
	All     bool
	Force   bool
	Ignore  bool
	Latest  bool
	Timeout *uint
}

type PodRmReport

type PodRmReport struct {
	RemovedCtrs map[string]error
	Err         error
	Id          string //nolint:revive,stylecheck
}

type PodSpec

type PodSpec struct {
	PodSpecGen specgen.PodSpecGenerator
}

PddSpec is an abstracted version of PodSpecGen designed to eventually accept options not meant to be in a specgen

type PodStartOptions

type PodStartOptions struct {
	All    bool
	Latest bool
}

type PodStartReport

type PodStartReport struct {
	Errs []error
	Id   string //nolint:revive,stylecheck
}

type PodStatsOptions

type PodStatsOptions struct {
	// All - provide stats for all running pods.
	All bool
	// Latest - provide stats for the latest pod.
	Latest bool
}

PodStatsOptions are options for the pod stats command.

type PodStatsReport

type PodStatsReport struct {
	// Percentage of CPU utilized by pod
	// example: 75.5%
	CPU string
	// Humanized Memory usage and maximum
	// example: 12mb / 24mb
	MemUsage string
	// Memory usage and maximum in bytes
	// example: 1,000,000 / 4,000,000
	MemUsageBytes string
	// Percentage of Memory utilized by pod
	// example: 50.5%
	Mem string
	// Network usage inbound + outbound
	NetIO string
	// Humanized disk usage read + write
	BlockIO string
	// Container PID
	PIDS string
	// Pod ID
	// example: 62310217a19e
	Pod string
	// Container ID
	// example: e43534f89a7d
	CID string
	// Pod Name
	// example: elastic_pascal
	Name string
}

PodStatsReport includes pod-resource statistics data.

type PodStopOptions

type PodStopOptions struct {
	All     bool
	Ignore  bool
	Latest  bool
	Timeout int
}

type PodStopReport

type PodStopReport struct {
	Errs []error
	Id   string //nolint:revive,stylecheck
}

type PodTopOptions

type PodTopOptions struct {
	// CLI flags.
	ListDescriptors bool
	Latest          bool

	// Options for the API.
	Descriptors []string
	NameOrID    string
}

type PodUnpauseReport

type PodUnpauseReport struct {
	Errs []error
	Id   string //nolint:revive,stylecheck
}

type PodmanConfig

type PodmanConfig struct {
	*pflag.FlagSet

	ContainersConf           *config.Config
	ContainersConfDefaultsRO *config.Config // The read-only! defaults from containers.conf.
	DBBackend                string         // Hidden: change the database backend
	DockerConfig             string         // Used for Docker compatibility
	CgroupUsage              string         // rootless code determines Usage message
	ConmonPath               string         // --conmon flag will set Engine.ConmonPath
	CPUProfile               string         // Hidden: Should CPU profile be taken
	EngineMode               EngineMode     // ABI or Tunneling mode
	HooksDir                 []string
	Identity                 string   // ssh identity for connecting to server
	IsRenumber               bool     // Is this a system renumber command? If so, a number of checks will be relaxed
	IsReset                  bool     // Is this a system reset command? If so, a number of checks will be skipped/omitted
	MaxWorks                 int      // maximum number of parallel threads
	MemoryProfile            string   // Hidden: Should memory profile be taken
	RegistriesConf           string   // allows for specifying a custom registries.conf
	Remote                   bool     // Connection to Podman API Service will use RESTful API
	RuntimePath              string   // --runtime flag will set Engine.RuntimePath
	RuntimeFlags             []string // global flags for the container runtime
	Syslog                   bool     // write logging information to syslog as well as the console
	Trace                    bool     // Hidden: Trace execution
	URI                      string   // URI to RESTful API Service
	FarmNodeName             string   // Name of farm node

	Runroot        string
	ImageStore     string
	StorageDriver  string
	StorageOpts    []string
	SSHMode        string
	MachineMode    bool
	TransientStore bool
	GraphRoot      string
}

PodmanConfig combines the defaults and settings from the file system with the flags given in os.Args. Some runtime state is also stored here.

type PodunpauseOptions

type PodunpauseOptions struct {
	All    bool
	Latest bool
}

type PsSortedCreateTime

type PsSortedCreateTime struct{ SortListContainers }

func (PsSortedCreateTime) Less

func (a PsSortedCreateTime) Less(i, j int) bool

type Report

type Report struct {
	Id  []string //nolint:revive,stylecheck
	Err map[string]error
}

type RestartOptions

type RestartOptions struct {
	Filters map[string][]string
	All     bool
	Latest  bool
	Running bool
	Timeout *uint
}

type RestartReport

type RestartReport struct {
	Err      error
	Id       string //nolint:revive,stylecheck
	RawInput string
}

type RestoreOptions

type RestoreOptions struct {
	All             bool
	IgnoreRootFS    bool
	IgnoreVolumes   bool
	IgnoreStaticIP  bool
	IgnoreStaticMAC bool
	Import          string
	CheckpointImage bool
	Keep            bool
	Latest          bool
	Name            string
	TCPEstablished  bool
	ImportPrevious  string
	PublishPorts    []string
	Pod             string
	PrintStats      bool
	FileLocks       bool
}

type RestoreReport

type RestoreReport struct {
	Err             error                                   `json:"-"`
	Id              string                                  `json:"Id"` //nolint:revive,stylecheck
	RawInput        string                                  `json:"-"`
	RuntimeDuration int64                                   `json:"runtime_restore_duration"`
	CRIUStatistics  *define.CRIUCheckpointRestoreStatistics `json:"criu_statistics"`
}

type RmOptions

type RmOptions struct {
	Filters map[string][]string
	All     bool
	Depend  bool
	Force   bool
	Ignore  bool
	Latest  bool
	Timeout *uint
	Volumes bool
}

type SecretCreateOptions

type SecretCreateOptions struct {
	Driver     string
	DriverOpts map[string]string
	Labels     map[string]string
	Replace    bool
}

type SecretCreateReport

type SecretCreateReport struct {
	ID string
}

type SecretCreateRequest

type SecretCreateRequest struct {
	// User-defined name of the secret.
	Name string
	// Base64-url-safe-encoded (RFC 4648) data to store as secret.
	Data string
	// Driver represents a driver (default "file")
	Driver SecretDriverSpec
	// Labels are labels on the secret
	Labels map[string]string
}

swagger:model SecretCreate

type SecretDriverSpec

type SecretDriverSpec struct {
	Name    string
	Options map[string]string
}

type SecretInfoReport

type SecretInfoReport struct {
	ID         string
	CreatedAt  time.Time
	UpdatedAt  time.Time
	Spec       SecretSpec
	SecretData string `json:"SecretData,omitempty"`
}

type SecretInfoReportCompat

type SecretInfoReportCompat struct {
	SecretInfoReport
	Version SecretVersion
}

type SecretInspectOptions added in v4.7.0

type SecretInspectOptions struct {
	ShowSecret bool
}

type SecretListReport

type SecretListReport struct {
	ID        string
	Name      string
	Driver    string
	CreatedAt string
	UpdatedAt string
}

type SecretListRequest

type SecretListRequest struct {
	Filters map[string][]string
}

type SecretRmOptions

type SecretRmOptions struct {
	All    bool
	Ignore bool
}

type SecretRmReport

type SecretRmReport struct {
	ID  string
	Err error
}

type SecretSpec

type SecretSpec struct {
	Name   string
	Driver SecretDriverSpec
	Labels map[string]string
}

type SecretVersion

type SecretVersion struct {
	Index int
}

type ServiceOptions

type ServiceOptions struct {
	CorsHeaders string        // Cross-Origin Resource Sharing (CORS) headers
	PProfAddr   string        // Network address to bind pprof profiles service
	Timeout     time.Duration // Duration of inactivity the service should wait before shutting down
	URI         string        // Path to unix domain socket service should listen on
}

ServiceOptions provides the input for starting an API and sidecar pprof services

type SetTrustOptions

type SetTrustOptions struct {
	PolicyPath  string
	PubKeysFile []string
	Type        string
}

SetTrustOptions describes the CLI options for setting trust

type ShowTrustOptions

type ShowTrustOptions struct {
	JSON         bool
	PolicyPath   string
	Raw          bool
	RegistryPath string
}

ShowTrustOptions are the cli options for showing trust

type ShowTrustReport

type ShowTrustReport struct {
	Raw                     []byte
	SystemRegistriesDirPath string
	JSONOutput              []byte
	Policies                []*trust.Policy
}

ShowTrustReport describes the results of show trust

type SignOptions

type SignOptions struct {
	Directory string
	SignBy    string
	CertDir   string
	Authfile  string
	All       bool
}

SignOptions describes input options for the CLI signing

type SignReport

type SignReport struct{}

SignReport describes the result of signing

type SortListContainers

type SortListContainers []ListContainer

func SortPsOutput

func SortPsOutput(sortBy string, psOutput SortListContainers) (SortListContainers, error)

func (SortListContainers) Len

func (a SortListContainers) Len() int

func (SortListContainers) Swap

func (a SortListContainers) Swap(i, j int)

type StopOptions

type StopOptions struct {
	Filters map[string][]string
	All     bool
	Ignore  bool
	Latest  bool
	Timeout *uint
}

type StopReport

type StopReport struct {
	Err      error
	Id       string //nolint:revive,stylecheck
	RawInput string
}

type StringSet

type StringSet struct {
	// contains filtered or unexported fields
}

func NewStringSet

func NewStringSet(elem ...string) *StringSet

func (*StringSet) Add

func (s *StringSet) Add(elem string)

func (*StringSet) Contains

func (s *StringSet) Contains(elem string) bool

func (*StringSet) Elements

func (s *StringSet) Elements() []string

func (*StringSet) Remove

func (s *StringSet) Remove(elem string)

func (*StringSet) String

func (s *StringSet) String() string

type StringSliceReport

type StringSliceReport struct {
	Value []string
}

StringSliceReport wraps a string slice.

type SwagErrNoSuchSecret

type SwagErrNoSuchSecret struct {
	// in:body
	Body struct {
		errorhandling.ErrorModel
	}
}

No such secret swagger:response NoSuchSecret

type SwagErrSecretInUse

type SwagErrSecretInUse struct {
	// in:body
	Body struct {
		errorhandling.ErrorModel
	}
}

Secret in use swagger:response SecretInUse

type SwagSecretCreateResponse

type SwagSecretCreateResponse struct {
	// in:body
	Body struct {
		SecretCreateReport
	}
}

Secret create response swagger:response SecretCreateResponse

type SwagSecretInspectCompatResponse

type SwagSecretInspectCompatResponse struct {
	// in:body
	Body SecretInfoReportCompat
}

Secret inspect compat swagger:response SecretInspectCompatResponse

type SwagSecretInspectResponse

type SwagSecretInspectResponse struct {
	// in:body
	Body SecretInfoReport
}

Secret inspect response swagger:response SecretInspectResponse

type SwagSecretListCompatResponse

type SwagSecretListCompatResponse struct {
	// in:body
	Body []*SecretInfoReportCompat
}

Secret list response swagger:response SecretListCompatResponse

type SwagSecretListResponse

type SwagSecretListResponse struct {
	// in:body
	Body []*SecretInfoReport
}

Secret list response swagger:response SecretListResponse

type SystemDfContainerReport

type SystemDfContainerReport struct {
	ContainerID  string
	Image        string
	Command      []string
	LocalVolumes int
	Size         int64
	RWSize       int64
	Created      time.Time
	Status       string
	Names        string
}

SystemDfContainerReport describes a container for use with df

type SystemDfImageReport

type SystemDfImageReport struct {
	Repository string
	Tag        string
	ImageID    string
	Created    time.Time
	Size       int64
	SharedSize int64
	UniqueSize int64
	Containers int
}

SystemDfImageReport describes an image for use with df

type SystemDfOptions

type SystemDfOptions struct {
	Format  string
	Verbose bool
}

SystemDfOptions describes the options for getting df information

type SystemDfReport

type SystemDfReport struct {
	ImagesSize int64
	Images     []*SystemDfImageReport
	Containers []*SystemDfContainerReport
	Volumes    []*SystemDfVolumeReport
}

SystemDfReport describes the response for df information

type SystemDfVolumeReport

type SystemDfVolumeReport struct {
	VolumeName      string
	Links           int
	Size            int64
	ReclaimableSize int64
}

SystemDfVolumeReport describes a volume and its size

type SystemMigrateOptions

type SystemMigrateOptions struct {
	NewRuntime string
}

SystemMigrateOptions describes the options needed for the cli to migrate runtimes of containers

type SystemPruneOptions

type SystemPruneOptions struct {
	All      bool
	Volume   bool
	Filters  map[string][]string `json:"filters" schema:"filters"`
	External bool
}

SystemPruneOptions provides options to prune system.

type SystemPruneReport

type SystemPruneReport struct {
	PodPruneReport        []*PodPruneReport
	ContainerPruneReports []*reports.PruneReport
	ImagePruneReports     []*reports.PruneReport
	NetworkPruneReports   []*NetworkPruneReport
	VolumePruneReports    []*reports.PruneReport
	ReclaimedSpace        uint64
}

SystemPruneReport provides report after system prune is executed.

type SystemUnshareOptions

type SystemUnshareOptions struct {
	RootlessNetNS bool
}

SystemUnshareOptions describes the options for the unshare command

type SystemVersionReport

type SystemVersionReport struct {
	// Always populated
	Client *define.Version `json:",omitempty"`
	// May be populated, when in tunnel mode
	Server *define.Version `json:",omitempty"`
}

SystemVersionReport describes version information about the running Podman service

type TopOptions

type TopOptions struct {
	// CLI flags.
	ListDescriptors bool
	Latest          bool

	// Options for the API.
	Descriptors []string
	NameOrID    string
}

type Volume

type Volume struct {
	Identifier
}

type VolumeConfigResponse

type VolumeConfigResponse struct {
	define.InspectVolumeData
}

type VolumeCreateOptions

type VolumeCreateOptions struct {
	// New volume's name. Can be left blank
	Name string `schema:"name"`
	// Volume driver to use
	Driver string `schema:"driver"`
	// User-defined key/value metadata. Provided for compatibility
	Label map[string]string `schema:"label"`
	// User-defined key/value metadata. Preferred field, will override Label
	Labels map[string]string `schema:"labels"`
	// Mapping of driver options and values.
	Options map[string]string `schema:"opts"`
	// Ignore existing volumes
	IgnoreIfExists bool `schema:"ignoreIfExist"`
}

VolumeCreateOptions provides details for creating volumes swagger:model

type VolumeDeleteOptions

type VolumeDeleteOptions struct{}

type VolumeDeleteReport

type VolumeDeleteReport struct{ Report }

type VolumeFilter

type VolumeFilter func(Volume) bool

func CompileVolumeFilters

func CompileVolumeFilters(filters url.Values) VolumeFilter

type VolumeInspectReport

type VolumeInspectReport struct {
	*VolumeConfigResponse
}

type VolumeListOptions

type VolumeListOptions struct {
	Filter map[string][]string
}

type VolumeListReport

type VolumeListReport struct {
	VolumeConfigResponse
}

type VolumeMountReport added in v4.1.0

type VolumeMountReport struct {
	Err  error
	Id   string //nolint:revive,stylecheck
	Name string
	Path string
}

VolumeMountReport describes the response from volume mount

type VolumePruneOptions

type VolumePruneOptions struct {
	Filters url.Values `json:"filters" schema:"filters"`
}

VolumePruneOptions describes the options needed to prune a volume from the CLI

type VolumeReloadReport added in v4.2.0

type VolumeReloadReport struct {
	define.VolumeReload
}

VolumeReloadReport describes the response from reload volume plugins

type VolumeRmOptions

type VolumeRmOptions struct {
	All     bool
	Force   bool
	Ignore  bool
	Timeout *uint
}

type VolumeRmReport

type VolumeRmReport struct {
	Err error
	Id  string //nolint:revive,stylecheck
}

type VolumeUnmountReport added in v4.1.0

type VolumeUnmountReport struct {
	Err error
	Id  string //nolint:revive,stylecheck
}

VolumeUnmountReport describes the response from umounting a volume

type WaitOptions

type WaitOptions struct {
	// Conditions to wait on.  Includes container statuses such as
	// "running" or "stopped" and health-related values such "healthy".
	Conditions []string
	// Time interval to wait before polling for completion.
	Interval time.Duration
	// Ignore errors when a specified container is missing and mark its
	// return code as -1.
	Ignore bool
	// Use the latest created container.
	Latest bool
}

WaitOptions are arguments for waiting for a container.

type WaitReport

type WaitReport struct {
	// Error while waiting.
	Error error
	// ExitCode of the container.
	ExitCode int32
}

WaitReport is the result of waiting a container.

Directories

Path Synopsis
copied from github.com/docker/docker/api/types
copied from github.com/docker/docker/api/types

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL