CI-poort op de Forgejo-runner: make check per push en PR #741

Closed
opened 2026-07-23 12:43:24 +00:00 by brenno · 1 comment
Owner

Sinds 23-07-2026 heeft de forge een geregistreerde Actions-runner (docker-in-docker op de pawprint-server) en bouwt .forgejo/workflows/linux-build.yml bij elke push naar main de Linux-desktopbundel als artifact.

Wat er nog niet is: de eigenlijke kwaliteitspoort in CI. make check draait nog uitsluitend lokaal bij de committer. De referentiedefinitie in .github/workflows/ci.yml (Gate op Linux: format, analyze, conventies, dekking, licenties, SBOM) is geschreven voor GitHub-runners en draait niet op Forgejo — .forgejo/workflows/ verdringt die map bovendien zodra hij bestaat.

Te doen:

  • Een .forgejo/workflows/ci.yml die de poort (of een zinnige deelverzameling) per push/PR draait op de runner, in een Flutter-container.
  • Uitzoeken wat er op Linux headless werkelijk kan: de suite zelf hoort platformonafhankelijk te zijn, maar goldens zijn bewust buiten make check gehouden en de native-OpenCV-laag heeft DARTCV_LIB_PATH nodig.
  • De actie-resolutie: de runner staat op de standaard DEFAULT_ACTIONS_URL (data.forgejo.org); acties uit het GitHub-ecosysteem (subosito, lychee, trivy) lossen daar niet op. Kiezen: spiegelen, vervangen door run:-stappen, of de bron verleggen.
  • docs/CHECKS.md §Continuous integration bijwerken zodra de poort echt in CI draait.

Tot die tijd blijft gelden wat de docs nu zeggen: de lokale make check is de enige handhaving.

Sinds 23-07-2026 heeft de forge een geregistreerde Actions-runner (docker-in-docker op de pawprint-server) en bouwt `.forgejo/workflows/linux-build.yml` bij elke push naar `main` de Linux-desktopbundel als artifact. Wat er nog niet is: de eigenlijke kwaliteitspoort in CI. `make check` draait nog uitsluitend lokaal bij de committer. De referentiedefinitie in `.github/workflows/ci.yml` (Gate op Linux: format, analyze, conventies, dekking, licenties, SBOM) is geschreven voor GitHub-runners en draait niet op Forgejo — `.forgejo/workflows/` verdringt die map bovendien zodra hij bestaat. Te doen: - [ ] Een `.forgejo/workflows/ci.yml` die de poort (of een zinnige deelverzameling) per push/PR draait op de runner, in een Flutter-container. - [ ] Uitzoeken wat er op Linux headless werkelijk kan: de suite zelf hoort platformonafhankelijk te zijn, maar goldens zijn bewust buiten `make check` gehouden en de native-OpenCV-laag heeft `DARTCV_LIB_PATH` nodig. - [ ] De actie-resolutie: de runner staat op de standaard `DEFAULT_ACTIONS_URL` (data.forgejo.org); acties uit het GitHub-ecosysteem (subosito, lychee, trivy) lossen daar niet op. Kiezen: spiegelen, vervangen door `run:`-stappen, of de bron verleggen. - [ ] docs/CHECKS.md §Continuous integration bijwerken zodra de poort echt in CI draait. Tot die tijd blijft gelden wat de docs nu zeggen: de lokale `make check` is de enige handhaving.
Author
Owner

Gedaan in #751, op main als c6adf9f. De poort (make check, inclusief toolchaincontrole) draait nu per pull request en per push naar main op de runner, in een kale ubuntu:24.04 met de officiële Flutter-stable volgens de pin uit .tool-versions, sha256-geverifieerd. De linux-build is naar dezelfde officiële toolchain overgezet (het cirruslabs-image bleek kanaal [user-branch] uit onbekende bron).

De actie-resolutievraag is beslecht: alleen actions/checkout en actions/upload-artifact@v3 (die op data.forgejo.org bestaan) plus run:-stappen. De eerste runs vingen meteen drie echte gebreken: git checkout/git grep braken op git 2.43 (--end-of-options), en het Linux-klembordschrijfpad ontbrak (#758, inmiddels ook opgelost). Docs zijn bijgewerkt in dezelfde PR.

Gedaan in #751, op main als c6adf9f. De poort (`make check`, inclusief toolchaincontrole) draait nu per pull request en per push naar main op de runner, in een kale ubuntu:24.04 met de officiële Flutter-stable volgens de pin uit `.tool-versions`, sha256-geverifieerd. De linux-build is naar dezelfde officiële toolchain overgezet (het cirruslabs-image bleek kanaal `[user-branch]` uit onbekende bron). De actie-resolutievraag is beslecht: alleen `actions/checkout` en `actions/upload-artifact@v3` (die op data.forgejo.org bestaan) plus `run:`-stappen. De eerste runs vingen meteen drie echte gebreken: `git checkout`/`git grep` braken op git 2.43 (`--end-of-options`), en het Linux-klembordschrijfpad ontbrak (#758, inmiddels ook opgelost). Docs zijn bijgewerkt in dezelfde PR.
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
LibreKAT/Ocideck#741
No description provided.