Brainboard's documentation
Website 🏛️Go to the app ↗
  • Welcome
  • Getting started
    • Fast track
    • Start with a template
    • Start with AI
    • Use cases videos
    • Brainboard philosophy
  • Cloud design
    • Left bar
      • Cloud resources
      • Input & output
    • Design area
      • Node
      • ID card
      • Connectors
      • Versioning
      • Graphical options
    • One action
    • Code Edition
  • Data
    • Data structure
      • Project
      • Environment
      • Cloud architecture
        • Terraform files
        • Readme file
        • Architecture Synchronization
        • Remote backend
      • Template
    • Cloud providers
      • Supported cloud providers
      • Customize provider configuration
      • Unsupported cloud providers
    • Terraform / OpenTofu
      • Modules
        • Module
        • Import modules
        • Manage module
        • Terraform registry credentials
        • Use modules
    • Disaster recovery
  • Automation
    • CI/CD engine
    • Supported plugins
      • Terraform
      • Security
        • Trivy
        • Tfsec
        • Terrascan
        • OPA
        • Checkov
      • Infracost
      • Notifications
        • Email
        • Slack
        • Microsoft Teams
      • Webhooks
    • Pipelines
    • Workflow templates
    • Drift detection
      • Types of drift
      • Remediation
    • Self-Hosted Runner
      • Deploy runner with Kubernetes
      • Deploy runner with docker-compose
  • Settings
    • Overview
    • Authentication
      • Login into Brainboard
      • Single sign-on (SSO)
    • Account management
    • Organization
    • Members
    • Teams
    • Roles & Permissions (RBAC)
      • Level of access
      • Organization RBAC
      • Project RBAC
    • Integrations
      • Git configuration
        • GitHub
        • Azure DevOps (ADO)
        • Bitbucket
        • GitLab
        • How to use
      • Cloud providers
        • AWS
        • Azure
        • GCP
        • OCI
  • Security
    • Data managed by Brainboard
    • SOC 2 Type II
    • Role Based Access Control
  • Help & FAQ
    • Shortcuts
    • FAQ
    • Migration
      • Import from Azure
      • Import from AWS
    • Support
    • Glossary
  • Changelog
Powered by GitBook
On this page
  • Pre-requisites
  • Installation
  • Usage

Was this helpful?

Edit on GitHub
  1. Automation
  2. Self-Hosted Runner

Deploy runner with Kubernetes

Feature Availability Self-Hosted Runner is available for Enterprise Plan only.

Pre-requisites

  • A running Kubernetes cluster

  • Helm installed locally

  • Kubectl installed locally

Brainboard provides a Helm chart to deploy the runner in your existing Kubernetes cluster.

Please contact the support to get your customer token (CUSTOMER_TOKEN) to access to the charts

helm repo add brainboard https://raw.githubusercontent.com/brainboard/helm-charts/gh-pages --username brainboard --password $CUSTOMER_TOKEN
helm repo update

To see the charts values and documentation you can use the following commands:

helm show values brainboard/brainboard-runner
helm show readme brainboard/brainboard-runner

Installation

In order for the runner to enroll with your organization, you will need to provide the private self-hosted runner token you generated from the Brainboard settings page.

You can install the runner with the following command:

helm install runner brainboard/brainboard-runner --set config.credentials.token="your-runner-token"

You can view all available configuration options using the commands above.

Register runner with your organization

Once your runner is started, you will need to register it with your organization. To do so, open a terminal inside the runner container (see below) and run the following command:

/brainboard-runner register

This operation only has to be done once, when the runner is started for the first time.

Usage

To open a terminal inside the runner container, use the following command:

POD_NAME=$(kubectl get po -l app.kubernetes.io/name=brainboard-runner -o=name)
kubectl exec -ti ${POD_NAME} -c runner -- sh

If you want to see the logs, you can run this command:

kubectl logs -l app.kubernetes.io/name=brainboard-runner -c runner
PreviousSelf-Hosted RunnerNextDeploy runner with docker-compose

Last updated 8 months ago

Was this helpful?