POST /apis/build.openshift.io/v1/buildconfigs HTTP/1.1 Authorization: Bearer $TOKEN Accept: application/json Connection: close Content-Type: application/json' { "kind": "BuildConfig", "apiVersion": "build.openshift.io/v1", ... }
Build configurations define a build process for new Docker images. There are three types of builds possible - a Docker build using a Dockerfile, a Source-to-Image build that uses a specially prepared base image that accepts source code that it can make runnable, and a custom build that can run // arbitrary Docker images as a base and accept the build parameters. Builds run on the cluster and on completion are pushed to the Docker registry specified in the "output" section. A build can be triggered via a webhook, when the base image changes, or when a user manually requests a new build be // created.
Each build created by a build configuration is numbered and refers back to its parent configuration. Multiple builds can be triggered at once. Builds that do not have "output" set can be used to test code or run a verification build.
Expand or mouse-over a field for more information about it.
apiVersion:kind:metadata:
annotations:
[string]:clusterName:creationTimestamp:deletionGracePeriodSeconds:deletionTimestamp:finalizers:
- [string]:generateName:generation:initializers:
pending:
- name:result:
apiVersion:code:details:
causes:
- field:message:reason:group:kind:name:retryAfterSeconds:uid:kind:message:metadata:
resourceVersion:selfLink:reason:status:labels:
[string]:name:namespace:ownerReferences:
- apiVersion:blockOwnerDeletion:controller:kind:name:uid:resourceVersion:selfLink:uid:spec:
completionDeadlineSeconds:failedBuildsHistoryLimit:nodeSelector:
[string]:output:
imageLabels:
- name:value:pushSecret:
name:to:
apiVersion:fieldPath:kind:name:namespace:resourceVersion:uid:postCommit:
args:
- [string]:command:
- [string]:script:resources:
limits:
[string]:requests:
[string]:revision:
git:
author:
email:name:commit:committer:
email:name:message:type:runPolicy:serviceAccount:source:
binary:
asFile:contextDir:dockerfile:git:
httpProxy:httpsProxy:noProxy:ref:uri:images:
- from:
- apiVersion:fieldPath:kind:name:namespace:resourceVersion:uid:paths:
- destinationDir:sourcePath:pullSecret:
name:secrets:
- destinationDir:secret:
name:sourceSecret:
name:type:strategy:
customStrategy:
buildAPIVersion:env:
- name:value:valueFrom:
configMapKeyRef:
key:name:optional:fieldRef:
apiVersion:fieldPath:resourceFieldRef:
containerName:divisor:resource:secretKeyRef:
key:name:optional:exposeDockerSocket:forcePull:from:
apiVersion:fieldPath:kind:name:namespace:resourceVersion:uid:pullSecret:
name:secrets:
- mountPath:secretSource:
name:dockerStrategy:
buildArgs:
- name:value:valueFrom:
configMapKeyRef:
key:name:optional:fieldRef:
apiVersion:fieldPath:resourceFieldRef:
containerName:divisor:resource:secretKeyRef:
key:name:optional:dockerfilePath:env:
- name:value:valueFrom:
configMapKeyRef:
key:name:optional:fieldRef:
apiVersion:fieldPath:resourceFieldRef:
containerName:divisor:resource:secretKeyRef:
key:name:optional:forcePull:from:
apiVersion:fieldPath:kind:name:namespace:resourceVersion:uid:imageOptimizationPolicy:noCache:pullSecret:
name:jenkinsPipelineStrategy:
env:
- name:value:valueFrom:
configMapKeyRef:
key:name:optional:fieldRef:
apiVersion:fieldPath:resourceFieldRef:
containerName:divisor:resource:secretKeyRef:
key:name:optional:jenkinsfile:jenkinsfilePath:sourceStrategy:
env:
- name:value:valueFrom:
configMapKeyRef:
key:name:optional:fieldRef:
apiVersion:fieldPath:resourceFieldRef:
containerName:divisor:resource:secretKeyRef:
key:name:optional:forcePull:from:
apiVersion:fieldPath:kind:name:namespace:resourceVersion:uid:incremental:pullSecret:
name:runtimeArtifacts:
- destinationDir:sourcePath:runtimeImage:
apiVersion:fieldPath:kind:name:namespace:resourceVersion:uid:scripts:type:successfulBuildsHistoryLimit:triggers:
- bitbucket:
- allowEnv:secret:generic:
allowEnv:secret:github:
allowEnv:secret:gitlab:
allowEnv:secret:imageChange:
from:
apiVersion:fieldPath:kind:name:namespace:resourceVersion:uid:lastTriggeredImageID:type:status:
lastVersion:
Create a BuildConfig
POST /apis/build.openshift.io/v1/buildconfigs HTTP/1.1 Authorization: Bearer $TOKEN Accept: application/json Connection: close Content-Type: application/json' { "kind": "BuildConfig", "apiVersion": "build.openshift.io/v1", ... }
Create a BuildConfig
POST /apis/build.openshift.io/v1/namespaces/$NAMESPACE/buildconfigs HTTP/1.1 Authorization: Bearer $TOKEN Accept: application/json Connection: close Content-Type: application/json' { "kind": "BuildConfig", "apiVersion": "build.openshift.io/v1", ... }
$ curl -k \ -X POST \ -d @- \ -H "Authorization: Bearer $TOKEN" \ -H 'Accept: application/json' \ -H 'Content-Type: application/json' \ https://$ENDPOINT/apis/build.openshift.io/v1/namespaces/$NAMESPACE/buildconfigs <<'EOF' { "kind": "BuildConfig", "apiVersion": "build.openshift.io/v1", ... } EOF
Read the specified BuildConfig
GET /apis/build.openshift.io/v1/namespaces/$NAMESPACE/buildconfigs/$NAME HTTP/1.1 Authorization: Bearer $TOKEN Accept: application/json Connection: close
$ curl -k \ -H "Authorization: Bearer $TOKEN" \ -H 'Accept: application/json' \ https://$ENDPOINT/apis/build.openshift.io/v1/namespaces/$NAMESPACE/buildconfigs/$NAME
Parameter | Description |
---|---|
name |
name of the BuildConfig |
namespace |
object name and auth scope, such as for teams and projects |
List or watch objects of kind BuildConfig
GET /apis/build.openshift.io/v1/buildconfigs HTTP/1.1 Authorization: Bearer $TOKEN Accept: application/json Connection: close
$ curl -k \ -H "Authorization: Bearer $TOKEN" \ -H 'Accept: application/json' \ https://$ENDPOINT/apis/build.openshift.io/v1/buildconfigs
Parameter | Description |
---|---|
pretty |
If 'true', then the output is pretty printed. |
fieldSelector |
A selector to restrict the list of returned objects by their fields. Defaults to everything. |
includeUninitialized |
If true, partially initialized resources are included in the response. |
labelSelector |
A selector to restrict the list of returned objects by their labels. Defaults to everything. |
resourceVersion |
When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it’s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv. |
timeoutSeconds |
Timeout for the list/watch call. |
watch |
Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion. |
List or watch objects of kind BuildConfig
GET /apis/build.openshift.io/v1/namespaces/$NAMESPACE/buildconfigs HTTP/1.1 Authorization: Bearer $TOKEN Accept: application/json Connection: close
$ curl -k \ -H "Authorization: Bearer $TOKEN" \ -H 'Accept: application/json' \ https://$ENDPOINT/apis/build.openshift.io/v1/namespaces/$NAMESPACE/buildconfigs
Parameter | Description |
---|---|
namespace |
object name and auth scope, such as for teams and projects |
Parameter | Description |
---|---|
pretty |
If 'true', then the output is pretty printed. |
fieldSelector |
A selector to restrict the list of returned objects by their fields. Defaults to everything. |
includeUninitialized |
If true, partially initialized resources are included in the response. |
labelSelector |
A selector to restrict the list of returned objects by their labels. Defaults to everything. |
resourceVersion |
When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it’s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv. |
timeoutSeconds |
Timeout for the list/watch call. |
watch |
Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion. |
Watch changes to an object of kind BuildConfig
GET /apis/build.openshift.io/v1/watch/namespaces/$NAMESPACE/buildconfigs/$NAME HTTP/1.1 Authorization: Bearer $TOKEN Accept: application/json Connection: close
$ curl -k \ -H "Authorization: Bearer $TOKEN" \ -H 'Accept: application/json' \ https://$ENDPOINT/apis/build.openshift.io/v1/watch/namespaces/$NAMESPACE/buildconfigs/$NAME
Parameter | Description |
---|---|
name |
name of the BuildConfig |
namespace |
object name and auth scope, such as for teams and projects |
Parameter | Description |
---|---|
fieldSelector |
A selector to restrict the list of returned objects by their fields. Defaults to everything. |
includeUninitialized |
If true, partially initialized resources are included in the response. |
labelSelector |
A selector to restrict the list of returned objects by their labels. Defaults to everything. |
pretty |
If 'true', then the output is pretty printed. |
resourceVersion |
When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it’s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv. |
timeoutSeconds |
Timeout for the list/watch call. |
watch |
Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion. |
Watch individual changes to a list of BuildConfig
GET /apis/build.openshift.io/v1/watch/buildconfigs HTTP/1.1 Authorization: Bearer $TOKEN Accept: application/json Connection: close
$ curl -k \ -H "Authorization: Bearer $TOKEN" \ -H 'Accept: application/json' \ https://$ENDPOINT/apis/build.openshift.io/v1/watch/buildconfigs
Parameter | Description |
---|---|
fieldSelector |
A selector to restrict the list of returned objects by their fields. Defaults to everything. |
includeUninitialized |
If true, partially initialized resources are included in the response. |
labelSelector |
A selector to restrict the list of returned objects by their labels. Defaults to everything. |
pretty |
If 'true', then the output is pretty printed. |
resourceVersion |
When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it’s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv. |
timeoutSeconds |
Timeout for the list/watch call. |
watch |
Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion. |
Watch individual changes to a list of BuildConfig
GET /apis/build.openshift.io/v1/watch/namespaces/$NAMESPACE/buildconfigs HTTP/1.1 Authorization: Bearer $TOKEN Accept: application/json Connection: close
$ curl -k \ -H "Authorization: Bearer $TOKEN" \ -H 'Accept: application/json' \ https://$ENDPOINT/apis/build.openshift.io/v1/watch/namespaces/$NAMESPACE/buildconfigs
Parameter | Description |
---|---|
namespace |
object name and auth scope, such as for teams and projects |
Parameter | Description |
---|---|
fieldSelector |
A selector to restrict the list of returned objects by their fields. Defaults to everything. |
includeUninitialized |
If true, partially initialized resources are included in the response. |
labelSelector |
A selector to restrict the list of returned objects by their labels. Defaults to everything. |
pretty |
If 'true', then the output is pretty printed. |
resourceVersion |
When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it’s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv. |
timeoutSeconds |
Timeout for the list/watch call. |
watch |
Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion. |
Replace the specified BuildConfig
PUT /apis/build.openshift.io/v1/namespaces/$NAMESPACE/buildconfigs/$NAME HTTP/1.1 Authorization: Bearer $TOKEN Accept: application/json Connection: close Content-Type: application/json' { "kind": "BuildConfig", "apiVersion": "build.openshift.io/v1", ... }
$ curl -k \ -X PUT \ -d @- \ -H "Authorization: Bearer $TOKEN" \ -H 'Accept: application/json' \ -H 'Content-Type: application/json' \ https://$ENDPOINT/apis/build.openshift.io/v1/namespaces/$NAMESPACE/buildconfigs/$NAME <<'EOF' { "kind": "BuildConfig", "apiVersion": "build.openshift.io/v1", ... } EOF
Partially update the specified BuildConfig
PATCH /apis/build.openshift.io/v1/namespaces/$NAMESPACE/buildconfigs/$NAME HTTP/1.1 Authorization: Bearer $TOKEN Accept: application/json Connection: close Content-Type: application/json-patch+json' { ... }
$ curl -k \ -X PATCH \ -d @- \ -H "Authorization: Bearer $TOKEN" \ -H 'Accept: application/json' \ -H 'Content-Type: application/json-patch+json' \ https://$ENDPOINT/apis/build.openshift.io/v1/namespaces/$NAMESPACE/buildconfigs/$NAME <<'EOF' { ... } EOF
Parameter | Description |
---|---|
name |
name of the BuildConfig |
namespace |
object name and auth scope, such as for teams and projects |
Delete a BuildConfig
DELETE /apis/build.openshift.io/v1/namespaces/$NAMESPACE/buildconfigs/$NAME HTTP/1.1 Authorization: Bearer $TOKEN Accept: application/json Connection: close Content-Type: application/json' { ... }
$ curl -k \ -X DELETE \ -d @- \ -H "Authorization: Bearer $TOKEN" \ -H 'Accept: application/json' \ -H 'Content-Type: application/json' \ https://$ENDPOINT/apis/build.openshift.io/v1/namespaces/$NAMESPACE/buildconfigs/$NAME <<'EOF' { ... } EOF
Parameter | Description |
---|---|
name |
name of the BuildConfig |
namespace |
object name and auth scope, such as for teams and projects |
Parameter | Description |
---|---|
pretty |
If 'true', then the output is pretty printed. |
gracePeriodSeconds |
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. |
orphanDependents |
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. |
propagationPolicy |
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. |
Delete collection of BuildConfig
DELETE /apis/build.openshift.io/v1/namespaces/$NAMESPACE/buildconfigs HTTP/1.1 Authorization: Bearer $TOKEN Accept: application/json Connection: close
$ curl -k \ -X DELETE \ -H "Authorization: Bearer $TOKEN" \ -H 'Accept: application/json' \ https://$ENDPOINT/apis/build.openshift.io/v1/namespaces/$NAMESPACE/buildconfigs
Parameter | Description |
---|---|
namespace |
object name and auth scope, such as for teams and projects |
Parameter | Description |
---|---|
pretty |
If 'true', then the output is pretty printed. |
fieldSelector |
A selector to restrict the list of returned objects by their fields. Defaults to everything. |
includeUninitialized |
If true, partially initialized resources are included in the response. |
labelSelector |
A selector to restrict the list of returned objects by their labels. Defaults to everything. |
resourceVersion |
When specified with a watch call, shows changes that occur after that particular version of a resource. Defaults to changes from the beginning of history. When specified for list: - if unset, then the result is returned from remote storage based on quorum-read flag; - if it’s 0, then we simply return what we currently have in cache, no guarantee; - if set to non zero, then the result is at least as fresh as given rv. |
timeoutSeconds |
Timeout for the list/watch call. |
watch |
Watch for changes to the described resources and return them as a stream of add, update, and remove notifications. Specify resourceVersion. |
Create instantiate of a BuildRequest
POST /apis/build.openshift.io/v1/namespaces/$NAMESPACE/buildconfigs/$NAME/instantiate HTTP/1.1 Authorization: Bearer $TOKEN Accept: application/json Connection: close Content-Type: application/json' { "kind": "BuildRequest", "apiVersion": "build.openshift.io/v1", ... }
$ curl -k \ -X POST \ -d @- \ -H "Authorization: Bearer $TOKEN" \ -H 'Accept: application/json' \ -H 'Content-Type: application/json' \ https://$ENDPOINT/apis/build.openshift.io/v1/namespaces/$NAMESPACE/buildconfigs/$NAME/instantiate <<'EOF' { "kind": "BuildRequest", "apiVersion": "build.openshift.io/v1", ... } EOF
Connect POST requests to instantiatebinary of BinaryBuildRequestOptions
POST /apis/build.openshift.io/v1/namespaces/$NAMESPACE/buildconfigs/$NAME/instantiatebinary HTTP/1.1 Authorization: Bearer $TOKEN Accept: application/json Connection: close
$ curl -k \ -X POST \ -H "Authorization: Bearer $TOKEN" \ -H 'Accept: application/json' \ https://$ENDPOINT/apis/build.openshift.io/v1/namespaces/$NAMESPACE/buildconfigs/$NAME/instantiatebinary
Parameter | Description |
---|---|
name |
name of the BinaryBuildRequestOptions |
namespace |
object name and auth scope, such as for teams and projects |
Parameter | Description |
---|---|
asFile |
asFile determines if the binary should be created as a file within the source rather than extracted as an archive |
revision.authorEmail |
revision.authorEmail of the source control user |
revision.authorName |
revision.authorName of the source control user |
revision.commit |
revision.commit is the value identifying a specific commit |
revision.committerEmail |
revision.committerEmail of the source control user |
revision.committerName |
revision.committerName of the source control user |
revision.message |
revision.message is the description of a specific commit |
Connect POST requests to webhooks of Build
POST /apis/build.openshift.io/v1/namespaces/$NAMESPACE/buildconfigs/$NAME/webhooks HTTP/1.1 Authorization: Bearer $TOKEN Accept: application/json Connection: close
$ curl -k \ -X POST \ -H "Authorization: Bearer $TOKEN" \ -H 'Accept: application/json' \ https://$ENDPOINT/apis/build.openshift.io/v1/namespaces/$NAMESPACE/buildconfigs/$NAME/webhooks
Parameter | Description |
---|---|
name |
name of the Build |
namespace |
object name and auth scope, such as for teams and projects |
Connect POST requests to webhooks of Build
POST /apis/build.openshift.io/v1/namespaces/$NAMESPACE/buildconfigs/$NAME/webhooks/$PATH HTTP/1.1 Authorization: Bearer $TOKEN Accept: application/json Connection: close
$ curl -k \ -X POST \ -H "Authorization: Bearer $TOKEN" \ -H 'Accept: application/json' \ https://$ENDPOINT/apis/build.openshift.io/v1/namespaces/$NAMESPACE/buildconfigs/$NAME/webhooks/$PATH
Parameter | Description |
---|---|
name |
name of the Build |
namespace |
object name and auth scope, such as for teams and projects |
path |
path to the resource |