Documentation ¶
Index ¶
- Constants
- Variables
- type CommonAPIClient
- type Handler
- func (handler *Handler) ContainerRemove(ctx context.Context, srcContainerID string) error
- func (handler *Handler) ContainerStop(ctx context.Context, srcContainerID string) error
- func (handler *Handler) CopyFromContainer(ctx context.Context, srcContainerID string, srcPath string, dstPath string) error
- func (handler *Handler) CopyTestFilesToContainer(ctx context.Context, srcContainerID string, files []string, targetDir string) error
- func (handler *Handler) CopyToContainer(ctx context.Context, containerID string, srcFile string, targetDir string) error
- func (handler *Handler) Execute(ctx context.Context, srcContainerID string, cmd []string) (*types.IDResponse, *types.HijackedResponse, error)
- func (handler *Handler) ExecuteInspect(ctx context.Context, srcContainerID string) (int, error)
- func (handler *Handler) FindTestFiles(patterns []string) []string
- func (handler *Handler) GetImageFlavor(c config.JobConfiguration) string
- func (handler *Handler) GetImagePullOptions() (types.ImagePullOptions, error)
- func (handler *Handler) HasBaseImage(ctx context.Context, baseImage string) (bool, error)
- func (handler *Handler) PullBaseImage(ctx context.Context, c config.JobConfiguration) error
- func (handler *Handler) StartContainer(ctx context.Context, c config.JobConfiguration) (*container.ContainerCreateCreatedBody, error)
- func (handler *Handler) ValidateDependency() error
- type Image
Constants ¶
const REGISTRY_PASSWORD_ENV_KEY = "REGISTRY_PASSWORD"
const REGISTRY_USERNAME_ENV_KEY = "REGISTRY_USERNAME"
Environment variables for private registry auth
Variables ¶
var DefaultCypress = Image{
Name: "saucelabs/stt-cypress-mocha-node",
Version: "v0.1.3",
}
var DefaultPlaywright = Image{
Name: "saucelabs/stt-playwright-jest-node",
Version: "v0.1.3",
}
var DefaultPuppeteer = Image{
Name: "saucelabs/stt-puppeteer-jest-node",
Version: "v0.1.2",
}
var DefaultTestcafe = Image{
Name: "saucelabs/stt-testcafe-node",
Version: "v0.1.2",
}
Functions ¶
This section is empty.
Types ¶
type CommonAPIClient ¶ added in v0.10.0
type CommonAPIClient interface { ContainerList(ctx context.Context, options types.ContainerListOptions) ([]types.Container, error) ImageList(ctx context.Context, options types.ImageListOptions) ([]types.ImageSummary, error) ImagePull(ctx context.Context, ref string, options types.ImagePullOptions) (io.ReadCloser, error) ContainerCreate(ctx context.Context, config *container.Config, hostConfig *container.HostConfig, networkingConfig *network.NetworkingConfig, containerName string) (container.ContainerCreateCreatedBody, error) ContainerStart(ctx context.Context, containerID string, options types.ContainerStartOptions) error ContainerInspect(ctx context.Context, containerID string) (types.ContainerJSON, error) CopyToContainer(ctx context.Context, container, path string, content io.Reader, options types.CopyToContainerOptions) error ContainerStatPath(ctx context.Context, containerID, path string) (types.ContainerPathStat, error) CopyFromContainer(ctx context.Context, container, srcPath string) (io.ReadCloser, types.ContainerPathStat, error) ContainerExecCreate(ctx context.Context, container string, config types.ExecConfig) (types.IDResponse, error) ContainerExecAttach(ctx context.Context, execID string, config types.ExecStartCheck) (types.HijackedResponse, error) ContainerExecInspect(ctx context.Context, execID string) (types.ContainerExecInspect, error) ContainerStop(ctx context.Context, containerID string, timeout *time.Duration) error ContainerRemove(ctx context.Context, containerID string, options types.ContainerRemoveOptions) error }
ClientInterface describes the interface used to handle docker commands
type Handler ¶
type Handler struct {
// contains filtered or unexported fields
}
Handler represents the client to handle Docker tasks
func CreateMock ¶ added in v0.2.0
func CreateMock(client CommonAPIClient) *Handler
CreateMock allows to get a handler with a custom interface
func (*Handler) ContainerRemove ¶
ContainerRemove removes testrunner container
func (*Handler) ContainerStop ¶
ContainerStop stops a running container
func (*Handler) CopyFromContainer ¶
func (handler *Handler) CopyFromContainer(ctx context.Context, srcContainerID string, srcPath string, dstPath string) error
CopyFromContainer downloads a file from the testrunner container
func (*Handler) CopyTestFilesToContainer ¶
func (handler *Handler) CopyTestFilesToContainer(ctx context.Context, srcContainerID string, files []string, targetDir string) error
CopyTestFilesToContainer copies files from the config into the container
func (*Handler) CopyToContainer ¶ added in v0.9.4
func (handler *Handler) CopyToContainer(ctx context.Context, containerID string, srcFile string, targetDir string) error
CopyToContainer copies the given file to the container.
func (*Handler) Execute ¶ added in v0.3.7
func (handler *Handler) Execute(ctx context.Context, srcContainerID string, cmd []string) (*types.IDResponse, *types.HijackedResponse, error)
Execute runs the test in the Docker container and attaches to its stdout
func (*Handler) ExecuteInspect ¶
ExecuteInspect checks exit code of test
func (*Handler) FindTestFiles ¶ added in v0.9.4
FindTestFiles returns the names of all files matching the patterns.
func (*Handler) GetImageFlavor ¶ added in v0.4.2
func (handler *Handler) GetImageFlavor(c config.JobConfiguration) string
TODO - move this to ImageDefinition
func (*Handler) GetImagePullOptions ¶ added in v0.10.0
func (handler *Handler) GetImagePullOptions() (types.ImagePullOptions, error)
Prepare ImagePullOptions
func (*Handler) HasBaseImage ¶
HasBaseImage checks if base image is installed
func (*Handler) PullBaseImage ¶
PullBaseImage pulls an image from Docker
func (*Handler) StartContainer ¶
func (handler *Handler) StartContainer(ctx context.Context, c config.JobConfiguration) (*container.ContainerCreateCreatedBody, error)
StartContainer starts the Docker testrunner container
func (*Handler) ValidateDependency ¶
ValidateDependency checks if external dependencies are installed