ci: add Forgejo-native CI workflow for the Circuit-Forge fork
Some checks are pending
CI / Pure-Dart workspace packages (pull_request) Waiting to run
CI / Flutter app (analyze, test, format) (pull_request) Waiting to run

Ashley's upstream .github/workflows/ci.yml targets GitHub-hosted
ubuntu-latest/windows-latest/macos-latest runners, which aren't
registered on git.opensourcesolarpunk.com for non-org repos - every
matrix job on eva/focus-flow's PR #18 shows "Has been cancelled"
rather than a real pass/fail. This adds a Forgejo-native workflow at
.forgejo/workflows/ci.yml using ubuntu-latest only, matching the
pattern already proven working for circuitforge-core/peregrine/kiwi
on this instance. Also runs the Flutter app's own analyze/test/format,
which the upstream workflow (root dart workspace test.dart only)
never covered.

Closes: Circuit-Forge/focus-flow#9
This commit is contained in:
pyr0ball 2026-07-10 23:15:50 -07:00
parent 92e5358c02
commit b85742fcca

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

@ -0,0 +1,49 @@
# SPDX-FileCopyrightText: 2026 FocusFlow contributors
# SPDX-License-Identifier: AGPL-3.0-only
# Forgejo-native CI for the Circuit-Forge focus-flow fork.
#
# Ashley's upstream .github/workflows/ci.yml targets GitHub-hosted
# ubuntu-latest/windows-latest/macos-latest runners, which don't exist on
# this self-hosted instance for non-org repos (that workflow shows every
# matrix job as "Has been cancelled" on eva/focus-flow). This workflow
# mirrors the working pattern already used by circuitforge-core, peregrine,
# and kiwi on this instance: ubuntu-latest only.
name: CI
on:
push:
branches: [main, 'feat/**', 'fix/**']
pull_request:
branches: [main]
jobs:
workspace:
name: Pure-Dart workspace packages
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dart-lang/setup-dart@v1
with:
sdk: stable
- run: dart pub get
- run: dart analyze
- run: dart run scripts/test.dart
flutter_app:
name: Flutter app (analyze, test, format)
runs-on: ubuntu-latest
defaults:
run:
working-directory: apps/focus_flow_flutter
steps:
- uses: actions/checkout@v4
- uses: subosito/flutter-action@v2
with:
flutter-version: 3.44.4
channel: stable
- run: flutter pub get
- run: flutter analyze
- run: flutter test
- run: dart format --set-exit-if-changed lib test