ci: port analyze/test gate to Forgejo Actions, retire .gitlab-ci.yml

git.comunes.org is Forgejo. Replicates the analyze + commons_core/app_seeds test
gate in .forgejo/workflows/ci.yml (per-push + PR). Dropped the GitLab-only Windows
job (no Forgejo Windows runner).
This commit is contained in:
vjrj 2026-07-16 03:07:07 +02:00
parent 17d0ff1221
commit 15eb9f7007
2 changed files with 51 additions and 88 deletions

51
.forgejo/workflows/ci.yml Normal file
View file

@ -0,0 +1,51 @@
# Per-push gate for git.comunes.org (Forgejo Actions): analyze + tests.
# Mirrors the local verification gate in docs/design/testing.md. Ported from the
# retired .gitlab-ci.yml. Flutter pinned to the developer toolchain (3.41.9).
#
# NOTE: `runs-on` must match a label your Forgejo runner registered with; adjust
# if the Comunes runner uses something other than `docker`.
name: ci
on:
push:
branches: ['**']
pull_request:
jobs:
analyze:
runs-on: docker
container:
image: ghcr.io/cirruslabs/flutter:3.41.9
steps:
- uses: actions/checkout@v4
- run: flutter pub get
- run: dart format --output=none --set-exit-if-changed .
- run: flutter analyze
test-commons-core:
runs-on: docker
container:
image: ghcr.io/cirruslabs/flutter:3.41.9
steps:
- uses: actions/checkout@v4
- run: flutter pub get
- name: dart test
working-directory: packages/commons_core
run: dart test
test-app-seeds:
runs-on: docker
container:
image: ghcr.io/cirruslabs/flutter:3.41.9
steps:
- uses: actions/checkout@v4
# SQLCipher so the "no plaintext at rest" security test actually runs.
- run: apt-get update -qq && apt-get install -y -qq libsqlcipher-dev
- run: flutter pub get
- name: Generate code + test
working-directory: apps/app_seeds
run: |
dart run slang
dart run build_runner build --delete-conflicting-outputs
flutter test --coverage