Chapter 1. Installing Builds
As a cluster administrator, you can install Builds on an OpenShift Container Platform cluster.
1.1. Prerequisites
- You have access to the OpenShift Container Platform web console.
-
You have installed the
oc
CLI. - 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.
As a dependency component, the Red Hat OpenShift Pipelines Operator is automatically installed along with the Builds for Red Hat OpenShift Operator during installation. If you have already installed the Red Hat OpenShift Pipelines Operator, Builds uses that Operator for its functioning.
1.2. Installing Builds by using the web console
You can install the Builds for Red Hat OpenShift Operator from the OperatorHub by using the OpenShift Container Platform web console. Installing this Operator enables you to install and use build components.
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-operators
namespace to watch and be made available to all namespaces in the cluster. -
Check that the Installed Namespace is set to
openshift-operators
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 an 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
openshift-builds-<version>
channel. For example, to install the Builds for Red Hat OpenShift Operator version0.11.0
, you can use theopenshift-builds-0.11.0
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
- On the Installed Operators page, verify that the Builds for Red Hat OpenShift Operator is listed and its Status is set to Succeeded to confirm successful installation.
1.2.1. Creating a ShipwrightBuild resource by using the web console
After installing the Builds for Red Hat OpenShift Operator, you must create a ShipwrightBuild
resource to enable the functioning of the build controller.
Procedure
-
In the Administrator perspective of the web console, navigate to the Operators
Installed Operators page. - Click the Builds for Red Hat OpenShift Operator link present in the list. The Operator details page opens.
- Select the Shipwright Build tab and click Create ShipwrightBuild.
Select either the Form view or YAML view to configure a new
ShipwrightBuild
resource in the following manner:On selecting the Form view or YAML view, you get to see the default values configured for the
name
andtargetNamespace
fields. If you do not want to edit those fields, click Create to configure theShipwrightBuild
resource with default values.You can view the created resource in the Shipwright Build tab.
Verification
- Build controller and build webhook pods must have been created in the mentioned target namespace.
1.3. Installing Builds by using the CLI
You can also install Builds by using the CLI.
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:apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: openshift-builds-operator namespace: openshift-operators spec: channel: <channel-name> 1 name: openshift-builds-operator 2 source: redhat-operators 3 sourceNamespace: openshift-marketplace 4
Apply the subscription object by runninng the following command:
$ oc apply -f sub.yml
The Builds for Red Hat OpenShift Operator is now installed in the default target namespace
openshift-operators
.
1.3.1. Creating a ShipwrightBuild resource by using CLI
After installing the Builds for Red Hat OpenShift Operator, you must create a ShipwrightBuild
resource to enable the functioning of the build controller.
Procedure
Create a
instance.yaml
file to create aShipwrightBuild
resource in theshipwright-builds
namespace, as shown in the following example:apiVersion: operator.shipwright.io/v1alpha1 kind: ShipwrightBuild metadata: name: openshift-builds spec: targetNamespace: openshift-builds
Apply the YAML file by runninng the following command:
$ oc apply -f instance.yaml
Verification
Run the following command to verify that the
ShipwrightBuild
resource is now configured:$ oc get pods -n shipwright-builds
1.4. Disabling ShipwrightBuilds build controller and webhook pod
You can disable the ShipwrightBuilds
Custom Resource (CR) without disabling the shared-resources Container Storage Interface (CSI) driver component and the ShipwrightBuilds
Custom Resource Definition (CRD). Disabling the ShipwrightBuilds
CR removes the ShipwrightBuilds
build controller and ShipwrightBuilds
build webhook pod from the openshift-builds
namespace.
Procedure
Disable the
ShipwrightBuilds
controller and webhook by running the following command:$ oc patch openshiftbuild cluster --type=merge -p '{"spec":{"shipwright":{"build":{"state":"Disabled"}}}}'
This command disables the build controller and webhook but does not affect the
ShipwrightBuilds
CRD.