container_runtime

package
v1.2.0-alpha5 Latest Latest
Warning

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

Go to latest
Published: Oct 8, 2020 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ContainerLockName

func ContainerLockName(containerName string) string

func ImageLockName

func ImageLockName(imageName string) string

func ShelloutPack

func ShelloutPack(command string) string

Types

type BuildOptions

type BuildOptions struct {
	IntrospectBeforeError bool
	IntrospectAfterError  bool
}

type BuilderContainer

type BuilderContainer interface {
	AddServiceRunCommands(commands ...string)
	AddRunCommands(commands ...string)

	AddVolume(volumes ...string)
	AddVolumeFrom(volumesFrom ...string)
	AddExpose(exposes ...string)
	AddEnv(envs map[string]string)
	AddLabel(labels map[string]string)
}

type Container

type Container interface {
	Name() string

	UserRunCommands() []string
	UserCommitChanges() []string

	AddServiceRunCommands(commands ...string)
	AddRunCommands(commands ...string)

	RunOptions() ContainerOptions
	CommitChangeOptions() ContainerOptions
	ServiceCommitChangeOptions() ContainerOptions
}

type ContainerOptions

type ContainerOptions interface {
	AddVolume(volumes ...string)
	AddVolumeFrom(volumesFrom ...string)
	AddExpose(exposes ...string)
	AddEnv(envs map[string]string)
	AddLabel(labels map[string]string)
	AddCmd(cmd string)
	AddWorkdir(workdir string)
	AddUser(user string)
	AddEntrypoint(entrypoint string)
	AddHealthCheck(check string)
}

type ContainerRuntime

type ContainerRuntime interface {
	RefreshImageObject(ctx context.Context, img Image) error
	PullImageFromRegistry(ctx context.Context, img Image) error
	RenameImage(ctx context.Context, img Image, newImageName string, removeOldName bool) error
	RemoveImage(ctx context.Context, img Image) error
	String() string
}

type DockerImage

type DockerImage struct {
	Image ImageInterface
}

type DockerfileImageBuilder

type DockerfileImageBuilder struct {
	BuildArgs []string
	// contains filtered or unexported fields
}

func NewDockerfileImageBuilder

func NewDockerfileImageBuilder() *DockerfileImageBuilder

func (*DockerfileImageBuilder) AppendBuildArgs

func (b *DockerfileImageBuilder) AppendBuildArgs(buildArgs ...string)

func (*DockerfileImageBuilder) Build

func (*DockerfileImageBuilder) Cleanup

func (b *DockerfileImageBuilder) Cleanup(ctx context.Context) error

func (*DockerfileImageBuilder) GetBuiltId

func (b *DockerfileImageBuilder) GetBuiltId() string

type Image

type Image interface{}

type ImageInterface

type ImageInterface interface {
	Name() string
	SetName(name string)

	Pull(ctx context.Context) error
	Untag(ctx context.Context) error

	// TODO: build specifics for stapel builder and dockerfile builder
	// TODO: should be under a single separate interface
	Container() Container
	BuilderContainer() BuilderContainer
	DockerfileImageBuilder() *DockerfileImageBuilder

	Build(context.Context, BuildOptions) error
	GetBuiltId() string
	TagBuiltImage(ctx context.Context, name string) error
	Export(ctx context.Context, name string) error

	Introspect(ctx context.Context) error

	SetInspect(inspect *types.ImageInspect)
	IsExistsLocally() bool

	SetStageDescription(stage *image.StageDescription)
	GetStageDescription() *image.StageDescription
}

type LocalDockerServerRuntime

type LocalDockerServerRuntime struct{}

func (*LocalDockerServerRuntime) GetImageInspect

func (runtime *LocalDockerServerRuntime) GetImageInspect(ctx context.Context, ref string) (*types.ImageInspect, error)

GetImageInspect only available for LocalDockerServerRuntime

func (*LocalDockerServerRuntime) PullImage added in v1.1.23

func (runtime *LocalDockerServerRuntime) PullImage(ctx context.Context, ref string) error

PullImage only available for LocalDockerServerRuntime

func (*LocalDockerServerRuntime) PullImageFromRegistry

func (runtime *LocalDockerServerRuntime) PullImageFromRegistry(ctx context.Context, img Image) error

func (*LocalDockerServerRuntime) PushBuiltImage

