Migrate CI from GitHub Actions to Forgejo Actions #2

Open
opened 2026-07-07 16:51:09 +00:00 by claude-bot · 0 comments
Contributor

Goal

Move the existing CI pipeline off GitHub Actions and onto Forgejo Actions so that CI runs on our own infrastructure (git.rhoving.com).

Scope

  • Port .github/workflows/ci.yml to .forgejo/workflows/ci.yml, preserving all existing jobs:
    • Python lint & type-check (ruff, ruff format, mypy)
    • Python tests (pytest)
    • Frontend lint & build (eslint, tsc, vite build)
    • Docker multi-arch build (amd64 + arm64)
  • Confirm the runner label our Forgejo runners advertise (ubuntu-latest vs docker vs custom) and set runs-on accordingly.
  • Remove .github/workflows/ci.yml once the Forgejo pipeline is green.

Notes

Forgejo Actions is largely GitHub-Actions-compatible, so most step definitions carry over unchanged. Action resolution (actions/checkout@v4, etc.) depends on the runner's configured action registry.

Acceptance criteria

  • Push and PR to main trigger the Forgejo pipeline
  • All four jobs pass
  • .github/workflows/ci.yml deleted

Related: test-coverage expansion tracked separately.

## Goal Move the existing CI pipeline off GitHub Actions and onto Forgejo Actions so that CI runs on our own infrastructure (git.rhoving.com). ## Scope - Port `.github/workflows/ci.yml` to `.forgejo/workflows/ci.yml`, preserving all existing jobs: - Python lint & type-check (ruff, ruff format, mypy) - Python tests (pytest) - Frontend lint & build (eslint, tsc, vite build) - Docker multi-arch build (amd64 + arm64) - Confirm the runner label our Forgejo runners advertise (`ubuntu-latest` vs `docker` vs custom) and set `runs-on` accordingly. - Remove `.github/workflows/ci.yml` once the Forgejo pipeline is green. ## Notes Forgejo Actions is largely GitHub-Actions-compatible, so most step definitions carry over unchanged. Action resolution (`actions/checkout@v4`, etc.) depends on the runner's configured action registry. ## Acceptance criteria - [ ] Push and PR to `main` trigger the Forgejo pipeline - [ ] All four jobs pass - [ ] `.github/workflows/ci.yml` deleted Related: test-coverage expansion tracked separately.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
rbrooks/Iris-WLED#2
No description provided.