dockercompose

package
v0.30.0 Latest Latest
Warning

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

Go to latest
Published: May 12, 2022 License: Apache-2.0 Imports: 31 Imported by: 0

Documentation

Index

Constants

View Source
const ContainerStatusCreated = "created"

Status strings taken from comments on: https://godoc.org/github.com/docker/docker/api/types#ContainerState

View Source
const ContainerStatusDead = "dead"
View Source
const ContainerStatusExited = "exited"
View Source
const ContainerStatusPaused = "paused"
View Source
const ContainerStatusRemoving = "removing"
View Source
const ContainerStatusRestarting = "restarting"
View Source
const ContainerStatusRunning = "running"
View Source
const ZeroTime = "0001-01-01T00:00:00Z"

Helper functions for dealing with ContainerState.

Variables

This section is empty.

Functions

func FormatError

func FormatError(cmd *exec.Cmd, stdout []byte, err error) error

func ToContainerState added in v0.26.0

func ToContainerState(state *types.ContainerState) *v1alpha1.DockerContainerState

Convert ContainerState into an apiserver-compatible state model.

func ToServiceStatus added in v0.26.0

func ToServiceStatus(id container.ID, name string, state *types.ContainerState, ports nat.PortMap) v1alpha1.DockerComposeServiceStatus

Convert a full into an apiserver-compatible status model.

Types

type Attributes

type Attributes struct {
	Name  string `json:"name"`
	Image string `json:"image"`
}

type DockerComposeClient

type DockerComposeClient interface {
	Up(ctx context.Context, spec v1alpha1.DockerComposeServiceSpec, shouldBuild bool, stdout, stderr io.Writer) error
	Down(ctx context.Context, spec v1alpha1.DockerComposeProject, stdout, stderr io.Writer) error
	Rm(ctx context.Context, specs []v1alpha1.DockerComposeServiceSpec, stdout, stderr io.Writer) error
	StreamLogs(ctx context.Context, spec v1alpha1.DockerComposeServiceSpec) io.ReadCloser
	StreamEvents(ctx context.Context, spec v1alpha1.DockerComposeProject) (<-chan string, error)
	Project(ctx context.Context, spec v1alpha1.DockerComposeProject) (*types.Project, error)
	ContainerID(ctx context.Context, spec v1alpha1.DockerComposeServiceSpec) (container.ID, error)
	Version(ctx context.Context) (canonicalVersion string, build string, err error)
}

func NewDockerComposeClient

func NewDockerComposeClient(env docker.LocalEnv) DockerComposeClient

TODO(dmiller): we might want to make this take a path to the docker-compose config so we don't have to keep passing it in.

type DownCall added in v0.23.5

type DownCall struct {
	Proj v1alpha1.DockerComposeProject
}

Represents a single call to Down

type Event

type Event struct {
	Time       string     `json:"time"` // todo: time
	Type       Type       `json:"type"`
	Action     string     `json:"action"`
	ID         string     `json:"id"` // todo: type?
	Service    string     `json:"service"`
	Attributes Attributes `json:"attributes"`
}

func EventFromJsonStr

func EventFromJsonStr(j string) (Event, error)

type FakeDCClient

type FakeDCClient struct {
	RunLogOutput      map[string]<-chan string
	ContainerIdOutput container.ID

	ConfigOutput  string
	VersionOutput string

	DownError error
	RmError   error
	RmOutput  string
	WorkDir   string
	// contains filtered or unexported fields
}

func NewFakeDockerComposeClient

func NewFakeDockerComposeClient(t *testing.T, ctx context.Context) *FakeDCClient

func (*FakeDCClient) Config

func (c *FakeDCClient) Config(_ context.Context, _ []string) (string, error)

func (*FakeDCClient) ContainerID added in v0.5.1

func (*FakeDCClient) Down

func (c *FakeDCClient) Down(ctx context.Context, proj v1alpha1.DockerComposeProject, stdout, stderr io.Writer) error

func (*FakeDCClient) DownCalls added in v0.23.5

func (c *FakeDCClient) DownCalls() []DownCall

func (*FakeDCClient) Project added in v0.22.1

func (*FakeDCClient) Rm added in v0.23.5

func (c *FakeDCClient) Rm(ctx context.Context, specs []v1alpha1.DockerComposeServiceSpec, stdout, stderr io.Writer) error

func (*FakeDCClient) RmCalls added in v0.23.5

func (c *FakeDCClient) RmCalls() []RmCall

func (*FakeDCClient) SendEvent

func (c *FakeDCClient) SendEvent(evt Event) error

func (*FakeDCClient) StreamEvents

func (c *FakeDCClient) StreamEvents(ctx context.Context, p v1alpha1.DockerComposeProject) (<-chan string, error)

func (*FakeDCClient) StreamLogs

func (*FakeDCClient) Up

func (c *FakeDCClient) Up(ctx context.Context, spec v1alpha1.DockerComposeServiceSpec,
	shouldBuild bool, stdout, stderr io.Writer) error

func (*FakeDCClient) UpCalls added in v0.6.0

func (c *FakeDCClient) UpCalls() []UpCall

func (*FakeDCClient) Version added in v0.22.9

func (c *FakeDCClient) Version(_ context.Context) (string, string, error)

type RmCall added in v0.23.5

type RmCall struct {
	Specs []v1alpha1.DockerComposeServiceSpec
}

type State

type State struct {
	ContainerState v1alpha1.DockerContainerState
	ContainerID    container.ID
	Ports          []v1alpha1.DockerPortBinding
	LastReadyTime  time.Time

	SpanID model.LogSpanID
}

func (State) HasEverBeenReadyOrSucceeded added in v0.14.0

func (s State) HasEverBeenReadyOrSucceeded() bool

func (State) RuntimeState added in v0.10.5

func (State) RuntimeState()

func (State) RuntimeStatus added in v0.14.0

func (s State) RuntimeStatus() v1alpha1.RuntimeStatus

func (State) RuntimeStatusError added in v0.14.0

func (s State) RuntimeStatusError() error

func (State) WithContainerID added in v0.5.0

func (s State) WithContainerID(cID container.ID) State

func (State) WithContainerState added in v0.14.0

func (s State) WithContainerState(state v1alpha1.DockerContainerState) State

func (State) WithPorts added in v0.22.12

func (s State) WithPorts(ports []v1alpha1.DockerPortBinding) State

func (State) WithSpanID added in v0.10.25

func (s State) WithSpanID(spanID model.LogSpanID) State

type Type

type Type int

https://docs.docker.com/engine/reference/commandline/events/

const (
	// Add 'types' here (and to `stringToType` below) as we support them
	TypeUnknown Type = iota
	TypeContainer
)

func (Type) MarshalJSON added in v0.4.3

func (t Type) MarshalJSON() ([]byte, error)

func (Type) String added in v0.4.3

func (t Type) String() string

func (*Type) UnmarshalJSON

func (t *Type) UnmarshalJSON(b []byte) error

type UpCall added in v0.6.0

type UpCall struct {
	Spec        v1alpha1.DockerComposeServiceSpec
	ShouldBuild bool
}

Represents a single call to Up

Jump to

Keyboard shortcuts

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