func (runtime *LocalDockerServerRuntime) PushBuiltImage(ctx context.Context, img Image) error

PushBuiltImage is only available for LocalDockerServerRuntime

func (*LocalDockerServerRuntime) PushImage

func (runtime *LocalDockerServerRuntime) PushImage(ctx context.Context, img Image) error

func (*LocalDockerServerRuntime) RefreshImageObject

func (runtime *LocalDockerServerRuntime) RefreshImageObject(ctx context.Context, img Image) error

func (*LocalDockerServerRuntime) RemoveImage

func (runtime *LocalDockerServerRuntime) RemoveImage(ctx context.Context, img Image) error

func (*LocalDockerServerRuntime) RenameImage

func (runtime *LocalDockerServerRuntime) RenameImage(ctx context.Context, img Image, newImageName string, removeOldName bool) error

func (*LocalDockerServerRuntime) String

func (runtime *LocalDockerServerRuntime) String() string

func (*LocalDockerServerRuntime) TagBuiltImageByName

func (runtime *LocalDockerServerRuntime) TagBuiltImageByName(ctx context.Context, img Image) error

TagBuiltImageByName is only available for LocalDockerServerRuntime

type LocalHostRuntime

type LocalHostRuntime struct {
	ContainerRuntime // TODO: kaniko-like builds
}

func (*LocalHostRuntime) String

func (runtime *LocalHostRuntime) String() string

type StageImage

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

func NewStageImage

func NewStageImage(fromImage *StageImage, name string, localDockerServerRuntime *LocalDockerServerRuntime) *StageImage

func (*StageImage) Build

func (i *StageImage) Build(ctx context.Context, options BuildOptions) error

func (*StageImage) BuilderContainer

func (i *StageImage) BuilderContainer() BuilderContainer

func (*StageImage) Commit

func (i *StageImage) Commit(ctx context.Context) error

func (*StageImage) Container

func (i *StageImage) Container() Container

func (*StageImage) DockerfileImageBuilder

func (i *StageImage) DockerfileImageBuilder() *DockerfileImageBuilder

func (*StageImage) Export

func (i *StageImage) Export(ctx context.Context, name string) error

func (*StageImage) GetBuiltId

func (i *StageImage) GetBuiltId() string

func (*StageImage) GetID

func (i *StageImage) GetID() string

func (*StageImage) GetInspect

func (i *StageImage) GetInspect() *types.ImageInspect

func (StageImage) GetStageDescription

func (i StageImage) GetStageDescription() *image.StageDescription

func (*StageImage) Import

func (i *StageImage) Import(ctx context.Context, name string) error

func (*StageImage) Inspect

func (i *StageImage) Inspect() *types.ImageInspect

func (*StageImage) Introspect

func (i *StageImage) Introspect(ctx context.Context) error

func (StageImage) IsExistsLocally

func (i StageImage) IsExistsLocally() bool

func (*StageImage) MustGetBuiltId

func (i *StageImage) MustGetBuiltId() string

func (*StageImage) MustResetInspect

func (i *StageImage) MustResetInspect(ctx context.Context) error

func (StageImage) Name

func (i StageImage) Name() string

func (*StageImage) Pull

func (i *StageImage) Pull(ctx context.Context) error

func (*StageImage) Push

func (i *StageImage) Push(ctx context.Context) error

func (StageImage) SetInspect

func (i StageImage) SetInspect(inspect *types.ImageInspect)

func (StageImage) SetName

func (i StageImage) SetName(name string)

func (StageImage) SetStageDescription

func (i StageImage) SetStageDescription(stageDesc *image.StageDescription)

func (*StageImage) Tag

func (i *StageImage) Tag(ctx context.Context, name string) error

func (*StageImage) TagBuiltImage

func (i *StageImage) TagBuiltImage(ctx context.Context, name string) error

func (StageImage) UnsetInspect

func (i StageImage) UnsetInspect()

func (StageImage) Untag

func (i StageImage) Untag(ctx context.Context) error

type StageImageBuilderContainer

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

func (*StageImageBuilderContainer) AddEnv

func (c *StageImageBuilderContainer) AddEnv(envs map[string]string)

func (*StageImageBuilderContainer) AddExpose

func (c *StageImageBuilderContainer) AddExpose(exposes ...string)

func (*StageImageBuilderContainer) AddLabel

