Chapter 1. Installing Builds
As a cluster administrator, you can install Builds on an OpenShift Container Platform cluster to create, manage, and run container image builds directly within the cluster.
1.1. Installing Builds by using the web console Copy linkLink copied to clipboard!
Use the OpenShift Container Platform web console to install the builds for Red Hat OpenShift components. The graphical interface simplifies setting up the build infrastructure, allowing you to compile source code and create container images directly within your OpenShift cluster.
Prerequisites
- You have access to the OpenShift Container Platform web console.
- You are logged in to the OpenShift Container Platform cluster as an administrator.
- Your cluster has the Marketplace capability enabled or the Red Hat Operator catalog source configured manually.
- You have installed the Red Hat OpenShift Pipelines Operator.
Procedure
-
In the Administrator perspective of the web console, navigate to the Operators
OperatorHub page. - Use the Filter by keyword box to search for Builds for Red Hat OpenShift Operator in the catalog.
- Click the Builds for Red Hat OpenShift Operator tile.
- Read the brief description about the Operator and click Install.
On the Install Operator page:
-
Check that the Installation Mode is set to All namespaces on the cluster (default). This mode installs the Operator in the default
openshift-builds
namespace to watch and be made available to all namespaces in the cluster. -
Check that the Installed Namespace is set to
openshift-builds
by default. - Select Automatic for the Approval Strategy. This ensures that the future upgrades to the Operator are handled automatically by the Operator Lifecycle Manager (OLM). If you select the Manual approval strategy, OLM creates an update request. As a cluster administrator, you must then manually approve the OLM update request to update the Operator to the new version.
Select Update Channel:
- The Update Channel is set to latest by default. The latest channel enables installation of the most recent stable version of the Builds for Red Hat OpenShift Operator.
-
To install a specific version of the Builds for Red Hat OpenShift Operator, cluster administrators can use the corresponding
builds-<version>
channel. For example, to install the Builds for Red Hat OpenShift Operator version1.3
, you can use thebuilds-1.3
channel.
-
Check that the Installation Mode is set to All namespaces on the cluster (default). This mode installs the Operator in the default
- Click Install.
Verification
- In the Administrator perspective of the web console, select the project as openshift-builds.
-
Go to the Operators
Installed Operators page. -
On the Installed Operators page, set the namespace to
All Projects
. - Verify that the status of Builds for Red Hat OpenShift Operator and Red Hat OpenShift Pipelines is displayed as Succeeded Up to date.
-
Go to the Workloads
Pods page. -
On the Pods page, set the namespace to
openshift-builds
. Verify that the following pods are listed:
-
openshift-builds-operator
pod -
shipwright-build-controller
andshipwright-build-webhook
pods -
shared-resource-csi-driver
node andshared-resource-csi-driver-webhook
pod
-
-
Set the namespace to
openshift-operators
. Verify that the following pods are listed:
-
openshift-pipelines-operator
pod -
tekton-operator-webhook
pod
-
1.2. Installing Builds by using the CLI Copy linkLink copied to clipboard!
Use the Command Line Interface (CLI) to install the necessary builds for Red Hat OpenShift components in OpenShift Container Platform. This CLI approach provides granular control over the configuration needed to compile source code and containerize applications within the cluster.
Prerequisites
-
You have installed the OpenShift CLI (
oc
). - You are logged in to the OpenShift Container Platform cluster as an administrator.
- Your cluster has the Marketplace capability enabled or the Red Hat Operator catalog source configured manually.
- You have installed the Red Hat OpenShift Pipelines Operator.
Procedure
Create a
sub.yaml
subscription object file to subscribe a namespace to the Builds for Red Hat OpenShift Operator, as shown in the following example:Copy to Clipboard Copied! Toggle word wrap Toggle overflow Run the following command to apply the subscription object:
oc apply -f sub.yml
$ oc apply -f sub.yml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow The Builds for Red Hat OpenShift Operator is now installed in the target namespace,
openshift-builds
.
Verification
Run the following command to ensure that the
OpenshiftBuild
resource is created:oc get openshiftbuilds
$ oc get openshiftbuilds
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Example output
NAME AGE cluster 32m
NAME AGE cluster 32m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Run the following command to ensure that the
ShipwrightBuilds
resource is created:oc get shipwrightbuilds
$ oc get shipwrightbuilds
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Example output
NAME AGE cluster-mzrg4 33m
NAME AGE cluster-mzrg4 33m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Run the following command to ensure that the required pods are created in the
openshift-builds
namespace:oc get pods -n openshift-builds
$ oc get pods -n openshift-builds
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Example output
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Run the following command to ensure that the required pods are created in the
openshift-operators
namespace:oc get pods -n openshift-operators
$ oc get pods -n openshift-operators
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Example output
NAME READY STATUS RESTARTS AGE openshift-pipelines-operator-64d8c4969c-952cc 2/2 Running 0 3d13h tekton-operator-webhook-756f5dfdc7-c99mc 1/1 Running 0 3d13h
NAME READY STATUS RESTARTS AGE openshift-pipelines-operator-64d8c4969c-952cc 2/2 Running 0 3d13h tekton-operator-webhook-756f5dfdc7-c99mc 1/1 Running 0 3d13h
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.3. Disabling ShipwrightBuilds components Copy linkLink copied to clipboard!
You can disable the ShipwrightBuilds custom resource (CR). This action removes the shipwright-build-controller
and shipwright-build-webhook
pod from the openshift-builds
namespace. It does not affect the Shared Resources Container Storage Interface (CSI) driver component or the ShipwrightBuilds
custom resource definition (CRD).
Prerequisites
-
You have installed the OpenShift CLI (
oc
). - You are logged in to the OpenShift Container Platform cluster as an administrator.
- You have installed the builds for Red Hat OpenShift.
Procedure
Run the following command to disable the
shipwright-build-controller
andshipwright-build-webhook
pods:oc patch openshiftbuild cluster --type=merge -p '{"spec":{"shipwright":{"build":{"state":"Disabled"}}}}'
$ oc patch openshiftbuild cluster --type=merge -p '{"spec":{"shipwright":{"build":{"state":"Disabled"}}}}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow This command disables the
shipwright-build-controller
andshipwright-build-webhook
pods but does not affect theShipwrightBuilds
CRD.
Verification
Run the following command to verify that the
shipwright-build-controller
andshipwright-build-webhook
pods are disabled:oc get pods -n openshift-builds
$ oc get pods -n openshift-builds
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Example output
NAME READY STATUS RESTARTS AGE openshift-builds-operator-6f5c48c6b5-cvp2w 2/2 Running 0 13d shared-resource-csi-driver-node-gbkqs 2/2 Running 0 13d shared-resource-csi-driver-webhook-9d9bd48f4-d5ln6 1/1 Running 0 13d
NAME READY STATUS RESTARTS AGE openshift-builds-operator-6f5c48c6b5-cvp2w 2/2 Running 0 13d shared-resource-csi-driver-node-gbkqs 2/2 Running 0 13d shared-resource-csi-driver-webhook-9d9bd48f4-d5ln6 1/1 Running 0 13d
Copy to Clipboard Copied! Toggle word wrap Toggle overflow