Manage pipelines

Create pipeline configuration

To create a new pipeline configuration for a project to deploy it to a particular namespace (k5-project) use the "Create" capability on the project's "Pipeline configuration" tab. The master data you need to provide is the following:

TypeThere are 2 types of pipelines: release and deploy. A release pipeline publishes the project to the component repository while a deploy pipeline deploys the project to the selected OpenShift project.
NameA unique name for your pipeline configuration
Enable unit test executionIf turned on, all available unit tests will be executed automatically.
Auto triggerA pipeline run will be triggered automatically whenever the source repository (Git) was changed. This needs further configuration in your Git repository
Timestamp tagAdds a timestamp to pre-release versions to ensure that every commit gets built without manually changing the version (only available for release pipelines)
Enable unique SemVer checkWill check if the current version has already been published or not to prevent previous versions to be overwritten unintentionally (only available for release pipelines)
Source repository (Git) Information - BranchYou can create a pipeline configuration for each local branch of your project. The information is prepopulated with the current used and checked out branch and can be changed via drop-down.
Source repository (Git) information - CredentialsYou can either use personal Git credentials or dedicated Git credentials. Choosing the latter, you will be asked to fill in the Git username and Git access token. The Git username is the name of a Git user with access to the Git repository of the project. The Git access token is the token of a Git user with access to the Git repository of the project. Those credentials will be used to access to the Git repository when running the pipeline.
Deploy target informationThis is only for the deploy pipeline. The OpenShift target project to which the project will be deployed
Note:

The source repository (Git) Information can not be edited after the creation of the pipeline. Also, the credentials are not shown later on. To update the credentials or the source branch for the pipeline configuration, simply delete the existing one and create a new one. |

Prerequisites for the "auto trigger" feature

It is mandatory that a webhook (for push events) is activated in the regarding Git repository. This has to be done manually. Regardless of the Git provider, for creating a webhook (trigger), a webhook URL and secret token is needed.

  • The webhook URL can be found in the OpenShift route k5-pipeline-triggerwebhook in the namespace of the Solution Hub.
    • default: k5-pipeline-triggerwebhook-<k5-tools>.<cluster-domain>
  • The token secret can be found in the OpenShift secret k5-git-webhook-secret in the namespace of the Solution Hub

The following commands can be used to get the webhook URL and the token:

oc -n k5-tools get route k5-pipeline-triggerwebhook -o jsonpath='{.spec.host}'; echo

oc -n k5-tools get secret k5-git-webhook-secret -o jsonpath='{.data.token}' | base64 -d; echo

Please replace k5-tools with the name of the project, where IBM Industry Solutions Workbench is installed.

Edit pipeline configuration

To edit a pipeline configuration either click the "Edit" capability on a pipeline row or on the "Features" section after opening the Pipeline Details view. The following fields can be edited:

PropertyDescription
Enable unit test executionIf turned on, all available unit tests will be executed automatically.
Auto triggerA pipeline run will be triggered automatically whenever the source repository (Git) was changed.
Timestamp tagAdds a timestamp to pre-release versions to ensure that every commit gets built without manually changing the version (only available for release pipelines)
Enable unique SemVer checkWill check if the current version has already been published or not to prevent previous versions to be overwritten unintentionally (only available for release pipelines)
Deploy target informationThis is only for the deploy pipeline. The OpenShift target project to which the project will be deployed

Delete Pipeline

Deleting a pipeline will not affect the service or any results, that this pipeline has created.

Manage pipeline configurations

Solution Designer offers several tools to manage all your pipeline configurations from within the CI/CD capability that can be found on the navigation bar on the left. The CI/CD page is separated in the following tabs:

  • Pipeline configurations
  • Pipeline runs

Pipeline configurations tab

The pipeline configurations tab shows a list of all pipelines configured for this service project. The table also provides information on the pipeline (incl. a link to the OpenShift Web Console), the pipeline type (release or deploy), the source branch, the linked name of the project, the linked name of the last pipeline run, as well as the last run status and the last run time.

Each row consists of one pipeline configuration and provides the following inline capabilities:

  • Open button: opens the "Details" view of that configuration
  • Edit button: opens an action to edit the feature flags of the pipeline configuration
  • Run button: triggers the pipeline
  • Delete button: deletes the pipeline configuration

Pipeline runs tab

The pipeline runs tab shows a list of all pipeline runs related with this service project. It provides the following information:

  • Name of the pipeline run (with link to OpenShift Web Console)
  • Pipeline type
  • Run status
  • Task status
  • Source Branch
  • Time started
  • Duration
  • Name of the project (with link to OpenShift Web Console) - this column is not visible by default
  • Name of the pipeline (with link to OpenShift Web Console) - this column is not visible by default
Note:

The links to the OpenShift Web Console direct to the respective sub-page and require authentication.