Documentation ¶
Index ¶
- Constants
- type Build
- type BuildConfig
- type BuildConfigList
- type BuildList
- type BuildLog
- type BuildLogOptions
- type BuildOutput
- type BuildParameters
- type BuildRequest
- type BuildSource
- type BuildSourceType
- type BuildStatus
- type BuildStrategy
- type BuildStrategyType
- type BuildTriggerPolicy
- type BuildTriggerType
- type CustomBuildStrategy
- type DockerBuildStrategy
- type GenericWebHookEvent
- type GitBuildSource
- type GitInfo
- type GitRefInfo
- type GitSourceRevision
- type ImageChangeTrigger
- type SourceBuildStrategy
- type SourceControlUser
- type SourceRevision
- type WebHookTrigger
Constants ¶
const ( // BuildAnnotation is an annotation that identifies a Pod as being for a Build BuildAnnotation = "openshift.io/build.name" // BuildLabel is the key of a Pod label whose value is the Name of a Build which is run. BuildLabel = "build" )
const BuildConfigLabel = "buildconfig"
BuildConfigLabel is the key of a Build label whose value is the ID of a BuildConfig on which the Build is based.
const ( // CustomBuildStrategyBaseImageKey is the environment variable that indicates the base image to be used when // performing a custom build, if needed. CustomBuildStrategyBaseImageKey = "OPENSHIFT_CUSTOM_BUILD_BASE_IMAGE" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Build ¶
type Build struct { kapi.TypeMeta `json:",inline"` kapi.ObjectMeta `json:"metadata,omitempty"` // Parameters are all the inputs used to create the build pod. Parameters BuildParameters `json:"parameters,omitempty"` // Status is the current status of the build. Status BuildStatus `json:"status,omitempty"` // Message is a human readable message indicating details about why the build has this status Message string `json:"message,omitempty"` // Cancelled describes if a cancelling event was triggered for the build. Cancelled bool `json:"cancelled,omitempty"` // StartTimestamp is a timestamp representing the server time when this Build started // running in a Pod. // It is represented in RFC3339 form and is in UTC. StartTimestamp *util.Time `json:"startTimestamp,omitempty"` // CompletionTimestamp is a timestamp representing the server time when this Build was // finished, whether that build failed or succeeded. It reflects the time at which // the Pod running the Build terminated. // It is represented in RFC3339 form and is in UTC. CompletionTimestamp *util.Time `json:"completionTimestamp,omitempty"` // Duration contains time.Duration object describing build time. Duration time.Duration `json:"duration,omitempty"` // Config is an ObjectReference to the BuildConfig this Build is based on. Config *kapi.ObjectReference `json:"config,omitempty"` }
Build encapsulates the inputs needed to produce a new deployable image, as well as the status of the execution and a reference to the Pod which executed the build.
func (*Build) IsAnAPIObject ¶
func (*Build) IsAnAPIObject()
type BuildConfig ¶
type BuildConfig struct { kapi.TypeMeta `json:",inline"` kapi.ObjectMeta `json:"metadata,omitempty"` // Triggers determine how new Builds can be launched from a BuildConfig. If no triggers // are defined, a new build can only occur as a result of an explicit client build creation. Triggers []BuildTriggerPolicy `json:"triggers,omitempty"` // LastVersion is used to inform about number of last triggered build. LastVersion int `json:"lastVersion,omitempty"` // Parameters holds all the input necessary to produce a new build. A build config may only // define either the Output.To or Output.DockerImageReference fields, but not both. Parameters BuildParameters `json:"parameters,omitempty"` }
BuildConfig is a template which can be used to create new builds.
func (*BuildConfig) IsAnAPIObject ¶
func (*BuildConfig) IsAnAPIObject()
type BuildConfigList ¶
type BuildConfigList struct { kapi.TypeMeta `json:",inline"` kapi.ListMeta `json:"metadata,omitempty"` // Items is a list of build configs Items []BuildConfig `json:"items"` }
BuildConfigList is a collection of BuildConfigs.
func (*BuildConfigList) IsAnAPIObject ¶
func (*BuildConfigList) IsAnAPIObject()
type BuildList ¶
type BuildList struct { kapi.TypeMeta `json:",inline"` kapi.ListMeta `json:"metadata,omitempty"` // Items is a list of builds Items []Build `json:"items"` }
BuildList is a collection of Builds.
func (*BuildList) IsAnAPIObject ¶
func (*BuildList) IsAnAPIObject()
type BuildLog ¶
BuildLog is the (unused) resource associated with the build log redirector
func (*BuildLog) IsAnAPIObject ¶
func (*BuildLog) IsAnAPIObject()
type BuildLogOptions ¶
type BuildLogOptions struct { kapi.TypeMeta // Follow if true indicates that the build log should be streamed until // the build terminates. Follow bool // NoWait if true causes the call to return immediately even if the build // is not available yet. Otherwise the server will wait until the build has started. NoWait bool }
BuildLogOptions is the REST options for a build log
func (*BuildLogOptions) IsAnAPIObject ¶
func (*BuildLogOptions) IsAnAPIObject()
type BuildOutput ¶
type BuildOutput struct { // To defines an optional ImageStream to push the output of this build to. The namespace // may be empty, in which case the named ImageStream will be retrieved from the namespace // of the build. Kind must be set to 'ImageStream' and is the only supported value. If set, // this field takes priority over DockerImageReference. This value will be used to look up // a Docker image repository to push to. Failure to find the To will result in a build error. To *kapi.ObjectReference `json:"to,omitempty"` // PushSecret is the name of a Secret that would be used for setting // up the authentication for executing the Docker push to authentication // enabled Docker Registry (or Docker Hub). PushSecret *kapi.LocalObjectReference `json:"pushSecret,omitempty"` // Tag is the "version name" that will be associated with the output image. This // field is only used if the To field is set, and is ignored when DockerImageReference is used. // This value represents a consistent name for a set of related changes (v1, 5.x, 5.5, dev, stable) // and defaults to the preferred tag for "To" if not specified. Tag string `json:"tag,omitempty"` // DockerImageReference is the full name of an image ([registry/]name[:tag]), and will be the // value sent to Docker push at the end of a build if the To field is not defined. DockerImageReference string `json:"dockerImageReference,omitempty"` }
BuildOutput is input to a build strategy and describes the Docker image that the strategy should produce.
type BuildParameters ¶
type BuildParameters struct { // ServiceAccount is the name of the ServiceAccount to use to run the pod // created by this build. // The pod will be allowed to use secrets referenced by the ServiceAccount ServiceAccount string `json:"serviceAccount,omitempty"` // Source describes the SCM in use. Source BuildSource `json:"source,omitempty"` // Revision is the information from the source for a specific repo snapshot. // This is optional. Revision *SourceRevision `json:"revision,omitempty"` // Strategy defines how to perform a build. Strategy BuildStrategy `json:"strategy"` // Output describes the Docker image the Strategy should produce. Output BuildOutput `json:"output,omitempty"` // Compute resource requirements to execute the build Resources kapi.ResourceRequirements `json:"resources,omitempty"` }
BuildParameters encapsulates all the inputs necessary to represent a build.
type BuildRequest ¶
type BuildRequest struct { kapi.TypeMeta `json:",inline"` kapi.ObjectMeta `json:"metadata,omitempty"` // Revision is the information from the source for a specific repo snapshot. Revision *SourceRevision `json:"revision,omitempty"` // TriggeredByImage is the Image that triggered this build. TriggeredByImage *kapi.ObjectReference }
BuildRequest is the resource used to pass parameters to build generator
func (*BuildRequest) IsAnAPIObject ¶
func (*BuildRequest) IsAnAPIObject()
type BuildSource ¶
type BuildSource struct { // Type of source control management system Type BuildSourceType `json:"type,omitempty"` // Git contains optional information about git build source Git *GitBuildSource `json:"git,omitempty"` // ContextDir specifies the sub-directory where the source code for the application exists. // This allows to have buildable sources in directory other than root of // repository. ContextDir string `json:"contextDir,omitempty"` // SourceSecret is the name of a Secret that would be used for setting // up the authentication for cloning private repository. // The secret contains valid credentials for remote repository, where the // data's key represent the authentication method to be used and value is // the base64 encoded credentials. Supported auth methods are: ssh-privatekey. SourceSecret *kapi.LocalObjectReference }
BuildSource is the SCM used for the build
type BuildSourceType ¶
type BuildSourceType string
BuildSourceType is the type of SCM used
const ( //BuildSourceGit is a Git SCM BuildSourceGit BuildSourceType = "Git" )
Valid values for BuildSourceType.
type BuildStatus ¶
type BuildStatus string
BuildStatus represents the status of a build at a point in time.
const ( // BuildStatusNew is automatically assigned to a newly created build. BuildStatusNew BuildStatus = "New" // BuildStatusPending indicates that a pod name has been assigned and a build is // about to start running. BuildStatusPending BuildStatus = "Pending" // BuildStatusRunning indicates that a pod has been created and a build is running. BuildStatusRunning BuildStatus = "Running" // BuildStatusComplete indicates that a build has been successful. BuildStatusComplete BuildStatus = "Complete" // BuildStatusFailed indicates that a build has executed and failed. BuildStatusFailed BuildStatus = "Failed" // BuildStatusError indicates that an error prevented the build from executing. BuildStatusError BuildStatus = "Error" // BuildStatusCancelled indicates that a running/pending build was stopped from executing. BuildStatusCancelled BuildStatus = "Cancelled" )
Valid values for BuildStatus.
type BuildStrategy ¶
type BuildStrategy struct { // Type is the kind of build strategy. Type BuildStrategyType `json:"type"` // DockerStrategy holds the parameters to the Docker build strategy. DockerStrategy *DockerBuildStrategy `json:"dockerStrategy,omitempty"` // SourceStrategy holds the parameters to the STI build strategy. SourceStrategy *SourceBuildStrategy `json:"stiStrategy,omitempty"` // CustomStrategy holds the parameters to the Custom build strategy. CustomStrategy *CustomBuildStrategy `json:"customStrategy,omitempty"` }
BuildStrategy contains the details of how to perform a build.
type BuildStrategyType ¶
type BuildStrategyType string
BuildStrategyType describes a particular way of performing a build.
const ( // DockerBuildStrategyType performs builds using a Dockerfile. DockerBuildStrategyType BuildStrategyType = "Docker" // SourceBuildStrategyType performs builds build using Source To Images with a Git repository // and a builder image. SourceBuildStrategyType BuildStrategyType = "STI" // CustomBuildStrategyType performs builds using the custom builder Docker image. CustomBuildStrategyType BuildStrategyType = "Custom" )
Valid values for BuildStrategyType.
type BuildTriggerPolicy ¶
type BuildTriggerPolicy struct { // Type is the type of build trigger Type BuildTriggerType `json:"type,omitempty"` // GitHubWebHook contains the parameters for a GitHub webhook type of trigger GitHubWebHook *WebHookTrigger `json:"github,omitempty"` // GenericWebHook contains the parameters for a Generic webhook type of trigger GenericWebHook *WebHookTrigger `json:"generic,omitempty"` // ImageChange contains parameters for an ImageChange type of trigger ImageChange *ImageChangeTrigger `json:"imageChange,omitempty"` }
BuildTriggerPolicy describes a policy for a single trigger that results in a new Build.
type BuildTriggerType ¶
type BuildTriggerType string
BuildTriggerType refers to a specific BuildTriggerPolicy implementation.
const ( // GitHubWebHookBuildTriggerType represents a trigger that launches builds on // GitHub webhook invocations GitHubWebHookBuildTriggerType BuildTriggerType = "GitHub" // GenericWebHookBuildTriggerType represents a trigger that launches builds on // generic webhook invocations GenericWebHookBuildTriggerType BuildTriggerType = "Generic" // ImageChangeBuildTriggerType represents a trigger that launches builds on // availability of a new version of an image ImageChangeBuildTriggerType BuildTriggerType = "ImageChange" )
type CustomBuildStrategy ¶
type CustomBuildStrategy struct { // Env contains additional environment variables you want to pass into a builder container Env []kapi.EnvVar `json:"env,omitempty"` // ExposeDockerSocket will allow running Docker commands (and build Docker images) from // inside the Docker container. // TODO: Allow admins to enforce 'false' for this option ExposeDockerSocket bool `json:"exposeDockerSocket,omitempty"` // From is reference to an ImageStream, ImageStreamTag, or ImageStreamImage from which // the docker image should be pulled From *kapi.ObjectReference `json:"from,omitempty"` // PullSecret is the name of a Secret that would be used for setting up // the authentication for pulling the Docker images from the private Docker // registries PullSecret *kapi.LocalObjectReference `json:"pullSecret,omitempty" description:"supported type: dockercfg"` }
CustomBuildStrategy defines input parameters specific to Custom build.
type DockerBuildStrategy ¶
type DockerBuildStrategy struct { // NoCache if set to true indicates that the docker build must be executed with the // --no-cache=true flag NoCache bool `json:"noCache,omitempty"` // From is reference to an ImageStream, ImageStreamTag, or ImageStreamImage from which // the docker image should be pulled // the resulting image will be used in the FROM line of the Dockerfile for this build. From *kapi.ObjectReference `json:"from,omitempty"` // PullSecret is the name of a Secret that would be used for setting up // the authentication for pulling the Docker images from the private Docker // registries PullSecret *kapi.LocalObjectReference `json:"pullSecret,omitempty" description:"supported type: dockercfg"` }
DockerBuildStrategy defines input parameters specific to Docker build.
type GenericWebHookEvent ¶
type GenericWebHookEvent struct { // Type is the type of source repository Type BuildSourceType `json:"type,omitempty"` // Git is the git information if the Type is BuildSourceGit Git *GitInfo `json:"git,omitempty"` }
GenericWebHookEvent is the payload expected for a generic webhook post
type GitBuildSource ¶
type GitBuildSource struct { // URI points to the source that will be built. The structure of the source // will depend on the type of build to run URI string `json:"uri,omitempty"` // Ref is the branch/tag/ref to build. Ref string `json:"ref,omitempty"` }
GitBuildSource defines the parameters of a Git SCM
type GitInfo ¶
type GitInfo struct { GitBuildSource `json:",inline"` GitSourceRevision `json:",inline"` // Refs is a list of GitRefs for the provided repo - generally sent // when used from a post-receive hook. This field is optional and is // used when sending multiple refs Refs []GitRefInfo `json:"refs,omitempty"` }
GitInfo is the aggregated git information for a generic webhook post
type GitRefInfo ¶
type GitRefInfo struct { GitBuildSource `json:",inline"` GitSourceRevision `json:",inline"` }
GitRefInfo is a single ref
type GitSourceRevision ¶
type GitSourceRevision struct { // Commit is the commit hash identifying a specific commit Commit string `json:"commit,omitempty"` // Author is the author of a specific commit Author SourceControlUser `json:"author,omitempty"` // Committer is the committer of a specific commit Committer SourceControlUser `json:"committer,omitempty"` // Message is the description of a specific commit Message string `json:"message,omitempty"` }
GitSourceRevision is the commit information from a git source for a build
type ImageChangeTrigger ¶
type ImageChangeTrigger struct { // LastTriggeredImageID is used internally by the ImageChangeController to save last // used image ID for build LastTriggeredImageID string `json:"lastTriggeredImageID,omitempty"` }
ImageChangeTrigger allows builds to be triggered when an ImageStream changes
type SourceBuildStrategy ¶
type SourceBuildStrategy struct { // From is reference to an ImageStream, ImageStreamTag, or ImageStreamImage from which // the docker image should be pulled From *kapi.ObjectReference `json:"from,omitempty"` // PullSecret is the name of a Secret that would be used for setting up // the authentication for pulling the Docker images from the private Docker // registries PullSecret *kapi.LocalObjectReference `json:"pullSecret,omitempty" description:"supported type: dockercfg"` // Env contains additional environment variables you want to pass into a builder container Env []kapi.EnvVar `json:"env,omitempty"` // Scripts is the location of STI scripts Scripts string `json:"scripts,omitempty"` // Incremental flag forces the STI build to do incremental builds if true. Incremental bool `json:"incremental,omitempty"` }
SourceBuildStrategy defines input parameters specific to an STI build.
type SourceControlUser ¶
type SourceControlUser struct { // Name of the source control user Name string `json:"name,omitempty"` // Email of the source control user Email string `json:"email,omitempty"` }
SourceControlUser defines the identity of a user of source control
type SourceRevision ¶
type SourceRevision struct { // Type of the build source Type BuildSourceType `json:"type,omitempty"` // Git contains information about git-based build source Git *GitSourceRevision `json:"git,omitempty"` }
SourceRevision is the revision or commit information from the source for the build
type WebHookTrigger ¶
type WebHookTrigger struct { // Secret used to validate requests. Secret string `json:"secret,omitempty"` }
WebHookTrigger is a trigger that gets invoked using a webhook type of post