Introduction to Standard, Cross Cloud Pipelines
Standardise, improve re-usability and scale your deployments with Ozone's customisable catalog
Ozone's Deployment Workflow Structure
The top-down view of ozone's deployment workflow is as follows:
Releases - A combination of Approvals and Pipelines as a Directed Acyclic Graph
Pipelines - Allow you to define tasks that can execute either sequentially or in parallel as a Directed Acyclic Graph.
Tasks - Runs as a pod and allows you to define sequential steps within itself
Steps - The base unit of the workflow. Accepts a base image and takes in any commands that can be executed. Runs as a container.
The Task Catalog
Tasks are comprised of sequential steps. Ozone leverages Tekton's framework, which enables a truly scalable, secure and portable way of executing CI/CD workflows. Tasks run as a pod, which enables them to share common volumes for I/O between tasks. Tasks can then be sequences in a pipeline; with any form of execution as long as it adheres to a Directed Acyclic Graph.
How do I create a pipeline using tasks?
Navigate to pipeline templates on the left hand bar
Click on + New pipeline
Enter the pipeline details
You can optionally reference a rollback pipeline that executes in case this pipeline fails
Click on +Add Task to open the task catalog
Drag and drop tasks from the catalog and place them on the canvas
Once you have more than one task on the canvas, drag the mouse from the task handles to initiate a execution sequence connector
You can optionally map results that are generated upstream to the destination task after the connector is linked
Continue till you have achieved your use case for the pipeline in context
You can also edit the pipeline in the YAML format, if that's more comfortable for you. Use the toggle button to switch over to the YAML editor mode to do so.
Creating Custom Tasks
To create a custom task, navigate to Pipelines Templates
Select the "Task Templates" tab
Click on +New Task
Enter the task template name
Enter the description
Enter the task yaml
Click on create
The task is now added to the catalog of your Ozone account. It can now be consumed by including it into pipeline templates.
You can switch over to the visual mode to verify the execution order of the steps within a task. Since Tasks are our fundamental building blocks that abstract away the inner workings of the steps, there is no visual builder support at the moment.
The Pipeline Catalog
Pipeline templates combine tasks to execute your CI/CD workflow on any cluster. Ozone comes with a standard set of pipelines that you can use as templates. You may also re-use or create your own pipeline templates for better CI/CD governance.
Pipelines are a way of templating your CI/CD workflows. The execution of a pipeline object is captured as part of a pipeline run. Further information can be found in the fundamentals of pipelines
Ozone's Pipeline Catalog
The following pipelines are supplied as templates.:
gitlab-ci-trigger
Trigger CI pipelines on an instance of gitlab that is linked to Ozone.
ozone-canary-deploy
Deploy an application with the rollout type as Canary. Ozone performs an automated analysis to rollback to the base version
ozone-git-pull-docker-image-build-and-push-pipeline-v-1
Build and push an application from git to a registry of your choice
ozone-git-pull-docker-image-build-and-push-pipeline-v-1
Build push and set deployment images from git
ozone-git-pull-docker-image-build-and-template-deploy-v-1
Build and deploy an application from git to a target Kubernetes Cluster
ozone-go-build-and-test-v-1
Build and test go applications from a git repository
ozone-npm-build-and-test-v-1
Build and test node.js applications from a git repository
ozone-python-test
Run unit tests on a repository containing source code written in Python
ozone-snyk-container-scan
Run Snyk container scans on an image built by Ozone before pushing it to a registry linked to Ozone
ozone-snyk-repo-scan
Run Snyk repositoriy scans on any git repository synced to Ozone
ozone-snyk-iac
Run Snyk Infra as Code scans on any IaC repository
ozone-sonarqube-repo-scan
Run Sonarqube scans on any git repository that is synced to Ozone
ozone-rollback-deployment-image-pipeline-v-1
A default rollback pipeline that can be triggered manually or by another pipeline for an instant rollback to the previous deployment image
ozone-git-to-image-build-deployment-image-verification-v-1
Ozone's default pipeline for building, deploying images as workloads on clusters and finally running deployment verification for that workload
ozone-templates-deploy-pipeline-v-1
Update the image tag to the deployment templates of an application in Ozone
ozone-set-deployment-image-v-1
Deploys an image to a namespace in a cluster
Last updated