GitHub runner
| Channel | Revision | Published | Runs on |
|---|---|---|---|
| latest/stable | 447 | 23 Oct 2025 | |
| latest/stable | 323 | 27 Jan 2025 | |
| latest/stable | 1 | 09 Feb 2022 | |
| latest/beta | 447 | 16 Oct 2025 | |
| latest/beta | 4 | 04 Jun 2025 | |
| latest/beta | 323 | 17 Jan 2025 | |
| latest/edge | 447 | 15 Oct 2025 | |
| latest/edge | 327 | 06 Feb 2025 | |
| latest/edge | 4 | 26 Apr 2022 | |
| local-lxd/stable | 306 | 17 Dec 2024 | |
| local-lxd/edge | 306 | 27 Nov 2024 | |
| 1/stable | 177 | 05 Jun 2024 | |
| 1/edge | 177 | 05 Jun 2024 |
juju deploy github-runner
Deploy universal operators easily with Juju, the Universal Operator Lifecycle Manager.
Platform:
How to integrate with COS
This guide demonstrates the process of integrating with the Canonical Observability Stack (COS) using the optional cos-agent integration provided by this charm.
The cos-agent integration can be consumed by the grafana-agent charm, which is responsible for transmitting logs, Prometheus metrics, and Grafana dashboards to the COS stack.
NOTE: The GitHub Runner charm and
grafana-agentcharm function as machine charms, while the COS stack contains Kubernetes charms. Therefore, establishing cross-model integrations is necessary, along with potential firewall rule configurations to allow inter-model traffic.
Requirements
- Deploy the GitHub Runner Charm with the application name
github-runnerin themachine-model. - Deploy the COS stack on a Kubernetes cloud (refer to this tutorial).
- Ensure
loki,prometheus,grafana, andtraefikcharms are deployed within a model namedk8s-model. - Integration between
lokiandtraefikis required to enablegrafana-agentto transmit logs by setting a public IP for the Loki service accessible from the machine cloud. - Confirm that both models exist in the same Juju controller. If not, adjust the model names by appending the respective controller name (followed by “:”) in the subsequent steps. Ensure you have the necessary permissions to consume the offers.
- Ensure
Steps
- Deploy the
grafana-agentcharm in the machine model.juju switch machine-model juju deploy grafana-agent --channel latest/edge - Integrate the
grafana-agentcharm with the GitHub Runner charm.juju integrate github-runner grafana-agent - Create offers for
loki,prometheus, andgrafana-agentin thek8s-model.juju switch k8s-model juju offer loki:logging juju offer prometheus:receive-remote-write juju offer grafana:grafana-dashboard - Consume the offers in the machine model.
juju switch machine-model juju consume loki juju consume prometheus juju consume grafana - Integrate the
grafana-agentcharm withloki,prometheus, andgrafana.juju integrate loki-k8s grafana-agent juju integrate prometheus-k8s grafana-agent juju integrate grafana-k8s grafana-agent
You should now be able to access a Grafana Dashboard named GitHub Self-Hosted Runner Metrics, displaying metrics, and another named System Resources exhibiting host resources in Grafana.
Additionally, you can explore Loki logs using Grafana’s Explore function. For detailed information about the specific metrics in the GitHub Self-Hosted Runner Metrics dashboard, refer to Metrics.