Garm Configurator
Platform:
| Channel | Revision | Published | Runs on |
|---|---|---|---|
| latest/candidate | 150 | 04 Oct 2026 | |
| latest/edge | 157 | Today |
juju deploy garm-configurator --channel candidate
-
aproxy-exclude-addresses | string
Optional comma-separated IPv4 addresses, CIDRs, or ranges to exclude from aproxy forwarding.
-
aproxy-redirect-ports | string
Optional comma-separated ports or port ranges (e.g. 80,443,8000-9000) to forward to aproxy.
-
dockerhub-mirror | string
Optional Docker registry mirror URL for runners. Must be a valid http(s) address.
-
enable-shell | boolean
Default: True
Enable the GARM remote shell on the scaleset, letting an administrator open an interactive session on a runner through GARM. The session rides the GARM agent's websocket, so the garm charm needs an ingress for the agent to dial back to, and that ingress must terminate TLS: the agent silently disables its shell whenever the agent URL is cleartext, rather than expose a shell in the clear.
-
flavor | string
The resource flavor to use for runners in the scaleset.
-
github-app-id | int
GitHub App ID (numeric).
-
github-app-installation-id | int
GitHub App installation ID.
-
github-app-private-key | secret
Juju secret containing the GitHub App private key (PEM format). The secret content must have a "value" key with the private key string.
-
image | string
Stable OpenStack image name or image ID to use for runners. An image name must uniquely identify one image in the OpenStack project. When unset, the image is read from the image relation for backwards compatibility. If neither source provides an image, GARM removes this configurator's scale set and its runners.
-
image-visibility | string
Optional Glance visibility used when the OpenStack provider looks up an image by name: public, private, shared, community, or all. When unset, the provider searches public images only, so a private image needs "private". It has no effect when the image is an ID.
-
labels | string
Comma-separated list of labels to add to runners.
-
max-runner | int
Default: 1
Maximum number of runners in the scaleset. Must be greater than 0.
-
min-idle-runner | int
Minimum number of idle runners in the scaleset.
-
name | string
The name of the scaleset.
-
openstack-auth-url | string
OpenStack Keystone authentication URL.
-
openstack-network | string
OpenStack network name or ID to use for instances.
-
openstack-password | secret
Juju secret containing the OpenStack password for authentication. The secret content must have a "value" key with the password string.
-
openstack-project-domain-name | string
OpenStack project domain name.
-
openstack-project-name | string
OpenStack project (tenant) name.
-
openstack-region-name | string
OpenStack region name.
-
openstack-user-domain-name | string
OpenStack user domain name.
-
openstack-username | string
OpenStack username for authentication.
-
org | string
Organization to register runners to. Mutually exclusive with repo.
-
os-arch | string
The CPU architecture for runners in the scaleset.
-
otel-collector-endpoint | string
Optional OTEL exporter address for the otel-collector to connect to. Must be a valid http(s) URL.
-
pre-install-scripts | string
A Python dict-like string containing key-value pairs of script name to bash script to be run prior to runner installation.
-
pre-job-script | string
Optional bash script appended to the end of the runner pre-job script. If the script exits with a non-zero code, the job fails and the workflow steps do not run.
-
repo | string
Repository to register runners to. Mutually exclusive with org.
-
runner-group | string
Default: Default
Runner group for org registration. Ignored when repo is set.
-
runner-http-proxy | string
Optional HTTP proxy that aproxy forwards to. Must be a valid http(s) URL.