Documentation
¶
Overview ¶
Package builder contains builders for STI and Docker in OpenShift Origin
Index ¶
- Variables
- func GetCGroupLimits() (*s2iapi.CGroupLimits, error)
- func GetDockerClient() (client *docker.Client, endpoint string, err error)
- func MergeEnv(oldEnv, newEnv []string) []string
- func RetryImageAction(client DockerClient, opts interface{}, authConfig docker.AuthConfiguration) error
- type DockerBuilder
- type DockerClient
- type GitClient
- type KeyValue
- type S2IBuilder
Constants ¶
This section is empty.
Variables ¶
var ( // DefaultPushOrPullRetryCount is the number of retries of pushing or pulling the built Docker image // into a configured repository DefaultPushOrPullRetryCount = 6 // DefaultPushOrPullRetryDelay is the time to wait before triggering a push or pull retry DefaultPushOrPullRetryDelay = 5 * time.Second // RetriableErrors is a set of strings that indicate that an retriable error occurred. RetriableErrors = []string{ "ping attempt failed with error", "is already in progress", "connection reset by peer", "transport closed before response was received", "connection refused", } )
Functions ¶
func GetCGroupLimits ¶ added in v1.1.2
func GetCGroupLimits() (*s2iapi.CGroupLimits, error)
GetCGroupLimits returns a struct populated with cgroup limit values gathered from the local /sys/fs/cgroup filesystem. Overflow values are set to math.MaxInt64.
func GetDockerClient ¶
GetDockerClient returns a valid Docker client, the address of the client, or an error if the client couldn't be created.
func MergeEnv ¶ added in v1.1.1
MergeEnv will take an existing environment and merge it with a new set of variables. For variables with the same name in both, only the one in the new environment will be kept.
func RetryImageAction ¶
func RetryImageAction(client DockerClient, opts interface{}, authConfig docker.AuthConfiguration) error
Types ¶
type DockerBuilder ¶
type DockerBuilder struct {
// contains filtered or unexported fields
}
DockerBuilder builds Docker images given a git repository URL
func NewDockerBuilder ¶
func NewDockerBuilder(dockerClient DockerClient, buildsClient client.BuildInterface, build *api.Build, gitClient GitClient, cgLimits *s2iapi.CGroupLimits) *DockerBuilder
NewDockerBuilder creates a new instance of DockerBuilder
type DockerClient ¶
type DockerClient interface {
AttachToContainerNonBlocking(opts docker.AttachToContainerOptions) (docker.CloseWaiter, error)
BuildImage(opts docker.BuildImageOptions) error
PushImage(opts docker.PushImageOptions, auth docker.AuthConfiguration) error
RemoveImage(name string) error
CreateContainer(opts docker.CreateContainerOptions) (*docker.Container, error)
DownloadFromContainer(id string, opts docker.DownloadFromContainerOptions) error
PullImage(opts docker.PullImageOptions, auth docker.AuthConfiguration) error
RemoveContainer(opts docker.RemoveContainerOptions) error
InspectImage(name string) (*docker.Image, error)
StartContainer(id string, hostConfig *docker.HostConfig) error
WaitContainer(id string) (int, error)
Logs(opts docker.LogsOptions) error
TagImage(name string, opts docker.TagImageOptions) error
}
DockerClient is an interface to the Docker client that contains the methods used by the common builder
type GitClient ¶ added in v1.1.1
type GitClient interface {
CloneWithOptions(dir string, url string, args ...string) error
Checkout(dir string, ref string) error
SubmoduleUpdate(dir string, init, recursive bool) error
TimedListRemote(timeout time.Duration, url string, args ...string) (string, string, error)
GetInfo(location string) (*git.SourceInfo, []error)
}
GitClient performs git operations
type KeyValue ¶ added in v1.0.7
KeyValue can be used to build ordered lists of key-value pairs.
type S2IBuilder ¶ added in v1.1.1
type S2IBuilder struct {
// contains filtered or unexported fields
}
S2IBuilder performs an STI build given the build object
func NewS2IBuilder ¶ added in v1.1.1
func NewS2IBuilder(dockerClient DockerClient, dockerSocket string, buildsClient client.BuildInterface, build *api.Build, gitClient GitClient, cgLimits *s2iapi.CGroupLimits) *S2IBuilder
NewS2IBuilder creates a new STIBuilder instance
func (*S2IBuilder) Build ¶ added in v1.1.1
func (s *S2IBuilder) Build() error
Build executes STI build based on configured builder, S2I builder factory and S2I config validator
Source Files
¶
- common.go
- doc.go
- docker.go
- dockerutil.go
- source.go
- sti.go
- util.go
Directories
¶
| Path | Synopsis |
|---|---|
|
Package cmd contains the main entry point for the docker and STI builders
|
Package cmd contains the main entry point for the docker and STI builders |
|
dockercfg
Package dockercfg contains a command helper to read .dockercfg files
|
Package dockercfg contains a command helper to read .dockercfg files |
|
scmauth
Package scmauth provides SCM authentication methods based on secret files
|
Package scmauth provides SCM authentication methods based on secret files |