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/cluster resource:

    $ oc edit build.config.openshift.io/cluster

    The following is an example build.config.openshift.io/cluster resource:

    apiVersion: 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: Exists
    1 Build: Holds cluster-wide information on how to handle builds. The canonical, and only valid name is cluster.
    2 buildDefaults: Controls the default information for builds.
    3 defaultProxy: Contains the default proxy settings for all build operations, including image pull or push and source download.
    4 env: A set of default environment variables that are applied to the build if the specified variables do not exist on the build.
    5 gitProxy: Contains the proxy settings for Git operations only. If set, this overrides any Proxy settings for all Git commands, such as git clone.
    6 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.
    7 resources: Defines resource requirements to execute the build.
    8 buildOverrides: Controls override settings for builds.
    9 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.
    10 nodeSelector: A selector which must be true for the build pod to fit on a node.
    11 tolerations: A list of tolerations that overrides any existing tolerations set on a build pod.