Vendor integration dependencies.
This commit is contained in:
parent
dd5e3fba01
commit
55b57c736b
2451 changed files with 731611 additions and 0 deletions
70
integration/vendor/github.com/libkermit/docker/docker.go
generated
vendored
Normal file
70
integration/vendor/github.com/libkermit/docker/docker.go
generated
vendored
Normal file
|
@ -0,0 +1,70 @@
|
|||
// Package docker aims to provide simple "helper" methods to ease the use of
|
||||
// docker in (integration) tests.
|
||||
//
|
||||
// It does support a subset of options compared to actual client api, as it
|
||||
// is more focused on needs for integration tests.
|
||||
package docker
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"github.com/docker/engine-api/client"
|
||||
)
|
||||
|
||||
const (
|
||||
// KermitLabel is the label used to add to containers
|
||||
KermitLabel = "com.github.vdemeester.libkermit"
|
||||
)
|
||||
|
||||
var (
|
||||
// KermitHeader defines default kermit headers to pass through the API
|
||||
KermitHeader = map[string]string{
|
||||
"User-Agent": "libkermit-1.0",
|
||||
}
|
||||
|
||||
// KermitLabels defines default docker labels kermit will but on
|
||||
// containers and such.
|
||||
KermitLabels = map[string]string{
|
||||
KermitLabel: "true",
|
||||
}
|
||||
|
||||
// KermitLabelFilter is the filter to use to find containers managed by kermit
|
||||
KermitLabelFilter = fmt.Sprintf("label=%s", KermitLabel)
|
||||
|
||||
// DefaultStopTimeout is the default timeout for the stop command
|
||||
DefaultStopTimeout = 10
|
||||
|
||||
// CurrentAPIVersion defines the current "lower" docker API version
|
||||
// supported by libkermit.
|
||||
CurrentAPIVersion = "v1.21"
|
||||
)
|
||||
|
||||
// Project holds docker related project attributes, like docker client, labels
|
||||
// to put on the containers, and so on.
|
||||
type Project struct {
|
||||
Client APIClient
|
||||
Labels map[string]string
|
||||
}
|
||||
|
||||
// APIClient is a lightweight representation of docker client.APIClient
|
||||
type APIClient interface {
|
||||
client.ContainerAPIClient
|
||||
client.ImageAPIClient
|
||||
}
|
||||
|
||||
// NewProjectFromEnv creates a project with a client that is build from environment variables.
|
||||
func NewProjectFromEnv() (*Project, error) {
|
||||
client, err := client.NewEnvClient()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
client.UpdateClientVersion(CurrentAPIVersion)
|
||||
return NewProject(client), nil
|
||||
}
|
||||
|
||||
// NewProject creates a project with the given client and the default attributes.
|
||||
func NewProject(client APIClient) *Project {
|
||||
return &Project{
|
||||
Client: client,
|
||||
Labels: KermitLabels,
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue