exec

package
v1.6.0 Latest Latest
Warning

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

Go to latest
Published: Apr 29, 2021 License: Apache-2.0 Imports: 22 Imported by: 0

Documentation

Overview

Package exec provides an interface to execute certain commands.

Package exec provides an interface to execute certain commands.

Package exec provides an interface to execute certain commands.

Package exec provides an interface to execute certain commands.

Package exec provides an interface to execute certain commands.

Package exec provides an interface to execute certain commands.

Package exec provides an interface to execute certain commands.

Index

Constants

This section is empty.

Variables

View Source
var ErrDockerCommandNotFound = errors.New("docker: command not found")

ErrDockerCommandNotFound means the docker command is not found.

Functions

This section is empty.

Types

type BuildArguments

type BuildArguments struct {
	URI        string            // Required. Location of ECR Repo. Used to generate image name in conjunction with tag.
	Tags       []string          // Optional. List of tags to apply to the image besides "latest".
	Dockerfile string            // Required. Dockerfile to pass to `docker build` via --file flag.
	Context    string            // Optional. Build context directory to pass to `docker build`
	Target     string            // Optional. The target build stage to pass to `docker build`
	CacheFrom  []string          // Optional. Images to consider as cache sources to pass to `docker build`
	Args       map[string]string // Optional. Build args to pass via `--build-arg` flags. Equivalent to ARG directives in dockerfile.
}

BuildArguments holds the arguments we can pass in as flags from the manifest.

type DockerCommand

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

DockerCommand represents docker commands that can be run.

func NewDockerCommand

func NewDockerCommand() DockerCommand

NewDockerCommand returns a DockerCommand.

func (DockerCommand) Build

func (c DockerCommand) Build(in *BuildArguments) error

Build will run a `docker build` command for the given ecr repo URI and build arguments.

func (DockerCommand) CheckDockerEngineRunning

func (c DockerCommand) CheckDockerEngineRunning() error

CheckDockerEngineRunning will run `docker info` command to check if the docker engine is running.

func (DockerCommand) Login

func (c DockerCommand) Login(uri, username, password string) error

Login will run a `docker login` command against the Service repository URI with the input uri and auth data.

func (DockerCommand) Push

func (c DockerCommand) Push(uri string, tags ...string) (digest string, err error)

Push pushes the images with the specified tags and ecr repository URI, and returns the image digest on success.

type Dockerfile

type Dockerfile struct {
	ExposedPorts []portConfig
	HealthCheck  *HealthCheck
	// contains filtered or unexported fields
}

Dockerfile represents a parsed Dockerfile.

func NewDockerfile

func NewDockerfile(fs afero.Fs, path string) *Dockerfile

NewDockerfile returns an empty Dockerfile.

func (*Dockerfile) GetExposedPorts

func (df *Dockerfile) GetExposedPorts() ([]uint16, error)

GetExposedPorts returns a uint16 slice of exposed ports found in the Dockerfile.

func (*Dockerfile) GetHealthCheck

func (df *Dockerfile) GetHealthCheck() (*HealthCheck, error)

GetHealthCheck parses the HEALTHCHECK instruction from the Dockerfile and returns it. If the HEALTHCHECK is NONE or there is no instruction, returns nil.

type ErrDockerDaemonNotResponsive

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

ErrDockerDaemonNotResponsive means the docker daemon is not responsive.

func (ErrDockerDaemonNotResponsive) Error

type ErrInvalidPort

type ErrInvalidPort struct {
	Match string
}

ErrInvalidPort means that while there was a port provided, it was out of bounds or unparseable

func (ErrInvalidPort) Error

func (e ErrInvalidPort) Error() string

type ErrNoExpose

type ErrNoExpose struct {
	Dockerfile string
}

ErrNoExpose means there were no documented EXPOSE statements in the given dockerfile.

func (ErrNoExpose) Error

func (e ErrNoExpose) Error() string

type ErrOutdatedSSMPlugin added in v1.4.0

type ErrOutdatedSSMPlugin struct {
	CurrentVersion string
	LatestVersion  string
}

ErrOutdatedSSMPlugin means the ssm plugin is not up-to-date.

func (ErrOutdatedSSMPlugin) Error added in v1.4.0

func (e ErrOutdatedSSMPlugin) Error() string

type ErrSSMPluginNotExist added in v1.4.0

type ErrSSMPluginNotExist struct{}

ErrSSMPluginNotExist means the ssm plugin is not installed.

func (ErrSSMPluginNotExist) Error added in v1.4.0

func (e ErrSSMPluginNotExist) Error() string

type HealthCheck

type HealthCheck struct {
	Interval    time.Duration
	Timeout     time.Duration
	StartPeriod time.Duration
	Retries     int
	Cmd         []string
}

HealthCheck represents health check options for a Dockerfile.

type SSMPluginCommand added in v1.4.0

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

SSMPluginCommand represents commands that can be run to trigger the ssm plugin.

func NewSSMPluginCommand added in v1.4.0

func NewSSMPluginCommand(s *session.Session) SSMPluginCommand

NewSSMPluginCommand returns a SSMPluginCommand.

func (SSMPluginCommand) InstallLatestBinary added in v1.4.0

func (s SSMPluginCommand) InstallLatestBinary() error

InstallLatestBinary installs the latest ssm plugin.

func (SSMPluginCommand) StartSession added in v1.4.0

func (s SSMPluginCommand) StartSession(ssmSess *ecs.Session) error

StartSession starts a session using the ssm plugin.

func (SSMPluginCommand) ValidateBinary added in v1.4.0

func (s SSMPluginCommand) ValidateBinary() error

ValidateBinary validates if the ssm plugin exists and needs update.

Directories

Path Synopsis
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.

Jump to

Keyboard shortcuts

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