Skip to main content

Installation Overview

Pipelines as Code supports multiple installation methods depending on your platform and requirements. This guide will help you choose the right installation method for your environment.

Installation Methods

Choose the installation method that best fits your platform:

OpenShift

If you’re running on OpenShift, you have two primary options:
  1. Red Hat OpenShift Pipelines Operator (Recommended)
    • Automated installation and updates
    • Integrated with OpenShift ecosystem
    • Managed configuration through TektonConfig CR
    • Default namespace: openshift-pipelines
    • See Installing on OpenShift
  2. Manual Installation
    • Direct control over deployment
    • Suitable for custom configurations
    • Requires manual updates

Kubernetes

For standard Kubernetes clusters (including Minikube, Kind, GKE, EKS, AKS):
  1. kubectl apply (Recommended)
  2. tkn pac bootstrap
    • Interactive CLI-guided setup
    • Includes optional webhook forwarder for local development
    • Automatically configures Git providers

Prerequisites

Before installing Pipelines as Code, ensure you have the following:
1

Kubernetes Cluster

A running Kubernetes cluster version 1.27 or higher, or an OpenShift cluster.
2

Tekton Pipelines

Tekton Pipelines version 0.50.0 or higher must be installed on your cluster.
3

CLI Tools

  • kubectl for cluster access
  • Optional: tkn CLI for Tekton operations
  • Optional: tkn-pac CLI for Pipelines as Code operations
4

Git Provider

Access to one of the supported Git providers:
  • GitHub (GitHub App or Webhook)
  • GitLab (Webhook)
  • Bitbucket Cloud/Data Center (Webhook)
  • Forgejo (Webhook) - Tech Preview
For detailed prerequisites and version requirements, see Prerequisites and Requirements.

Installation Workflow

The typical installation workflow consists of:
1

Install Prerequisites

Ensure your cluster meets the requirements and install Tekton Pipelines if not already present.
2

Install Pipelines as Code

Choose your installation method:
3

Configure Ingress/Route

Set up external access to the Pipelines as Code controller:
  • OpenShift: Route is automatically created
  • Kubernetes: Configure an Ingress or use a webhook forwarder
4

Configure Git Provider

Set up integration with your Git provider (GitHub App, webhooks, etc.).
5

Create Repository CR

Create Repository custom resources to connect your Git repositories to Pipelines as Code.

Version Information

The installation commands on this site reference the stable branch, which points to the latest stable release. For the latest development version, replace stable with nightly in the URLs.

Stable Release

Install the latest stable version:
kubectl apply -f https://raw.githubusercontent.com/openshift-pipelines/pipelines-as-code/stable/release.yaml

Nightly Release

Install the latest development version:
kubectl apply -f https://raw.githubusercontent.com/openshift-pipelines/pipelines-as-code/nightly/release.yaml
The nightly release contains the latest development changes and may be unstable. Use stable releases for production environments.

What Gets Installed

When you install Pipelines as Code, the following components are deployed:

Namespace

  • Namespace: pipelines-as-code
  • This namespace hosts the Pipelines as Code infrastructure and should be accessible only to cluster administrators

Core Components

  1. Controller: Manages Repository CRDs, processes Git events, and creates PipelineRuns
  2. Webhook: Validates and mutates Pipelines as Code custom resources
  3. Watcher: Monitors PipelineRun status and reports back to Git providers

Custom Resources

  • Repository CRD: Defines the connection between Git repositories and namespaces
  • Configuration stored in ConfigMaps and Secrets

RBAC

Cluster roles and role bindings for:
  • Controller service account permissions
  • User permissions to create Repository CRDs
  • Webhook admission control

Next Steps

After understanding the installation options:
  1. Review the Prerequisites and Requirements
  2. Follow the installation guide for your platform:
  3. Configure your Git provider integration
  4. Create your first Repository CR and pipeline

Getting Help

If you encounter issues during installation:

Build docs developers (and LLMs) love