func (c *StageImageBuilderContainer) AddLabel(labels map[string]string)

func (*StageImageBuilderContainer) AddRunCommands

func (c *StageImageBuilderContainer) AddRunCommands(commands ...string)

func (*StageImageBuilderContainer) AddServiceRunCommands

func (c *StageImageBuilderContainer) AddServiceRunCommands(commands ...string)

func (*StageImageBuilderContainer) AddVolume

func (c *StageImageBuilderContainer) AddVolume(volumes ...string)

func (*StageImageBuilderContainer) AddVolumeFrom

func (c *StageImageBuilderContainer) AddVolumeFrom(volumesFrom ...string)

type StageImageContainer

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

func (*StageImageContainer) AddRunCommands

func (c *StageImageContainer) AddRunCommands(commands ...string)

func (*StageImageContainer) AddServiceRunCommands

func (c *StageImageContainer) AddServiceRunCommands(commands ...string)

func (*StageImageContainer) CommitChangeOptions

func (c *StageImageContainer) CommitChangeOptions() ContainerOptions

func (*StageImageContainer) Name

func (c *StageImageContainer) Name() string

func (*StageImageContainer) RunOptions

func (c *StageImageContainer) RunOptions() ContainerOptions

func (*StageImageContainer) ServiceCommitChangeOptions

func (c *StageImageContainer) ServiceCommitChangeOptions() ContainerOptions

func (*StageImageContainer) UserCommitChanges

func (c *StageImageContainer) UserCommitChanges() []string

func (*StageImageContainer) UserRunCommands

func (c *StageImageContainer) UserRunCommands() []string

type StageImageContainerOptions

type StageImageContainerOptions struct {
	Volume      []string
	VolumesFrom []string
	Expose      []string
	Env         map[string]string
	Label       map[string]string
	Cmd         string
	Workdir     string
	User        string
	Entrypoint  string
	HealthCheck string
}

func (*StageImageContainerOptions) AddCmd

func (co *StageImageContainerOptions) AddCmd(cmd string)

func (*StageImageContainerOptions) AddEntrypoint

func (co *StageImageContainerOptions) AddEntrypoint(entrypoint string)

func (*StageImageContainerOptions) AddEnv

func (co *StageImageContainerOptions) AddEnv(envs map[string]string)

func (*StageImageContainerOptions) AddExpose

func (co *StageImageContainerOptions) AddExpose(exposes ...string)

func (*StageImageContainerOptions) AddHealthCheck

func (co *StageImageContainerOptions) AddHealthCheck(check string)

func (*StageImageContainerOptions) AddLabel

func (co *StageImageContainerOptions) AddLabel(labels map[string]string)

func (*StageImageContainerOptions) AddUser

func (co *StageImageContainerOptions) AddUser(user string)

func (*StageImageContainerOptions) AddVolume

func (co *StageImageContainerOptions) AddVolume(volumes ...string)

func (*StageImageContainerOptions) AddVolumeFrom

func (co *StageImageContainerOptions) AddVolumeFrom(volumesFrom ...string)

func (*StageImageContainerOptions) AddWorkdir

func (co *StageImageContainerOptions) AddWorkdir(workdir string)

type WerfImage

type WerfImage struct {
	*StageImage
}

func NewWerfImage

func NewWerfImage(fromImage *StageImage, name string, localDockerServerRuntime *LocalDockerServerRuntime) *WerfImage

func (*WerfImage) Export

func (i *WerfImage) Export(ctx context.Context) error

func (WerfImage) GetStageDescription

func (i WerfImage) GetStageDescription() *image.StageDescription

func (WerfImage) IsExistsLocally

func (i WerfImage) IsExistsLocally() bool

func (WerfImage) Name

func (i WerfImage) Name() string

func (WerfImage) SetInspect

func (i WerfImage) SetInspect(inspect *types.ImageInspect)

func (WerfImage) SetName

func (i WerfImage) SetName(name string)

func (WerfImage) SetStageDescription

func (i WerfImage) SetStageDescription(stageDesc *image.StageDescription)

func (*WerfImage) Tag

func (i *WerfImage) Tag(ctx context.Context) error

func (WerfImage) UnsetInspect

func (i WerfImage) UnsetInspect()

func (WerfImage) Untag

func (i WerfImage) Untag(ctx context.Context) error

Jump to

Keyboard shortcuts

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