- Build [build.openshift.io/v1]
- Specification
- API endpoints
- /apis/build.openshift.io/v1/builds
- /apis/build.openshift.io/v1/namespaces/{namespace}/builds
- /apis/build.openshift.io/v1/namespaces/{namespace}/builds/{name}
- /apis/build.openshift.io/v1/namespaces/{namespace}/builds/{name}/log
- /apis/build.openshift.io/v1/namespaces/{namespace}/builds/{name}/clone
- /apis/build.openshift.io/v1/namespaces/{namespace}/builds/{name}/details
Build [build.openshift.io/v1]
Description
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.
Type
object
Specification
Property | Type | Description |
---|---|---|
|
| APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| ||
|
| BuildSpec has the information to represent a build and also additional information about a build |
|
| BuildStatus contains the status of a build |
.spec
Description
BuildSpec has the information to represent a build and also additional information about a build
Type
object
Required
strategy
Property | Type | Description |
---|---|---|
|
| completionDeadlineSeconds is an optional duration in seconds, counted from the time when a build pod gets scheduled in the system, that the build may be active on a node before the system actively tries to terminate the build; value must be positive integer |
|
| nodeSelector is a selector which must be true for the build pod to fit on a node If nil, it can be overridden by default build nodeselector values for the cluster. If set to an empty map or a map with any values, default build nodeselector values are ignored. |
|
| BuildOutput is input to a build strategy and describes the container image that the strategy should produce. |
|
| A BuildPostCommitSpec holds a build post commit hook specification. The hook executes a command in a temporary container running the build output image, immediately after the last layer of the image is committed and before the image is pushed to a registry. The command is executed with the current working directory ($PWD) set to the image’s WORKDIR. The build will be marked as failed if the hook execution fails. It will fail if the script or command return a non-zero exit code, or if there is any other error related to starting the temporary container. There are five different ways to configure the hook. As an example, all forms below are equivalent and will execute 1. Shell script: “postCommit”: { “script”: “rake test —verbose”, } The above is a convenient form which is equivalent to: “postCommit”: { “command”: [“/bin/sh”, “-ic”], “args”: [“rake test —verbose”] } 2. A command as the image entrypoint: “postCommit”: { “commit”: [“rake”, “test”, “—verbose”] } Command overrides the image entrypoint in the exec form, as documented in Docker: https://docs.docker.com/engine/reference/builder/#entrypoint. 3. Pass arguments to the default entrypoint: “postCommit”: { “args”: [“rake”, “test”, “—verbose”] } This form is only useful if the image entrypoint can handle arguments. 4. Shell script with arguments: “postCommit”: { “script”: “rake test $1”, “args”: [“—verbose”] } This form is useful if you need to pass arguments that would otherwise be hard to quote properly in the shell script. In the script, $0 will be “/bin/sh” and $1, $2, etc, are the positional arguments from Args. 5. Command with arguments: “postCommit”: { “command”: [“rake”, “test”], “args”: [“—verbose”] } This form is equivalent to appending the arguments to the Command slice. It is invalid to provide both Script and Command simultaneously. If none of the fields are specified, the hook is not executed. |
| resources computes resource requirements to execute the build. | |
|
| SourceRevision is the revision or commit information from the source for the build |
|
| 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 |
|
| BuildSource is the SCM used for the build. |
|
| BuildStrategy contains the details of how to perform a build. |
|
| triggeredBy describes which triggers started the most recent update to the build configuration and contains information about those triggers. |
|
| BuildTriggerCause holds information about a triggered build. It is used for displaying build trigger data for each build and build configuration in oc describe. It is also used to describe which triggers led to the most recent update in the build configuration. |
.spec.output
Description
BuildOutput is input to a build strategy and describes the container image that the strategy should produce.
Type
object
Property | Type | Description |
---|---|---|
|
| imageLabels define a list of labels that are applied to the resulting image. If there are multiple labels with the same name then the last one in the list is used. |
|
| ImageLabel represents a label applied to the resulting image. |
| 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). | |
| to defines an optional location to push the output of this build to. Kind must be one of ‘ImageStreamTag’ or ‘DockerImage’. This value will be used to look up a container image repository to push to. In the case of an ImageStreamTag, the ImageStreamTag will be looked for in the namespace of the build unless Namespace is specified. |
.spec.output.imageLabels
Description
imageLabels define a list of labels that are applied to the resulting image. If there are multiple labels with the same name then the last one in the list is used.
Type
array
.spec.output.imageLabels[]
Description
ImageLabel represents a label applied to the resulting image.
Type
object
Required
name
Property | Type | Description |
---|---|---|
|
| name defines the name of the label. It must have non-zero length. |
|
| value defines the literal value of the label. |
.spec.postCommit
Description
A BuildPostCommitSpec holds a build post commit hook specification. The hook executes a command in a temporary container running the build output image, immediately after the last layer of the image is committed and before the image is pushed to a registry. The command is executed with the current working directory ($PWD) set to the image’s WORKDIR.
The build will be marked as failed if the hook execution fails. It will fail if the script or command return a non-zero exit code, or if there is any other error related to starting the temporary container.
There are five different ways to configure the hook. As an example, all forms below are equivalent and will execute rake test --verbose
.
Shell script:
"postCommit": {
"script": "rake test --verbose",
}
The above is a convenient form which is equivalent to:
"postCommit": {
"command": ["/bin/sh", "-ic"],
"args": ["rake test --verbose"]
}
A command as the image entrypoint:
"postCommit": {
"commit": ["rake", "test", "--verbose"]
}
Command overrides the image entrypoint in the exec form, as documented in
Docker: https://docs.docker.com/engine/reference/builder/#entrypoint.
Pass arguments to the default entrypoint:
"postCommit": {
"args": ["rake", "test", "--verbose"]
}
This form is only useful if the image entrypoint can handle arguments.
Shell script with arguments:
"postCommit": {
"script": "rake test $1",
"args": ["--verbose"]
}
This form is useful if you need to pass arguments that would otherwise be
hard to quote properly in the shell script. In the script, $0 will be
"/bin/sh" and $1, $2, etc, are the positional arguments from Args.
Command with arguments:
"postCommit": {
"command": ["rake", "test"],
"args": ["--verbose"]
}
This form is equivalent to appending the arguments to the Command slice.
It is invalid to provide both Script and Command simultaneously. If none of the fields are specified, the hook is not executed.
Type
object
Property | Type | Description |
---|---|---|
|
| args is a list of arguments that are provided to either Command, Script or the container image’s default entrypoint. The arguments are placed immediately after the command to be run. |
|
| command is the command to run. It may not be specified with Script. This might be needed if the image doesn’t have |
|
| script is a shell script to be run with |
.spec.revision
Description
SourceRevision is the revision or commit information from the source for the build
Type
object
Required
type
Property | Type | Description |
---|---|---|
|
| GitSourceRevision is the commit information from a git source for a build |
|
| type of the build source, may be one of ‘Source’, ‘Dockerfile’, ‘Binary’, or ‘Images’ |
.spec.revision.git
Description
GitSourceRevision is the commit information from a git source for a build
Type
object
Property | Type | Description |
---|---|---|
|
| SourceControlUser defines the identity of a user of source control |
|
| commit is the commit hash identifying a specific commit |
|
| SourceControlUser defines the identity of a user of source control |
|
| message is the description of a specific commit |
.spec.revision.git.author
Description
SourceControlUser defines the identity of a user of source control
Type
object
Property | Type | Description |
---|---|---|
|
| email of the source control user |
|
| name of the source control user |
.spec.revision.git.committer
Description
SourceControlUser defines the identity of a user of source control
Type
object
Property | Type | Description |
---|---|---|
|
| email of the source control user |
|
| name of the source control user |
.spec.source
Description
BuildSource is the SCM used for the build.
Type
object
Required
type
Property | Type | Description |
---|---|---|
|
| BinaryBuildSource describes a binary file to be used for the Docker and Source build strategies, where the file will be extracted and used as the build source. |
|
| configMaps represents a list of configMaps and their destinations that will be used for the build. |
|
| ConfigMapBuildSource describes a configmap and its destination directory that will be used only at the build time. The content of the configmap referenced here will be copied into the destination directory instead of mounting. |
|
| 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. |
|
| dockerfile is the raw contents of a Dockerfile which should be built. When this option is specified, the FROM may be modified based on your strategy base image and additional ENV stanzas from your strategy environment will be added after the FROM, but before the rest of your Dockerfile stanzas. The Dockerfile source type may be used with other options like git - in those cases the Git repo will have any innate Dockerfile replaced in the context dir. |
|
| GitBuildSource defines the parameters of a Git SCM |
|
| images describes a set of images to be used to provide source for the build |
|
| ImageSource is used to describe build source that will be extracted from an image or used during a multi stage build. A reference of type ImageStreamTag, ImageStreamImage or DockerImage may be used. A pull secret can be specified to pull the image from an external registry or override the default service account secret if pulling from the internal registry. Image sources can either be used to extract content from an image and place it into the build context along with the repository source, or used directly during a multi-stage container image build to allow content to be copied without overwriting the contents of the repository source (see the ‘paths’ and ‘as’ fields). |
|
| secrets represents a list of secrets and their destinations that will be used only for the build. |
|
| SecretBuildSource describes a secret and its destination directory that will be used only at the build time. The content of the secret referenced here will be copied into the destination directory instead of mounting. |
| 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. | |
|
| type of build input to accept |
.spec.source.binary
Description
BinaryBuildSource describes a binary file to be used for the Docker and Source build strategies, where the file will be extracted and used as the build source.
Type
object
Property | Type | Description |
---|---|---|
|
| asFile indicates that the provided binary input should be considered a single file within the build input. For example, specifying “webapp.war” would place the provided binary as |
.spec.source.configMaps
Description
configMaps represents a list of configMaps and their destinations that will be used for the build.
Type
array
.spec.source.configMaps[]
Description
ConfigMapBuildSource describes a configmap and its destination directory that will be used only at the build time. The content of the configmap referenced here will be copied into the destination directory instead of mounting.
Type
object
Required
configMap
Property | Type | Description |
---|---|---|
| configMap is a reference to an existing configmap that you want to use in your build. | |
|
| destinationDir is the directory where the files from the configmap should be available for the build time. For the Source build strategy, these will be injected into a container where the assemble script runs. For the container image build strategy, these will be copied into the build directory, where the Dockerfile is located, so users can ADD or COPY them during container image build. |
.spec.source.git
Description
GitBuildSource defines the parameters of a Git SCM
Type
object
Required
uri
Property | Type | Description |
---|---|---|
|
| httpProxy is a proxy used to reach the git repository over http |
|
| httpsProxy is a proxy used to reach the git repository over https |
|
| noProxy is the list of domains for which the proxy should not be used |
|
| ref is the branch/tag/ref to build. |
|
| uri points to the source that will be built. The structure of the source will depend on the type of build to run |
.spec.source.images
Description
images describes a set of images to be used to provide source for the build
Type
array
.spec.source.images[]
Description
ImageSource is used to describe build source that will be extracted from an image or used during a multi stage build. A reference of type ImageStreamTag, ImageStreamImage or DockerImage may be used. A pull secret can be specified to pull the image from an external registry or override the default service account secret if pulling from the internal registry. Image sources can either be used to extract content from an image and place it into the build context along with the repository source, or used directly during a multi-stage container image build to allow content to be copied without overwriting the contents of the repository source (see the ‘paths’ and ‘as’ fields).
Type
object
Required
from
Property | Type | Description |
---|---|---|
|
| A list of image names that this source will be used in place of during a multi-stage container image build. For instance, a Dockerfile that uses “COPY —from=nginx:latest” will first check for an image source that has “nginx:latest” in this field before attempting to pull directly. If the Dockerfile does not reference an image source it is ignored. This field and paths may both be set, in which case the contents will be used twice. |
| from is a reference to an ImageStreamTag, ImageStreamImage, or DockerImage to copy source from. | |
|
| paths is a list of source and destination paths to copy from the image. This content will be copied into the build context prior to starting the build. If no paths are set, the build context will not be altered. |
|
| ImageSourcePath describes a path to be copied from a source image and its destination within the build directory. |
| pullSecret is a reference to a secret to be used to pull the image from a registry If the image is pulled from the OpenShift registry, this field does not need to be set. |
.spec.source.images[].paths
Description
paths is a list of source and destination paths to copy from the image. This content will be copied into the build context prior to starting the build. If no paths are set, the build context will not be altered.
Type
array
.spec.source.images[].paths[]
Description
ImageSourcePath describes a path to be copied from a source image and its destination within the build directory.
Type
object
Required
sourcePath
destinationDir
Property | Type | Description |
---|---|---|
|
| destinationDir is the relative directory within the build directory where files copied from the image are placed. |
|
| sourcePath is the absolute path of the file or directory inside the image to copy to the build directory. If the source path ends in /. then the content of the directory will be copied, but the directory itself will not be created at the destination. |
.spec.source.secrets
Description
secrets represents a list of secrets and their destinations that will be used only for the build.
Type
array
.spec.source.secrets[]
Description
SecretBuildSource describes a secret and its destination directory that will be used only at the build time. The content of the secret referenced here will be copied into the destination directory instead of mounting.
Type
object
Required
secret
Property | Type | Description |
---|---|---|
|
| destinationDir is the directory where the files from the secret should be available for the build time. For the Source build strategy, these will be injected into a container where the assemble script runs. Later, when the script finishes, all files injected will be truncated to zero length. For the container image build strategy, these will be copied into the build directory, where the Dockerfile is located, so users can ADD or COPY them during container image build. |
| secret is a reference to an existing secret that you want to use in your build. |
.spec.strategy
Description
BuildStrategy contains the details of how to perform a build.
Type
object
Required
type
Property | Type | Description |
---|---|---|
|
| CustomBuildStrategy defines input parameters specific to Custom build. |
|
| DockerBuildStrategy defines input parameters specific to container image build. |
|
| JenkinsPipelineBuildStrategy holds parameters specific to a Jenkins Pipeline build. Deprecated: use OpenShift Pipelines |
|
| SourceBuildStrategy defines input parameters specific to an Source build. |
|
| type is the kind of build strategy. |
.spec.strategy.customStrategy
Description
CustomBuildStrategy defines input parameters specific to Custom build.
Type
object
Required
from
Property | Type | Description |
---|---|---|
|
| buildAPIVersion is the requested API version for the Build object serialized and passed to the custom builder |
| env contains additional environment variables you want to pass into a builder container. | |
|
| exposeDockerSocket will allow running Docker commands (and build container images) from inside the container. |
|
| forcePull describes if the controller should configure the build pod to always pull the images for the builder or only pull if it is not present locally |
| from is reference to an DockerImage, ImageStreamTag, or ImageStreamImage from which the container image should be pulled | |
| pullSecret is the name of a Secret that would be used for setting up the authentication for pulling the container images from the private Docker registries | |
|
| secrets is a list of additional secrets that will be included in the build pod |
|
| SecretSpec specifies a secret to be included in a build pod and its corresponding mount point |
.spec.strategy.customStrategy.secrets
Description
secrets is a list of additional secrets that will be included in the build pod
Type
array
.spec.strategy.customStrategy.secrets[]
Description
SecretSpec specifies a secret to be included in a build pod and its corresponding mount point
Type
object
Required
secretSource
mountPath
Property | Type | Description |
---|---|---|
|
| mountPath is the path at which to mount the secret |
| secretSource is a reference to the secret |
.spec.strategy.dockerStrategy
Description
DockerBuildStrategy defines input parameters specific to container image build.
Type
object
Property | Type | Description |
---|---|---|
| buildArgs contains build arguments that will be resolved in the Dockerfile. See https://docs.docker.com/engine/reference/builder/#/arg for more details. | |
|
| dockerfilePath is the path of the Dockerfile that will be used to build the container image, relative to the root of the context (contextDir). Defaults to |
| env contains additional environment variables you want to pass into a builder container. | |
|
| forcePull describes if the builder should pull the images from registry prior to building. |
| from is a reference to an DockerImage, ImageStreamTag, or ImageStreamImage which overrides the FROM image in the Dockerfile for the build. If the Dockerfile uses multi-stage builds, this will replace the image in the last FROM directive of the file. | |
|
| imageOptimizationPolicy describes what optimizations the system can use when building images to reduce the final size or time spent building the image. The default policy is ‘None’ which means the final build image will be equivalent to an image created by the container image build API. The experimental policy ‘SkipLayers’ will avoid commiting new layers in between each image step, and will fail if the Dockerfile cannot provide compatibility with the ‘None’ policy. An additional experimental policy ‘SkipLayersAndWarn’ is the same as ‘SkipLayers’ but simply warns if compatibility cannot be preserved. |
|
| noCache if set to true indicates that the container image build must be executed with the —no-cache=true flag |
| pullSecret is the name of a Secret that would be used for setting up the authentication for pulling the container images from the private Docker registries |
.spec.strategy.jenkinsPipelineStrategy
Description
JenkinsPipelineBuildStrategy holds parameters specific to a Jenkins Pipeline build. Deprecated: use OpenShift Pipelines
Type
object
Property | Type | Description |
---|---|---|
| env contains additional environment variables you want to pass into a build pipeline. | |
|
| Jenkinsfile defines the optional raw contents of a Jenkinsfile which defines a Jenkins pipeline build. |
|
| JenkinsfilePath is the optional path of the Jenkinsfile that will be used to configure the pipeline relative to the root of the context (contextDir). If both JenkinsfilePath & Jenkinsfile are both not specified, this defaults to Jenkinsfile in the root of the specified contextDir. |
.spec.strategy.sourceStrategy
Description
SourceBuildStrategy defines input parameters specific to an Source build.
Type
object
Required
from
Property | Type | Description |
---|---|---|
| env contains additional environment variables you want to pass into a builder container. | |
|
| forcePull describes if the builder should pull the images from registry prior to building. |
| from is reference to an DockerImage, ImageStreamTag, or ImageStreamImage from which the container image should be pulled | |
|
| incremental flag forces the Source build to do incremental builds if true. |
| pullSecret is the name of a Secret that would be used for setting up the authentication for pulling the container images from the private Docker registries | |
|
| scripts is the location of Source scripts |
.spec.triggeredBy
Description
triggeredBy describes which triggers started the most recent update to the build configuration and contains information about those triggers.
Type
array
.spec.triggeredBy[]
Description
BuildTriggerCause holds information about a triggered build. It is used for displaying build trigger data for each build and build configuration in oc describe. It is also used to describe which triggers led to the most recent update in the build configuration.
Type
object
Property | Type | Description |
---|---|---|
|
| BitbucketWebHookCause has information about a Bitbucket webhook that triggered a build. |
|
| GenericWebHookCause holds information about a generic WebHook that triggered a build. |
|
| GitHubWebHookCause has information about a GitHub webhook that triggered a build. |
|
| GitLabWebHookCause has information about a GitLab webhook that triggered a build. |
|
| ImageChangeCause contains information about the image that triggered a build |
|
| message is used to store a human readable message for why the build was triggered. E.g.: “Manually triggered by user”, “Configuration change”,etc. |
.spec.triggeredBy[].bitbucketWebHook
Description
BitbucketWebHookCause has information about a Bitbucket webhook that triggered a build.
Type
object
Property | Type | Description |
---|---|---|
|
| SourceRevision is the revision or commit information from the source for the build |
|
| Secret is the obfuscated webhook secret that triggered a build. |
.spec.triggeredBy[].bitbucketWebHook.revision
Description
SourceRevision is the revision or commit information from the source for the build
Type
object
Required
type
Property | Type | Description |
---|---|---|
|
| GitSourceRevision is the commit information from a git source for a build |
|
| type of the build source, may be one of ‘Source’, ‘Dockerfile’, ‘Binary’, or ‘Images’ |
.spec.triggeredBy[].bitbucketWebHook.revision.git
Description
GitSourceRevision is the commit information from a git source for a build
Type
object
Property | Type | Description |
---|---|---|
|
| SourceControlUser defines the identity of a user of source control |
|
| commit is the commit hash identifying a specific commit |
|
| SourceControlUser defines the identity of a user of source control |
|
| message is the description of a specific commit |
.spec.triggeredBy[].bitbucketWebHook.revision.git.author
Description
SourceControlUser defines the identity of a user of source control
Type
object
Property | Type | Description |
---|---|---|
|
| email of the source control user |
|
| name of the source control user |
.spec.triggeredBy[].bitbucketWebHook.revision.git.committer
Description
SourceControlUser defines the identity of a user of source control
Type
object
Property | Type | Description |
---|---|---|
|
| email of the source control user |
|
| name of the source control user |
.spec.triggeredBy[].genericWebHook
Description
GenericWebHookCause holds information about a generic WebHook that triggered a build.
Type
object
Property | Type | Description |
---|---|---|
|
| SourceRevision is the revision or commit information from the source for the build |
|
| secret is the obfuscated webhook secret that triggered a build. |
.spec.triggeredBy[].genericWebHook.revision
Description
SourceRevision is the revision or commit information from the source for the build
Type
object
Required
type
Property | Type | Description |
---|---|---|
|
| GitSourceRevision is the commit information from a git source for a build |
|
| type of the build source, may be one of ‘Source’, ‘Dockerfile’, ‘Binary’, or ‘Images’ |
.spec.triggeredBy[].genericWebHook.revision.git
Description
GitSourceRevision is the commit information from a git source for a build
Type
object
Property | Type | Description |
---|---|---|
|
| SourceControlUser defines the identity of a user of source control |
|
| commit is the commit hash identifying a specific commit |
|
| SourceControlUser defines the identity of a user of source control |
|
| message is the description of a specific commit |
.spec.triggeredBy[].genericWebHook.revision.git.author
Description
SourceControlUser defines the identity of a user of source control
Type
object
Property | Type | Description |
---|---|---|
|
| email of the source control user |
|
| name of the source control user |
.spec.triggeredBy[].genericWebHook.revision.git.committer
Description
SourceControlUser defines the identity of a user of source control
Type
object
Property | Type | Description |
---|---|---|
|
| email of the source control user |
|
| name of the source control user |
.spec.triggeredBy[].githubWebHook
Description
GitHubWebHookCause has information about a GitHub webhook that triggered a build.
Type
object
Property | Type | Description |
---|---|---|
|
| SourceRevision is the revision or commit information from the source for the build |
|
| secret is the obfuscated webhook secret that triggered a build. |
.spec.triggeredBy[].githubWebHook.revision
Description
SourceRevision is the revision or commit information from the source for the build
Type
object
Required
type
Property | Type | Description |
---|---|---|
|
| GitSourceRevision is the commit information from a git source for a build |
|
| type of the build source, may be one of ‘Source’, ‘Dockerfile’, ‘Binary’, or ‘Images’ |
.spec.triggeredBy[].githubWebHook.revision.git
Description
GitSourceRevision is the commit information from a git source for a build
Type
object
Property | Type | Description |
---|---|---|
|
| SourceControlUser defines the identity of a user of source control |
|
| commit is the commit hash identifying a specific commit |
|
| SourceControlUser defines the identity of a user of source control |
|
| message is the description of a specific commit |
.spec.triggeredBy[].githubWebHook.revision.git.author
Description
SourceControlUser defines the identity of a user of source control
Type
object
Property | Type | Description |
---|---|---|
|
| email of the source control user |
|
| name of the source control user |
.spec.triggeredBy[].githubWebHook.revision.git.committer
Description
SourceControlUser defines the identity of a user of source control
Type
object
Property | Type | Description |
---|---|---|
|
| email of the source control user |
|
| name of the source control user |
.spec.triggeredBy[].gitlabWebHook
Description
GitLabWebHookCause has information about a GitLab webhook that triggered a build.
Type
object
Property | Type | Description |
---|---|---|
|
| SourceRevision is the revision or commit information from the source for the build |
|
| Secret is the obfuscated webhook secret that triggered a build. |
.spec.triggeredBy[].gitlabWebHook.revision
Description
SourceRevision is the revision or commit information from the source for the build
Type
object
Required
type
Property | Type | Description |
---|---|---|
|
| GitSourceRevision is the commit information from a git source for a build |
|
| type of the build source, may be one of ‘Source’, ‘Dockerfile’, ‘Binary’, or ‘Images’ |
.spec.triggeredBy[].gitlabWebHook.revision.git
Description
GitSourceRevision is the commit information from a git source for a build
Type
object
Property | Type | Description |
---|---|---|
|
| SourceControlUser defines the identity of a user of source control |
|
| commit is the commit hash identifying a specific commit |
|
| SourceControlUser defines the identity of a user of source control |
|
| message is the description of a specific commit |
.spec.triggeredBy[].gitlabWebHook.revision.git.author
Description
SourceControlUser defines the identity of a user of source control
Type
object
Property | Type | Description |
---|---|---|
|
| email of the source control user |
|
| name of the source control user |
.spec.triggeredBy[].gitlabWebHook.revision.git.committer
Description
SourceControlUser defines the identity of a user of source control
Type
object
Property | Type | Description |
---|---|---|
|
| email of the source control user |
|
| name of the source control user |
.spec.triggeredBy[].imageChangeBuild
Description
ImageChangeCause contains information about the image that triggered a build
Type
object
Property | Type | Description |
---|---|---|
| fromRef contains detailed information about an image that triggered a build. | |
|
| imageID is the ID of the image that triggered a a new build. |
.status
Description
BuildStatus contains the status of a build
Type
object
Required
phase
Property | Type | Description |
---|---|---|
|
| cancelled describes if a cancel event was triggered for the build. |
| 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. | |
|
| Conditions represents the latest available observations of a build’s current state. |
|
| BuildCondition describes the state of a build at a certain point. |
| config is an ObjectReference to the BuildConfig this Build is based on. | |
|
| duration contains time.Duration object describing build time. |
|
| logSnippet is the last few lines of the build log. This value is only set for builds that failed. |
|
| message is a human-readable message indicating details about why the build has this status. |
|
| BuildStatusOutput contains the status of the built image. |
|
| outputDockerImageReference contains a reference to the container image that will be built by this build. Its value is computed from Build.Spec.Output.To, and should include the registry address, so that it can be used to push and pull the image. |
|
| phase is the point in the build lifecycle. Possible values are “New”, “Pending”, “Running”, “Complete”, “Failed”, “Error”, and “Cancelled”. |
|
| reason is a brief CamelCase string that describes any failure and is meant for machine parsing and tidy display in the CLI. |
|
| stages contains details about each stage that occurs during the build including start time, duration (in milliseconds), and the steps that occured within each stage. |
|
| StageInfo contains details about a build stage. |
| 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. |
.status.conditions
Description
Conditions represents the latest available observations of a build’s current state.
Type
array
.status.conditions[]
Description
BuildCondition describes the state of a build at a certain point.
Type
object
Required
type
status
Property | Type | Description |
---|---|---|
| The last time the condition transitioned from one status to another. | |
| The last time this condition was updated. | |
|
| A human readable message indicating details about the transition. |
|
| The reason for the condition’s last transition. |
|
| Status of the condition, one of True, False, Unknown. |
|
| Type of build condition. |
.status.output
Description
BuildStatusOutput contains the status of the built image.
Type
object
Property | Type | Description |
---|---|---|
|
| BuildStatusOutputTo describes the status of the built image with regards to image registry to which it was supposed to be pushed. |
.status.output.to
Description
BuildStatusOutputTo describes the status of the built image with regards to image registry to which it was supposed to be pushed.
Type
object
Property | Type | Description |
---|---|---|
|
| imageDigest is the digest of the built container image. The digest uniquely identifies the image in the registry to which it was pushed. Please note that this field may not always be set even if the push completes successfully - e.g. when the registry returns no digest or returns it in a format that the builder doesn’t understand. |
.status.stages
Description
stages contains details about each stage that occurs during the build including start time, duration (in milliseconds), and the steps that occured within each stage.
Type
array
.status.stages[]
Description
StageInfo contains details about a build stage.
Type
object
Property | Type | Description |
---|---|---|
|
| durationMilliseconds identifies how long the stage took to complete in milliseconds. Note: the duration of a stage can exceed the sum of the duration of the steps within the stage as not all actions are accounted for in explicit build steps. |
|
| name is a unique identifier for each build stage that occurs. |
| startTime is a timestamp representing the server time when this Stage started. It is represented in RFC3339 form and is in UTC. | |
|
| steps contains details about each step that occurs during a build stage including start time and duration in milliseconds. |
|
| StepInfo contains details about a build step. |
.status.stages[].steps
Description
steps contains details about each step that occurs during a build stage including start time and duration in milliseconds.
Type
array
.status.stages[].steps[]
Description
StepInfo contains details about a build step.
Type
object
Property | Type | Description |
---|---|---|
|
| durationMilliseconds identifies how long the step took to complete in milliseconds. |
|
| name is a unique identifier for each build step. |
| startTime is a timestamp representing the server time when this Step started. it is represented in RFC3339 form and is in UTC. |
API endpoints
The following API endpoints are available:
/apis/build.openshift.io/v1/builds
GET
: list or watch objects of kind Build
/apis/build.openshift.io/v1/namespaces/{namespace}/builds
DELETE
: delete collection of BuildGET
: list or watch objects of kind BuildPOST
: create a Build
/apis/build.openshift.io/v1/namespaces/{namespace}/builds/{name}
DELETE
: delete a BuildGET
: read the specified BuildPATCH
: partially update the specified BuildPUT
: replace the specified Build
/apis/build.openshift.io/v1/namespaces/{namespace}/builds/{name}/log
GET
: read log of the specified Build
/apis/build.openshift.io/v1/namespaces/{namespace}/builds/{name}/clone
POST
: create clone of a Build
/apis/build.openshift.io/v1/namespaces/{namespace}/builds/{name}/details
PUT
: replace details of the specified Build
/apis/build.openshift.io/v1/builds
Parameter | Type | Description |
---|---|---|
|
| allowWatchBookmarks requests watch events with type “BOOKMARK”. Servers that do not implement bookmarks may ignore this flag and bookmarks are sent at the server’s discretion. Clients should not assume bookmarks are returned at any specific interval, nor may they assume the server will send any BOOKMARK event during a session. If this is not a watch, this field is ignored. If the feature gate WatchBookmarks is not enabled in apiserver, this field is ignored. |
|
| The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the “next key”. This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications. |
|
| A selector to restrict the list of returned objects by their fields. Defaults to everything. |
|
| A selector to restrict the list of returned objects by their labels. Defaults to everything. |
|
| limit is a maximum number of responses to return for a list call. If more items exist, the server will set the The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned. |
|
| If ‘true’, then the output is pretty printed. |
|
| resourceVersion sets a constraint on what resource versions a request may be served from. See https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions for details. Defaults to unset |
|
| resourceVersionMatch determines how resourceVersion is applied to list calls. It is highly recommended that resourceVersionMatch be set for list calls where resourceVersion is set See https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions for details. Defaults to unset |
|
| Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity. |
|
| Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion. |
HTTP method
GET
Description
list or watch objects of kind Build
HTTP code | Reponse body |
---|---|
200 - OK | |
401 - Unauthorized | Empty |
/apis/build.openshift.io/v1/namespaces/{namespace}/builds
Parameter | Type | Description |
---|---|---|
|
| object name and auth scope, such as for teams and projects |
Parameter | Type | Description |
---|---|---|
|
| If ‘true’, then the output is pretty printed. |
HTTP method
DELETE
Description
delete collection of Build
Parameter | Type | Description |
---|---|---|
|
| The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the “next key”. This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications. |
|
| When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed |
|
| A selector to restrict the list of returned objects by their fields. Defaults to everything. |
|
| The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately. |
|
| A selector to restrict the list of returned objects by their labels. Defaults to everything. |
|
| limit is a maximum number of responses to return for a list call. If more items exist, the server will set the The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned. |
|
| Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the “orphan” finalizer will be added to/removed from the object’s finalizers list. Either this field or PropagationPolicy may be set, but not both. |
|
| Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: ‘Orphan’ - orphan the dependents; ‘Background’ - allow the garbage collector to delete the dependents in the background; ‘Foreground’ - a cascading policy that deletes all dependents in the foreground. |
|
| resourceVersion sets a constraint on what resource versions a request may be served from. See https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions for details. Defaults to unset |
|
| resourceVersionMatch determines how resourceVersion is applied to list calls. It is highly recommended that resourceVersionMatch be set for list calls where resourceVersion is set See https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions for details. Defaults to unset |
|
| Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity. |
Parameter | Type | Description |
---|---|---|
|
HTTP code | Reponse body |
---|---|
200 - OK | |
401 - Unauthorized | Empty |
HTTP method
GET
Description
list or watch objects of kind Build
Parameter | Type | Description |
---|---|---|
|
| allowWatchBookmarks requests watch events with type “BOOKMARK”. Servers that do not implement bookmarks may ignore this flag and bookmarks are sent at the server’s discretion. Clients should not assume bookmarks are returned at any specific interval, nor may they assume the server will send any BOOKMARK event during a session. If this is not a watch, this field is ignored. If the feature gate WatchBookmarks is not enabled in apiserver, this field is ignored. |
|
| The continue option should be set when retrieving more results from the server. Since this value is server defined, clients may only use the continue value from a previous query result with identical query parameters (except for the value of continue) and the server may reject a continue value it does not recognize. If the specified continue value is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error together with a continue token. If the client needs a consistent list, it must restart their list without the continue field. Otherwise, the client may send another list request with the token received with the 410 error, the server will respond with a list starting from the next key, but from the latest snapshot, which is inconsistent from the previous list results - objects that are created, modified, or deleted after the first list request will be included in the response, as long as their keys are after the “next key”. This field is not supported when watch is true. Clients may start a watch from the last resourceVersion value returned by the server and not miss any modifications. |
|
| A selector to restrict the list of returned objects by their fields. Defaults to everything. |
|
| A selector to restrict the list of returned objects by their labels. Defaults to everything. |
|
| limit is a maximum number of responses to return for a list call. If more items exist, the server will set the The server guarantees that the objects returned when using continue will be identical to issuing a single list call without a limit - that is, no objects created, modified, or deleted after the first request is issued will be included in any subsequent continued requests. This is sometimes referred to as a consistent snapshot, and ensures that a client that is using limit to receive smaller chunks of a very large result can ensure they see all possible objects. If objects are updated during a chunked list the version of the object that was present at the time the first list result was calculated is returned. |
|
| resourceVersion sets a constraint on what resource versions a request may be served from. See https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions for details. Defaults to unset |
|
| resourceVersionMatch determines how resourceVersion is applied to list calls. It is highly recommended that resourceVersionMatch be set for list calls where resourceVersion is set See https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions for details. Defaults to unset |
|
| Timeout for the list/watch call. This limits the duration of the call, regardless of any activity or inactivity. |
|
| Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion. |
HTTP code | Reponse body |
---|---|
200 - OK | |
401 - Unauthorized | Empty |
HTTP method
POST
Description
create a Build
Parameter | Type | Description |
---|---|---|
|
| When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed |
|
| fieldManager is a name associated with the actor or entity that is making these changes. The value must be less than or 128 characters long, and only contain printable characters, as defined by https://golang.org/pkg/unicode/#IsPrint. |
Parameter | Type | Description |
---|---|---|
|
HTTP code | Reponse body |
---|---|
200 - OK | |
201 - Created | |
202 - Accepted | |
401 - Unauthorized | Empty |
/apis/build.openshift.io/v1/namespaces/{namespace}/builds/{name}
Parameter | Type | Description |
---|---|---|
|
| name of the Build |
|
| object name and auth scope, such as for teams and projects |
Parameter | Type | Description |
---|---|---|
|
| If ‘true’, then the output is pretty printed. |
HTTP method
DELETE
Description
delete a Build
Parameter | Type | Description |
---|---|---|
|
| When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed |
|
| The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately. |
|
| Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the “orphan” finalizer will be added to/removed from the object’s finalizers list. Either this field or PropagationPolicy may be set, but not both. |
|
| Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: ‘Orphan’ - orphan the dependents; ‘Background’ - allow the garbage collector to delete the dependents in the background; ‘Foreground’ - a cascading policy that deletes all dependents in the foreground. |
Parameter | Type | Description |
---|---|---|
|
HTTP code | Reponse body |
---|---|
200 - OK | |
202 - Accepted | |
401 - Unauthorized | Empty |
HTTP method
GET
Description
read the specified Build
Parameter | Type | Description |
---|---|---|
|
| Should the export be exact. Exact export maintains cluster-specific fields like ‘Namespace’. Deprecated. Planned for removal in 1.18. |
|
| Should this value be exported. Export strips fields that a user can not specify. Deprecated. Planned for removal in 1.18. |
HTTP code | Reponse body |
---|---|
200 - OK | |
401 - Unauthorized | Empty |
HTTP method
PATCH
Description
partially update the specified Build
Parameter | Type | Description |
---|---|---|
|
| When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed |
|
| fieldManager is a name associated with the actor or entity that is making these changes. The value must be less than or 128 characters long, and only contain printable characters, as defined by https://golang.org/pkg/unicode/#IsPrint. This field is required for apply requests (application/apply-patch) but optional for non-apply patch types (JsonPatch, MergePatch, StrategicMergePatch). |
|
| Force is going to “force” Apply requests. It means user will re-acquire conflicting fields owned by other people. Force flag must be unset for non-apply patch requests. |
Parameter | Type | Description |
---|---|---|
|
HTTP code | Reponse body |
---|---|
200 - OK | |
401 - Unauthorized | Empty |
HTTP method
PUT
Description
replace the specified Build
Parameter | Type | Description |
---|---|---|
|
| When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed |
|
| fieldManager is a name associated with the actor or entity that is making these changes. The value must be less than or 128 characters long, and only contain printable characters, as defined by https://golang.org/pkg/unicode/#IsPrint. |
Parameter | Type | Description |
---|---|---|
|
HTTP code | Reponse body |
---|---|
200 - OK | |
201 - Created | |
401 - Unauthorized | Empty |
/apis/build.openshift.io/v1/namespaces/{namespace}/builds/{name}/log
Parameter | Type | Description |
---|---|---|
|
| name of the BuildLog |
|
| object name and auth scope, such as for teams and projects |
Parameter | Type | Description |
---|---|---|
|
| cointainer for which to stream logs. Defaults to only container if there is one container in the pod. |
|
| follow if true indicates that the build log should be streamed until the build terminates. |
|
| insecureSkipTLSVerifyBackend indicates that the apiserver should not confirm the validity of the serving certificate of the backend it is connecting to. This will make the HTTPS connection between the apiserver and the backend insecure. This means the apiserver cannot verify the log data it is receiving came from the real kubelet. If the kubelet is configured to verify the apiserver’s TLS credentials, it does not mean the connection to the real kubelet is vulnerable to a man in the middle attack (e.g. an attacker could not intercept the actual log data coming from the real kubelet). |
|
| limitBytes, If set, is the number of bytes to read from the server before terminating the log output. This may not display a complete final line of logging, and may return slightly more or slightly less than the specified limit. |
|
| 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. |
|
| If ‘true’, then the output is pretty printed. |
|
| previous returns previous build logs. Defaults to false. |
|
| sinceSeconds is a relative time in seconds before the current time from which to show logs. If this value precedes the time a pod was started, only logs since the pod start will be returned. If this value is in the future, no logs will be returned. Only one of sinceSeconds or sinceTime may be specified. |
|
| tailLines, If set, is the number of lines from the end of the logs to show. If not specified, logs are shown from the creation of the container or sinceSeconds or sinceTime |
|
| timestamps, If true, add an RFC3339 or RFC3339Nano timestamp at the beginning of every line of log output. Defaults to false. |
|
| version of the build for which to view logs. |
HTTP method
GET
Description
read log of the specified Build
HTTP code | Reponse body |
---|---|
200 - OK | |
401 - Unauthorized | Empty |
/apis/build.openshift.io/v1/namespaces/{namespace}/builds/{name}/clone
Parameter | Type | Description |
---|---|---|
|
| name of the BuildRequest |
|
| object name and auth scope, such as for teams and projects |
Parameter | Type | Description |
---|---|---|
|
| When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed |
|
| fieldManager is a name associated with the actor or entity that is making these changes. The value must be less than or 128 characters long, and only contain printable characters, as defined by https://golang.org/pkg/unicode/#IsPrint. |
|
| If ‘true’, then the output is pretty printed. |
HTTP method
POST
Description
create clone of a Build
Parameter | Type | Description |
---|---|---|
|
HTTP code | Reponse body |
---|---|
200 - OK | |
201 - Created | |
202 - Accepted | |
401 - Unauthorized | Empty |
/apis/build.openshift.io/v1/namespaces/{namespace}/builds/{name}/details
Parameter | Type | Description |
---|---|---|
|
| name of the Build |
|
| object name and auth scope, such as for teams and projects |
Parameter | Type | Description |
---|---|---|
|
| When present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed |
|
| fieldManager is a name associated with the actor or entity that is making these changes. The value must be less than or 128 characters long, and only contain printable characters, as defined by https://golang.org/pkg/unicode/#IsPrint. |
|
| If ‘true’, then the output is pretty printed. |
HTTP method
PUT
Description
replace details of the specified Build
Parameter | Type | Description |
---|---|---|
|
HTTP code | Reponse body |
---|---|
200 - OK | |
201 - Created | |
401 - Unauthorized | Empty |