Documentation ¶
Overview ¶
This package is here to allow mocks to be generated of all the calls that touch the filesystem or docker. With these, it is easy to write unit tests of the pickett logic. The interfaces in this package are designed to be independent and thus do not call each other.
Index ¶
- Constants
- Variables
- type BuildConfig
- type CopyArtifact
- type DockerCli
- type EtcdClient
- type Helper
- type InspectedContainer
- type InspectedImage
- type MockDockerCli
- func (_m *MockDockerCli) CmdBuild(_param0 *BuildConfig, _param1 string, _param2 string) error
- func (_m *MockDockerCli) CmdCommit(_param0 string, _param1 *TagInfo) (string, error)
- func (_m *MockDockerCli) CmdCopy(_param0 map[string]string, _param1 string, _param2 string, ...) error
- func (_m *MockDockerCli) CmdLastModTime(_param0 map[string]string, _param1 string, _param2 []*CopyArtifact) (time.Time, error)
- func (_m *MockDockerCli) CmdRmContainer(_param0 string) error
- func (_m *MockDockerCli) CmdRmImage(_param0 string) error
- func (_m *MockDockerCli) CmdRun(_param0 *RunConfig, _param1 ...string) (*bytes.Buffer, string, error)
- func (_m *MockDockerCli) CmdStop(_param0 string) error
- func (_m *MockDockerCli) CmdTag(_param0 string, _param1 bool, _param2 *TagInfo) error
- func (_m *MockDockerCli) EXPECT() *_MockDockerCliRecorder
- func (_m *MockDockerCli) InspectContainer(_param0 string) (InspectedContainer, error)
- func (_m *MockDockerCli) InspectImage(_param0 string) (InspectedImage, error)
- func (_m *MockDockerCli) ListContainers() (apiContainers, error)
- func (_m *MockDockerCli) ListImages() (apiImages, error)
- type MockEtcdClient
- func (_m *MockEtcdClient) Children(_param0 string) ([]string, bool, error)
- func (_m *MockEtcdClient) Del(_param0 string) (string, error)
- func (_m *MockEtcdClient) EXPECT() *_MockEtcdClientRecorder
- func (_m *MockEtcdClient) Get(_param0 string) (string, bool, error)
- func (_m *MockEtcdClient) Put(_param0 string, _param1 string) (string, error)
- func (_m *MockEtcdClient) RecursiveDel(_param0 string) (string, error)
- type MockHelper
- func (_m *MockHelper) ConfigFile() string
- func (_m *MockHelper) ConfigReader() io.Reader
- func (_m *MockHelper) DirectoryRelative(dir string) string
- func (_m *MockHelper) EXPECT() *_MockHelperRecorder
- func (_m *MockHelper) LastTimeInDir(_param0 string) (time.Time, error)
- func (_m *MockHelper) LastTimeInDirRelative(_param0 string) (time.Time, error)
- func (_m *MockHelper) OpenDockerfileRelative(dir string) (io.Reader, error)
- func (_m *MockHelper) OpenFileRelative(path string) (*os.File, error)
- type MockInspectedContainer
- func (_m *MockInspectedContainer) ContainerID() string
- func (_m *MockInspectedContainer) ContainerName() string
- func (_m *MockInspectedContainer) CreatedTime() time.Time
- func (_m *MockInspectedContainer) EXPECT() *_MockInspectedContainerRecorder
- func (_m *MockInspectedContainer) ExitStatus() int
- func (_m *MockInspectedContainer) Ip() string
- func (_m *MockInspectedContainer) Ports() []string
- func (_m *MockInspectedContainer) Running() bool
- type MockInspectedImage
- type Port
- type PortBinding
- type RunConfig
- type TagInfo
Constants ¶
const (
A_LONG_TIME = 90 * 24 * 60 * 60
)
const (
PICKETT_KEYSPACE = "/pickett/"
)
Variables ¶
var ( NO_DOCKER_HOST = errors.New("no DOCKER_HOST found in environment, please set it") BAD_DOCKER_HOST_FORMAT = errors.New("DOCKER_HOST found, but should be protocol://host:port") BAD_INSPECT_RESULT = errors.New("unable to understand result of docker inspect") )
var DIE = []string{
"dead",
"deceased",
"passed",
"strangled",
"poisoned",
"murdered",
"overdosed",
"killed",
"bumpedoff",
"fell",
"drowned",
"shot",
"stabbed",
"crushed",
"burned",
"immolated",
"fried",
"electrocuted",
"hung",
"slipped",
"crashed",
}
var EMPTY struct{}
var STAR = []string{
"elvis",
"lennon",
"hendrix",
"joplin",
"holly",
"cobain",
"vicious",
"curtis",
"garcia",
"moon",
"cash",
"morrisson",
"ramone",
"entwhistle",
"valens",
"bono",
"cook",
"epstein",
"jones",
"croce",
"moon",
"bonham",
"haley",
"wilson",
"marley",
"hutchence",
"perkins",
"falco",
"strummer",
"gibb",
"zevon",
"brown",
"mca",
"winehouse",
"manzarek",
}
Functions ¶
This section is empty.
Types ¶
type BuildConfig ¶
type CopyArtifact ¶
type CopyArtifact struct {
SourcePath, DestinationDir string
}
type DockerCli ¶
type DockerCli interface { CmdRun(*RunConfig, ...string) (*bytes.Buffer, string, error) CmdTag(string, bool, *TagInfo) error CmdCommit(string, *TagInfo) (string, error) CmdBuild(*BuildConfig, string, string) error //Copy actually does two different things: copies artifacts from the source tree into a tarball //or copies artifacts from a container (given here as an image) into a tarball. In both cases //the resulting tarball is sent to the docker server for a build. CmdCopy(map[string]string, string, string, []*CopyArtifact, string) error CmdLastModTime(map[string]string, string, []*CopyArtifact) (time.Time, error) CmdStop(string) error CmdRmContainer(string) error CmdRmImage(string) error InspectImage(string) (InspectedImage, error) InspectContainer(string) (InspectedContainer, error) ListContainers() (apiContainers, error) ListImages() (apiImages, error) }
func NewDockerCli ¶
NewDocker returns a connection to the docker server. Pickett assumes that the DockerCli is "passed in from the outside".
type EtcdClient ¶
type EtcdClient interface { Get(string) (string, bool, error) Put(string, string) (string, error) Del(string) (string, error) Children(string) ([]string, bool, error) RecursiveDel(string) (string, error) }
func NewEtcdClient ¶
func NewEtcdClient() (EtcdClient, error)
type Helper ¶
type Helper interface { OpenDockerfileRelative(dir string) (io.Reader, error) OpenFileRelative(path string) (*os.File, error) DirectoryRelative(dir string) string ConfigReader() io.Reader ConfigFile() string LastTimeInDirRelative(string) (time.Time, error) LastTimeInDir(string) (time.Time, error) }
Helper abstracts IO to make things easier to test. It is responsible for things that touch the filesystem, fatally exit, or stdout/stderr.
type InspectedContainer ¶
type InspectedImage ¶
type MockDockerCli ¶
type MockDockerCli struct {
// contains filtered or unexported fields
}
Mock of DockerCli interface
func NewMockDockerCli ¶
func NewMockDockerCli(ctrl *gomock.Controller) *MockDockerCli
func (*MockDockerCli) CmdBuild ¶
func (_m *MockDockerCli) CmdBuild(_param0 *BuildConfig, _param1 string, _param2 string) error
func (*MockDockerCli) CmdCommit ¶
func (_m *MockDockerCli) CmdCommit(_param0 string, _param1 *TagInfo) (string, error)
func (*MockDockerCli) CmdCopy ¶
func (_m *MockDockerCli) CmdCopy(_param0 map[string]string, _param1 string, _param2 string, _param3 []*CopyArtifact, _param4 string) error
func (*MockDockerCli) CmdLastModTime ¶
func (_m *MockDockerCli) CmdLastModTime(_param0 map[string]string, _param1 string, _param2 []*CopyArtifact) (time.Time, error)
func (*MockDockerCli) CmdRmContainer ¶
func (_m *MockDockerCli) CmdRmContainer(_param0 string) error
func (*MockDockerCli) CmdRmImage ¶
func (_m *MockDockerCli) CmdRmImage(_param0 string) error
func (*MockDockerCli) CmdStop ¶
func (_m *MockDockerCli) CmdStop(_param0 string) error
func (*MockDockerCli) CmdTag ¶
func (_m *MockDockerCli) CmdTag(_param0 string, _param1 bool, _param2 *TagInfo) error
func (*MockDockerCli) EXPECT ¶
func (_m *MockDockerCli) EXPECT() *_MockDockerCliRecorder
func (*MockDockerCli) InspectContainer ¶
func (_m *MockDockerCli) InspectContainer(_param0 string) (InspectedContainer, error)
func (*MockDockerCli) InspectImage ¶
func (_m *MockDockerCli) InspectImage(_param0 string) (InspectedImage, error)
func (*MockDockerCli) ListContainers ¶
func (_m *MockDockerCli) ListContainers() (apiContainers, error)
func (*MockDockerCli) ListImages ¶
func (_m *MockDockerCli) ListImages() (apiImages, error)
type MockEtcdClient ¶
type MockEtcdClient struct {
// contains filtered or unexported fields
}
Mock of EtcdClient interface
func NewMockEtcdClient ¶
func NewMockEtcdClient(ctrl *gomock.Controller) *MockEtcdClient
func (*MockEtcdClient) Children ¶
func (_m *MockEtcdClient) Children(_param0 string) ([]string, bool, error)
func (*MockEtcdClient) EXPECT ¶
func (_m *MockEtcdClient) EXPECT() *_MockEtcdClientRecorder
func (*MockEtcdClient) Put ¶
func (_m *MockEtcdClient) Put(_param0 string, _param1 string) (string, error)
func (*MockEtcdClient) RecursiveDel ¶
func (_m *MockEtcdClient) RecursiveDel(_param0 string) (string, error)
type MockHelper ¶
type MockHelper struct {
// contains filtered or unexported fields
}
Mock of Helper interface
func NewMockHelper ¶
func NewMockHelper(ctrl *gomock.Controller) *MockHelper
func (*MockHelper) ConfigFile ¶
func (_m *MockHelper) ConfigFile() string
func (*MockHelper) ConfigReader ¶
func (_m *MockHelper) ConfigReader() io.Reader
func (*MockHelper) DirectoryRelative ¶
func (_m *MockHelper) DirectoryRelative(dir string) string
func (*MockHelper) EXPECT ¶
func (_m *MockHelper) EXPECT() *_MockHelperRecorder
func (*MockHelper) LastTimeInDir ¶
func (_m *MockHelper) LastTimeInDir(_param0 string) (time.Time, error)
func (*MockHelper) LastTimeInDirRelative ¶
func (_m *MockHelper) LastTimeInDirRelative(_param0 string) (time.Time, error)
func (*MockHelper) OpenDockerfileRelative ¶
func (_m *MockHelper) OpenDockerfileRelative(dir string) (io.Reader, error)
func (*MockHelper) OpenFileRelative ¶
func (_m *MockHelper) OpenFileRelative(path string) (*os.File, error)
type MockInspectedContainer ¶
type MockInspectedContainer struct {
// contains filtered or unexported fields
}
Mock of InspectedContainer interface
func NewMockInspectedContainer ¶
func NewMockInspectedContainer(ctrl *gomock.Controller) *MockInspectedContainer
func (*MockInspectedContainer) ContainerID ¶
func (_m *MockInspectedContainer) ContainerID() string
func (*MockInspectedContainer) ContainerName ¶
func (_m *MockInspectedContainer) ContainerName() string
func (*MockInspectedContainer) CreatedTime ¶
func (_m *MockInspectedContainer) CreatedTime() time.Time
func (*MockInspectedContainer) EXPECT ¶
func (_m *MockInspectedContainer) EXPECT() *_MockInspectedContainerRecorder
func (*MockInspectedContainer) ExitStatus ¶
func (_m *MockInspectedContainer) ExitStatus() int
func (*MockInspectedContainer) Ip ¶
func (_m *MockInspectedContainer) Ip() string
func (*MockInspectedContainer) Ports ¶
func (_m *MockInspectedContainer) Ports() []string
func (*MockInspectedContainer) Running ¶
func (_m *MockInspectedContainer) Running() bool
type MockInspectedImage ¶
type MockInspectedImage struct {
// contains filtered or unexported fields
}
Mock of InspectedImage interface
func NewMockInspectedImage ¶
func NewMockInspectedImage(ctrl *gomock.Controller) *MockInspectedImage
func (*MockInspectedImage) ContainerID ¶
func (_m *MockInspectedImage) ContainerID() string
func (*MockInspectedImage) CreatedTime ¶
func (_m *MockInspectedImage) CreatedTime() time.Time
func (*MockInspectedImage) EXPECT ¶
func (_m *MockInspectedImage) EXPECT() *_MockInspectedImageRecorder
func (*MockInspectedImage) ID ¶
func (_m *MockInspectedImage) ID() string