Build configuration resources
Use the following procedure to configure build settings.
Build controller configuration parameters
The build.config.openshift.io/cluster resource offers the following configuration parameters.
| Parameter | Description |
|---|---|
Build |
Holds cluster-wide information on how to handle builds. The canonical, and only valid name is cluster.spec: Holds user-settable values for the build controller configuration. |
buildDefaults |
Controls the default information for builds.defaultProxy: Contains the default proxy settings for all build operations, including image pull or push and source download.You can override values by setting the HTTP_PROXY, HTTPS_PROXY, and NO_PROXY environment variables in the BuildConfig strategy.gitProxy: Contains the proxy settings for Git operations only. If set, this overrides any proxy settings for all Git commands, such as git clone.Values that are not set here are inherited from DefaultProxy. env: A set of default environment variables that are applied to the build if the specified variables do not exist on the build.imageLabels: A list of labels that are applied to the resulting image. You can override a default label by providing a label with the same name in the BuildConfig.resources: Defines resource requirements to execute the build. |
ImageLabel |
name: Defines the name of the label. It must have non-zero length. |
buildOverrides |
Controls override settings for builds.imageLabels: A list of labels that are applied to the resulting image. If you provided a label in the BuildConfig with the same name as one in this table, your label will be overwritten.nodeSelector: A selector which must be true for the build pod to fit on a node.tolerations: A list of tolerations that overrides any existing tolerations set on a build pod. |
BuildList |
items: Standard object's metadata. |
Configuring build settings
You can configure build settings by editing the build.config.openshift.io/cluster resource.
Procedure
- Edit the
build.config.openshift.io/clusterresource by entering the following command:terminal$ oc edit build.config.openshift.io/clusterThe following is an example
build.config.openshift.io/clusterresource:yamlapiVersion: config.openshift.io/v1 kind: Build (1) metadata: annotations: release.openshift.io/create-only: "true" creationTimestamp: "2019-05-17T13:44:26Z" generation: 2 name: cluster resourceVersion: "107233" selfLink: /apis/config.openshift.io/v1/builds/cluster uid: e2e9cc14-78a9-11e9-b92b-06d6c7da38dc spec: buildDefaults: (2) defaultProxy: (3) httpProxy: http://proxy.com httpsProxy: https://proxy.com noProxy: internal.com env: (4) - name: envkey value: envvalue gitProxy: (5) httpProxy: http://gitproxy.com httpsProxy: https://gitproxy.com noProxy: internalgit.com imageLabels: (6) - name: labelkey value: labelvalue resources: (7) limits: cpu: 100m memory: 50Mi requests: cpu: 10m memory: 10Mi buildOverrides: (8) imageLabels: (9) - name: labelkey value: labelvalue nodeSelector: (10) selectorkey: selectorvalue tolerations: (11) - effect: NoSchedule key: node-role.kubernetes.io/builds operator: ExistsBuild: Holds cluster-wide information on how to handle builds. The canonical, and only valid name iscluster.buildDefaults: Controls the default information for builds.defaultProxy: Contains the default proxy settings for all build operations, including image pull or push and source download.env: A set of default environment variables that are applied to the build if the specified variables do not exist on the build.gitProxy: Contains the proxy settings for Git operations only. If set, this overrides any Proxy settings for all Git commands, such asgit clone.imageLabels: A list of labels that are applied to the resulting image. You can override a default label by providing a label with the same name in theBuildConfig.resources: Defines resource requirements to execute the build.buildOverrides: Controls override settings for builds.imageLabels: A list of labels that are applied to the resulting image. If you provided a label in theBuildConfigwith the same name as one in this table, your label will be overwritten.nodeSelector: A selector which must be true for the build pod to fit on a node.tolerations: A list of tolerations that overrides any existing tolerations set on a build pod.