DirectorySecurity Advisories
Sign In
Directory
gha-runner-scale-set-controller logo

gha-runner-scale-set-controller

Last changed

Get Started with Latest for Free
docker pull cgr.dev/chainguard/gha-runner-scale-set-controller

Need access to a specific version? Contact us.

Sign In for Updates

Get notified of upcoming product changes, critical vulnerability notifications and patches and more.

Sign In
Versions
Overview
Provenance
Specifications
SBOM
Vulnerabilities
Advisories

Kubernetes controller for GitHub Actions self-hosted runners

Download this Image

The image is available on cgr.dev:

docker pull cgr.dev/chainguard/gha-runner-scale-set-controller:latest

Usage

This document outlines how to test our gha-runner-scale-set-controller image. You can set up ARC on Kubernetes using Helm, then create and run a workflow that uses runner scale sets.

For more information about runner scale sets, you should refer to the official documentation, Quickstart for Actions Runner Controller.

Prerequisites

You can find a detailed list of prerequisites in the official documentation, (here)[https://docs.github.com/en/actions/hosting-your-own-runners/managing-self-hosted-runners-with-actions-runner-controller/quickstart-for-actions-runner-controller#prerequisites).

But for the sake of simplicity, all you need is:

  • A Kubernetes cluster
  • Helm 3
  • A GitHub repository with a workflow that uses runner scale sets

that's all.

Testing

To test the gha-runner-scale-set-controller image, you can follow these steps:

  1. Install the Actions Runner Controller on your Kubernetes cluster using Helm. You can find the installation instructions here.
NAMESPACE="arc-systems"
helm install arc \
    --namespace "${NAMESPACE}" \
    --create-namespace \
    oci://ghcr.io/actions/actions-runner-controller-charts/gha-runner-scale-set-controller \
    --set image.repository=cgr.dev/chainguard/gha-runner-scale-set-controller \
    --set image.tag=latest
  1. To configure the runner scale set, you can follow the official documentation here.

For that, you will need two things:

  • A GitHub repository with a workflow that uses runner scale sets
  • A runner registration token which we refer GITHUB_PAT
INSTALLATION_NAME="arc-runner-set"
NAMESPACE="arc-runners"
GITHUB_CONFIG_URL="https://github.com/<org/repo/enterprise>" # make sure to replace this with your GitHub repository URL or GitHub Enterprise URL
GITHUB_PAT="<PAT>" # make sure to replace this with your GitHub PAT

helm install "${INSTALLATION_NAME}" \
    --namespace "${NAMESPACE}" \
    --create-namespace \
    --set githubConfigUrl="${GITHUB_CONFIG_URL}" \
    --set githubConfigSecret.github_token="${GITHUB_PAT}" \
    oci://ghcr.io/actions/actions-runner-controller-charts/gha-runner-scale-set

Once you did that you can create and run a workflow that uses runner scale sets like the following:

name: Actions Runner Controller Demo
on:
  workflow_dispatch:

jobs:
  Explore-GitHub-Actions:
    # You need to use the INSTALLATION_NAME from the previous step
    runs-on: arc-runner-set
    steps:
    - run: echo "🎉 This job uses runner scale set runners!"

That's it! You have successfully tested the gha-runner-scale-set-controller image.

Licenses

Chainguard Images contain software packages that are direct or transitive dependencies. The following licenses were found in the "latest" version of this image:

  • Apache-2.0

  • LGPL-2.1-or-later

  • MIT

  • MPL-2.0

For a complete list of licenses, please refer to this Image's SBOM.

Software license agreement

Related images

Media KitContact Us
© 2024 Chainguard. All Rights Reserved.
Private Policy
Terms of Use

Product

Chainguard Images