6f181e85e1e37a4eac622bd0893bc526c2bad300
Updated sync_wiki.py to use correct Gitea 1.26 wiki API: POST /wiki/new for create, PATCH /wiki/page/{sub_url} for update, GET /wiki/pages returns sub_url. Tests updated to match.
Closes GRM-36
Gitea Runner Manager (GRM)
A lean command-line tool to automate the installation, configuration, and lifecycle management of Gitea Actions runners on Arch Linux, Ubuntu, and Debian hosts.
Each runner runs in an isolated rootless Docker environment under a dedicated system user, enabling multiple runners to operate in parallel on the same host without conflicts.
Pronunciation: GRM is short for Gitea Runner Manager, but say it like ГРЪМ (roughly "GRUM") — the Bulgarian word for thunder. An open-source project from Oblachno (облачно means cloudy in Bulgarian).
Quick Start
git clone https://git.oblachno.oblachno.fyi/oblachno-oss/grm.git
cd grm
make setup
cp .env.example .env # Edit with your Gitea URL and registration token
grm install 192.168.1.10 --user ubuntu --key ~/.ssh/id_ed25519 --name prod-runner
Documentation
Full documentation lives on the GRM Wiki.
User Documentation
- Getting Started — Installation, quick start, first run
- Installation — Prerequisites, setup, multiple instances
- CLI Commands — All commands with arguments and options
- Troubleshooting — Common issues and solutions
- FAQ — Frequently asked questions
Technical Documentation
- Architecture — High-level design, component interactions
- Development Setup — Environment setup, dependencies, local testing
- CI/CD Workflow — How CI works, release process, branch protection
- Testing Strategy — Unit, integration, and Molecule tests
- Decision Log — Key technical decisions and rationale
- Contributing Guide — Coding standards, PR workflow, commit rules
License
GPL-3.0