Pipelines-as-Code #
An opinionated CI based on OpenShift Pipelines / Tekton.
Introduction #
Pipelines as code is a project allowing you to define your CI/CD using Tekton PipelineRuns and Tasks in a file located in your source control management (SCM) system, such as GitHub or Gitlab. This file is then used to automatically create a pipeline for a Pull Request or a Push to a branch.
By storing the pipeline definition in code, it becomes easier to version, review, and collaborate on pipeline changes with code changes. Additionally, it allows you to view the pipeline status and control its execution directly from your SCM, rather than having to switch between multiple systems.
This approach enables automation, repeatability, collaboration, and change tracking using a Git workflow.
Features #
Pull-request status support: When iterating over a Pull Request. Statuses and Control is done on GitHub.
GitHub Checks API support to set the status of a PipelineRun including rechecks
GitHub Pull Request and Push event support
Pull-request “GitOps” actions through comments with
/retest
,/test <pipeline-name>
and so on.Automatic Task resolution in Pipelines (local Tasks, Tekton Hub, and remote URLs)
Efficient use of GitHub blobs and objects API for retrieving configurations
Git events Filtering and support for separate pipelines for each event
Gitlab, Bitbucket Server, Bitbucket Cloud and GitHub Webhook support.
tkn-pac
plug-in for Tekton CLI for managing pipelines-as-code repositories and bootstrapping.
Getting Started #
The easiest way to get started is to use the tkn pac
CLI and its
bootstrap command. We recommend you to start
playing with Pipelines-as-Code with your personal GitHub
user by installing Pipelines-as-Code on your laptop with
Kind or OpenShift
Local and
explore how it works before installing it on your own cluster.
- This Guide will help you get started by creating a GitHub Application, configuring Pipelines-as-Code, and creating your first PipelineRun from a Pull Request.
- If you prefer a video, this walkthrough video will guide you through the process.
Documentation #
For more details on the different installation methods please follow the installation document detailing the Pipelines-as-Code installation steps.
If you need to use Pipelines-as-Code
and author PipelineRuns
you can follow
the usage guide