Files
VisionPOC/.gitea/workflows/build.yaml
T
James MaesandClaude Opus 5.5 5bfa30f022
macos / macos (push) Successful in 8s
build / macos (push) Successful in 8s
ci: build only, without LFS; run the app-hosted tests locally
grogu has no git-lfs, so the Core ML model is a pointer file coremlc cannot
compile. CI removes the pointer-only mlpackage before xcodegen generate
(ObjectDetector loads the model by URL and falls back to the Vision built-ins
when it is missing) and compiles the app and the test bundle unsigned with
build-for-testing. The tests are app-hosted XCTests and the runner has no
GUI session for testmanagerd; the README documents running them locally.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-08 17:25:53 -06:00

25 lines
1.2 KiB
YAML

name: build
on:
push:
branches: ['**']
tags: ['v*']
jobs:
macos:
uses: self:KofTwentyTwo/ci-workflows/.gitea/workflows/macos.yaml@v1
secrets: inherit
with:
# Build only, without LFS: the runner has no git-lfs, so the Core ML model is a pointer file that
# coremlc cannot compile. It is left out of the build; ObjectDetector loads it by URL at runtime and
# falls back to the Vision built-ins when it is missing. The app and the test bundle are compiled
# unsigned but the tests are not run: they are app-hosted XCTests and the grogu runner has no GUI
# session for testmanagerd. Run them locally before merging (README, Tests).
lfs: false
commands: |
model=Sources/Resources/Models/yolov8x-oiv7.mlpackage
if head -c 40 "$model/Data/com.apple.CoreML/model.mlmodel" | grep -q '^version https://git-lfs'; then
echo "$model is an LFS pointer (no git-lfs on the runner): building without the model"
rm -rf "$model"
fi
xcodegen generate
xcodebuild -quiet -project VisionPOC.xcodeproj -scheme VisionPOC -configuration Debug -destination 'platform=macOS' CODE_SIGNING_ALLOWED=NO build-for-testing