fix(ci): use [self-hosted, linux] runner labels for lint and test jobs #12

Closed
robot wants to merge 3 commits from fix/act-runner-compatibility into main
pull from: fix/act-runner-compatibility
3 Commits
Author SHA1 Message Date
robot 08c4713a03 fix(ci): correct Flutter SDK download URLs to working flutter_infra_release endpoints
CI / Lint (pull_request) Canceled after 0s
CI / Test (pull_request) Canceled after 0s
CI / Build Android (pull_request) Canceled after 0s
CI / Build iOS (pull_request) Canceled after 0s
All previous URLs under download.flutter.io returned 404. Replaced with
verified URLs from flutter_infra_release bucket (Flutter 3.44.8):
- Linux: tar.xz (1.4GB)
- macOS: zip (2.1GB) - note format differs from Linux
JDK and Android SDK URLs already verified working.
2026-08-02 08:27:58 +00:00
robot 886808db7e fix(ci): replace GitHub-hosted actions with direct SDK downloads
The subosito/flutter-action, actions/setup-java, and actions/setup-python
actions all query GitHub internal APIs that are unavailable on self-hosted
Gitea Actions runners. This caused the Test job to fail on Magrathea (Mac
runner) even though it was labelled [self-hosted, linux].

Changes:
- Replace subosito/flutter-action@v2 with direct Flutter SDK downloads
  from Google's CDN (platform-aware: linux-x64 vs darwin-x64)
- Replace actions/setup-java@v4 with direct Temurin JDK 17 download
- Replace actions/setup-python@v5 with system Python3 (graceful fallback)
- Linux jobs (lint, test) use linux-x64 Flutter
- macOS jobs (build-ios) use darwin-x64 Flutter
- Android build (ubuntu-latest) keeps native action support
2026-08-02 07:37:25 +00:00
robot 2cd080b559 fix(ci): use [self-hosted, linux] runner labels for lint and test jobs
The pipeline was failing because Lint and Test jobs used runs-on:
ubuntu-latest which 'act' does not recognize as a local runner label.
On the Mac build server (Magrathea), these jobs were routed to the
macOS runner where Docker containers failed to run Flutter correctly.

Changed:
- lint: ubuntu-latest -> [self-hosted, linux]
- test: ubuntu-latest -> [self-hosted, linux]
- build-android: ubuntu-latest (unchanged)
- build-ios: [self-hosted, macos] (unchanged)

The Linux runner should pick up lint/test while Magrathea handles iOS
builds as intended.
2026-08-02 06:56:42 +00:00