Skip to main content
Version: Next

BuildPlane

A BuildPlane represents the infrastructure layer responsible for executing build workloads in OpenChoreo. It provides the necessary compute resources and configuration for running CI/CD pipelines, typically using Argo Workflows or similar build orchestration systems. Each BuildPlane is associated with a specific Kubernetes cluster where build jobs are executed.

API Version

openchoreo.dev/v1alpha1

Resource Definition

Metadata

BuildPlanes are namespace-scoped resources that must be created within an Organization's namespace.

apiVersion: openchoreo.dev/v1alpha1
kind: BuildPlane
metadata:
name: <buildplane-name>
namespace: <org-namespace> # Organization namespace

Spec Fields

FieldTypeRequiredDefaultDescription
kubernetesClusterKubernetesClusterSpecYes-Defines the Kubernetes cluster where build workloads (e.g., Argo Workflows) will be executed
observerObserverAPINo-Configuration for the Observer API integration for monitoring and observability of build processes

KubernetesClusterSpec

FieldTypeRequiredDefaultDescription
namestringYes-Name identifier for the Kubernetes cluster
credentials.apiServerURLstringYes-URL of the Kubernetes API server
credentials.caCertstringYes-Base64-encoded CA certificate
credentials.clientCertstringYes-Base64-encoded client certificate
credentials.clientKeystringYes-Base64-encoded client private key

ObserverAPI

FieldTypeRequiredDefaultDescription
urlstringYes-Base URL of the Observer API
authentication.basicAuth.usernamestringYes-Username for basic authentication
authentication.basicAuth.passwordstringYes-Password for basic authentication

Status Fields

The BuildPlane status is currently minimal, with fields reserved for future use.

FieldTypeDefaultDescription
---Status fields are reserved for future use

Examples

Basic BuildPlane

apiVersion: openchoreo.dev/v1alpha1
kind: BuildPlane
metadata:
name: primary-buildplane
namespace: default
spec:
kubernetesCluster:
name: build-cluster-1
credentials:
apiServerURL: https://api.build-cluster.example.com:6443
caCert: LS0tLS1CRUdJTi... # Base64-encoded CA cert
clientCert: LS0tLS1CRUdJTi... # Base64-encoded client cert
clientKey: LS0tLS1CRUdJTi... # Base64-encoded client key
observer:
url: https://observer.example.com
authentication:
basicAuth:
username: admin
password: secretpassword

Annotations

BuildPlanes support the following annotations:

AnnotationDescription
openchoreo.dev/display-nameHuman-readable name for UI display
openchoreo.dev/descriptionDetailed description of the BuildPlane
  • Build - Build job definitions that execute on BuildPlanes
  • Component - Application components that trigger builds
  • Organization - Organizational context for BuildPlanes