Add /docs/ directory with user and technical documentation extracted from README, AGENTS.md, and source code. Add scripts/sync_wiki.py to sync docs to Gitea wiki via API. Add scripts/doc_coverage.py to check CLI commands, modules, and CI scripts are documented. Add sync-wiki.yml workflow for auto-sync on merge and release. Slim down README.md to lean entry point. 28 new unit tests, 100% coverage maintained. Closes GRM-36
2.8 KiB
2.8 KiB
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