Development¶
Important files¶
cmd/jeballto-actions-runner/main.go
internal/config/config.go
internal/controller/controller.go
internal/controller/poller.go
internal/github/webhook.go
internal/github/client.go
internal/ssh/runner.go
examples/config.yaml
POLL_MODE_QUICKSTART.md
Commands¶
Build:
make build
Or build directly:
go build -o jeballto-actions-runner ./cmd/jeballto-actions-runner
Test:
go test ./...
Docs workflow¶
python3 -m venv .venv
source .venv/bin/activate
python -m pip install -r requirements-docs.txt
python -m mkdocs serve
Build static HTML:
python -m mkdocs build
Change areas worth reviewing carefully¶
- mode validation in
internal/config/config.go - event deduplication in the controller and poller
- webhook signature verification
- cleanup and GC interaction after restarts
- runner startup and fallback registration flow