Chapter 5. Working with Red Hat OpenShift Pipelines using the Developer perspective
You can use the Developer perspective of the OpenShift Container Platform web console to create CI/CD Pipelines for your software delivery process.
In the Developer perspective:
-
Use the Add
Pipeline Pipeline Builder option to create customized Pipelines for your application. -
Use the Add
From Git option to create Pipelines using operator-installed Pipeline templates and resources while creating an application on OpenShift Container Platform.
After you create the Pipelines for your application, you can view and visually interact with the deployed Pipelines in the Pipelines view. You can also use the Topology view to interact with the Pipelines created using the From Git option. You need to apply custom labels to a Pipeline created using the Pipeline Builder to see it in the Topology view.
Prerequisites
- You have access to an OpenShift Container Platform cluster and have switched to the Developer perspective.
- You have the OpenShift Pipelines Operator installed in your cluster.
- You are a cluster administrator or a user with create and edit permissions.
- You have created a project.
5.1. Constructing Pipelines using the Pipeline Builder
In the Developer perspective of the console, you can use the Add
- Construct a Pipeline flow using existing Tasks and ClusterTasks. When you install the OpenShift Pipelines Operator, it adds reusable Pipeline ClusterTasks to your cluster.
- Specify the type of resources required for the Pipeline Run, and if required, add additional parameters to the Pipeline.
- Reference these Pipeline resources in each of the Tasks in the Pipeline as input and output resources.
- The parameters for a Task are prepopulated based on the specifications of the Task. If required, reference any additional parameters added to the Pipeline in the Task.
Procedure
- In the Add view of the Developer perspective, click the Pipeline tile to see the Pipeline Builder page.
- Enter a unique name for the Pipeline.
Select a Task from the Select task list to add a Task to the Pipeline. This example uses the s2i-nodejs Task.
- To add sequential Tasks to the Pipeline, click the plus icon to the right or left of the Task, and from the Select task list, select the Task you want to add to the Pipeline. For this example, use the plus icon to the right of the s2i-nodejs Task to add an openshift-client Task.
To add a parallel Task to the existing Task, click the plus icon displayed below the Task, and from the Select Task list, select the parallel Task you want to add to the Pipeline.
Figure 5.1. Pipeline Builder
Click Add Resources to specify the name and type of resources that the Pipeline Run will use. These resources are then used by the Tasks in the Pipeline as inputs and outputs. For this example:
-
Add an input resource. In the Name field, enter
Source
, and from the Resource Type drop-down list, select Git. -
Add an output resource. In the Name field, enter
Img
, and from the Resource Type drop-down list, select Image.
-
Add an input resource. In the Name field, enter
- The Parameters for a Task are prepopulated based on the specifications of the Task. If required, use the Add Parameters link to add additional parameters.
A Missing Resources warning is displayed on a Task if the resources for the Task are not specified. Click the s2i-nodejs Task to see the side panel with details for the Task.
Figure 5.2. Tasks details in Pipelines Builder
In the Task side panel, specify the resources and parameters for it:
-
In the Input Resources
Source section, the Select Resources drop-down list displays the resources that you added to the Pipeline. For this example, select Source. -
In the Output Resources
Image section, click the Select Resources list, and select Img. -
If required, in the Parameters section, add more parameters to the default ones, by using the
$(params.<param-name>)
syntax.
-
In the Input Resources
- Similarly, add an input resource for the openshift-client Task.
- Click Create to create the Pipeline. You are redirected to the Pipeline Details page that displays the details of the created Pipeline.
- Click the Actions drop-down menu, and then click Start to start the Pipeline.
Optionally, you can also use the Edit YAML link, on the upper right of the Pipeline Builder page, to directly modify a Pipeline YAML file in the console. You can also use the operator-installed, reusable snippets and samples to create detailed Pipelines.
5.2. Creating applications with OpenShift Pipelines
To create Pipelines along with applications, use the From Git option in the Add view of the Developer perspective. For more information, see Creating applications using the Developer perspective.
5.3. Interacting with Pipelines using the Developer perspective
The Pipelines view in the Developer perspective lists all the pipelines in a project along with the following details:
- The namespace in which the pipeline was created
- The last pipeline run
- The status of the tasks in the pipeline run
- The status of the pipeline run
- The creation time of the last pipeline run
Procedure
In the Pipelines view of the Developer perspective, select a project from the Project drop-down list to see the Pipelines in that project.
Figure 5.3. Pipelines view in the Developer perspective
- Click the required Pipeline to see the Pipeline Details page. This page provides a visual representation of all the serial and parallel Tasks in the Pipeline. The Tasks are also listed at the lower right of the page. You can click the listed Tasks to view Task details.
Optionally, in the Pipeline Details page:
- Click the YAML tab to edit the YAML file for the Pipeline.
Click the Pipeline Runs tab to see the completed, running, or failed runs for the pipeline.
NoteThe Details section of the Pipeline Run Details page displays a Log Snippet of the failed pipeline run. Log Snippet provides a general error message and a snippet of the log. A link to the Logs section provides quick access to the details about the failed run. The Log Snippet is also displayed in the Details section of the Task Run Details page.
You can use the Options menu to stop a running pipeline, to rerun a pipeline using the same parameters and resources as that of the previous pipeline execution, or to delete a pipeline run.
- Click the Parameters tab to see the parameters defined in the pipeline. You can also add or edit additional parameters as required.
- Click the Resources tab to see the resources defined in the pipeline. You can also add or edit additional resources as required.
5.4. Starting Pipelines
After you create a Pipeline, you need to start it to execute the included Tasks in the defined sequence. You can start a Pipeline Run from the Pipelines view, Pipeline Details page, or the Topology view.
Procedure
To start a Pipeline using the Pipelines view:
- In the Pipelines view of the Developer perspective, click the Options menu adjoining a Pipeline, and select Start.
The Start Pipeline dialog box displays the Git Resources and the Image Resources based on the Pipeline definition.
NoteFor Pipelines created using the From Git option, the Start Pipeline dialog box also displays an
APP_NAME
field in the Parameters section, and all the fields in the dialog box are prepopulated by the Pipeline templates.- If you have resources in your namespace, the Git Resources and the Image Resources fields are prepopulated with those resources. If required, use the drop-downs to select or create the required resources and customize the Pipeline Run instance.
Optional: Modify the Advanced Options to add credentials to authenticate the specified private Git server or Docker registry.
- Under Advanced Options, click Show Credentials Options and select Add Secret.
In the Create Source Secret section, specify the following:
- A unique Secret Name for the secret.
- In the Designated provider to be authenticated section, specify the provider to be authenticated in the Access to field, and the base Server URL.
Select the Authentication Type and provide the credentials:
For the Authentication Type
Image Registry Crendentials
, specify the Registry Server Address that you want to authenticate, and provide your credentials in the Username, Password, and Email fields.Select Add Credentials if you want to specify an additional Registry Server Address.
-
For the Authentication Type
Basic Authentication
, specify the values for the UserName and Password or Token fields. -
For the Authentication Type
SSH Keys
, specify the value for the SSH Private Key field.
- Select the check mark to add the secret.
You can add multiple secrets based upon the number of resources in your Pipeline.
- Click Start to start the PipelineRun.
The Pipeline Run Details page displays the Pipeline being executed. After the Pipeline starts, the Tasks and Steps within each Task are executed. You can:
- Hover over the Tasks to see the time taken for the execution of each Step.
- Click on a Task to see logs for each of the Steps in the Task.
Click the Logs tab to see the logs according to the execution sequence of the Tasks and use the Download button to download the logs to a text file.
Figure 5.4. Pipeline run
For Pipelines created using the From Git option, you can use the Topology view to interact with Pipelines after you start them:
NoteTo see Pipelines created using the Pipeline Builder in the Topology view, customize the Pipeline labels to link the Pipeline with the application workload.
- On the left navigation panel, click Topology, and click on the application to see the Pipeline Runs listed in the side panel.
In the Pipeline Runs section, click Start Last Run to start a new Pipeline Run with the same parameters and resources as the previous ones. This option is disabled if a Pipeline Run has not been initiated.
Figure 5.5. Pipelines on the Topology view
In the Topology page, hover to the left of the application to see the status of the pipeline run for the application.
NoteThe side panel of the application node in the Topology page displays a Log Snippet when a pipeline run fails on a specific task run. You can view the Log Snippet in the Pipeline Runs section, under the Resources tab. Log Snippet provides a general error message and a snippet of the log. A link to the Logs section provides quick access to the details about the failed run.
5.5. Editing Pipelines
You can edit the Pipelines in your cluster using the Developer perspective of the web console:
Procedure
- In the Pipelines view of the Developer perspective, select the Pipeline you want to edit to see the details of the Pipeline. In the Pipeline Details page, click Actions and select Edit Pipeline.
In the Pipeline Builder page:
- You can add additional Tasks, parameters, or resources to the Pipeline.
- You can click the Task you want to modify to see the Task details in the side panel and modify the required Task details, such as the display name, parameters and resources.
- Alternatively, to delete the Task, click the Task, and in the side panel, click Actions and select Remove Task.
- Click Save to save the modified Pipeline.
5.6. Deleting Pipelines
You can delete the Pipelines in your cluster using the Developer perspective of the web console.
Procedure
- In the Pipelines view of the Developer perspective, click the Options menu adjoining a Pipeline, and select Delete Pipeline.
- In the Delete Pipeline confirmation prompt, click Delete to confirm the deletion.