Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
535b2ee
feat: add GARM ROCK image spec and build script
yanksyoon May 22, 2026
90d439a
fix: correct GARM build path and add SQLite build tags
yanksyoon May 22, 2026
204e04e
feat: scaffold garm-operator charm metadata and tooling
yanksyoon May 22, 2026
503af21
fix: correct garm-operator scaffold issues
yanksyoon May 22, 2026
b728d12
feat: add GARM TOML rendering function with tests
yanksyoon May 22, 2026
f842467
fix: address code quality issues in TOML rendering
yanksyoon May 22, 2026
c61ac1b
feat: add GarmCharm class with secrets and Pebble integration
yanksyoon May 22, 2026
54c4ed7
fix: handle missing secret on non-leader units in restart()
yanksyoon May 22, 2026
a11a114
feat: add garm-operator Terraform module
yanksyoon May 22, 2026
872fc56
fix: update copyright year to 2026
yanksyoon May 25, 2026
a490782
fix: align GARM config and DB paths with upstream defaults
yanksyoon May 25, 2026
9f1592d
fix: move --only-binary=pluggy from requirements.txt to tox unit deps
yanksyoon May 25, 2026
e898977
feat: add GARM charm integration tests
yanksyoon May 25, 2026
2a00058
ci: add GARM charm to lint/unit matrix, publish workflow, and integra…
yanksyoon May 25, 2026
02c909d
ci: comment out garm from publish matrix until charm is functional
yanksyoon May 25, 2026
680a3d1
Merge branch 'main' into feat/isd-5718-garm-charm
yanksyoon May 25, 2026
f983a25
fix: remove --only-binary=pluggy from tox unit deps
yanksyoon May 25, 2026
ca08dce
chore: remove unused pytest import and fix blank line
yanksyoon May 25, 2026
0a6cc23
docs: add changelog entry for GARM charm scaffold
yanksyoon May 25, 2026
18df9e8
fix: use go/1.26/stable and GOTOOLCHAIN=local for ROCK build
yanksyoon May 25, 2026
091d7e2
refactor: remove db-passphrase SQLite encryption placeholder
yanksyoon May 25, 2026
6b0aaa0
Potential fix for pull request finding
yanksyoon May 25, 2026
da290da
chore: remove unused postgresql_k8s charm lib
yanksyoon May 25, 2026
8b4c5f6
refactor: address PR review comments
yanksyoon May 25, 2026
1d99898
revert: restore provider section and OPENSTACK_PROVIDER_BINARY
yanksyoon May 25, 2026
52b1cc5
chore: bump build-base to ubuntu@26.04 (Resolute)
yanksyoon May 25, 2026
156d8c0
revert: revert build-base to ubuntu@24.04
yanksyoon May 25, 2026
47b6659
charms/garm: rename Charmhub charm name to garm
yanksyoon May 25, 2026
07c8c50
ci: trigger CI run
yanksyoon May 25, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/workflows/charms_lint_and_unit.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ jobs:
charm:
- charms/planner-operator
- charms/webhook-gateway-operator
- charms/garm
steps:
- uses: actions/checkout@v6

Expand Down
1 change: 1 addition & 0 deletions .github/workflows/publish_charms.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ jobs:
charm:
- planner
- webhook-gateway
# - garm # not yet functional; uncomment when ready to publish
Comment thread
yanksyoon marked this conversation as resolved.
name: ${{ github.event_name == 'push' && '' || 'Test ' }}Publish Charm (${{ matrix.charm }})
runs-on: ubuntu-latest
steps:
Expand Down
13 changes: 13 additions & 0 deletions build-garm-rock.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#!/usr/bin/env bash

#
# Copyright 2026 Canonical Ltd.
# See LICENSE file for licensing details.
#

export ROCKCRAFT_ENABLE_EXPERIMENTAL_EXTENSIONS=true

ln -s ./garm-rockcraft.yaml ./rockcraft.yaml
rockcraft clean
rockcraft pack
rm ./rockcraft.yaml
9 changes: 9 additions & 0 deletions charms/garm/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
venv/
Comment thread
florentianayuwono marked this conversation as resolved.
build/
*.charm
.tox/
.coverage
__pycache__/
*.py[cod]
.idea
.vscode/
35 changes: 35 additions & 0 deletions charms/garm/charmcraft.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# Copyright 2026 Canonical Ltd.
# See LICENSE file for licensing details.

name: garm

type: charm

base: ubuntu@24.04

platforms:
amd64:

summary: GARM — GitHub Actions Runner Manager charm.

description: |
Deploys and manages GARM (GitHub Actions Runner Manager) using the
12-factor app framework with SQLite storage and an OpenStack runner provider.

extensions:
- go-framework

config:
options:
garm-listen-address:
type: string
default: "0.0.0.0"
description: Address GARM API server listens on.
garm-listen-port:
type: int
default: 9997
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

description: Port GARM API server listens on.
garm-db-path:
type: string
default: "/etc/garm/garm.db"
description: Path to the SQLite database file.
Loading
Loading