Gitea CI on grogu (kof-macos-arm64): Guards B and C from guard.yml (the de-paywall marker and if-false wrap in computeState(), no conflict markers), an unsigned Release build, and build-for-testing of the Test scheme. The tests (Guard A) are not run on CI: the runner has no GUI session for testmanagerd; docs/contributing.md documents running scripts/run_tests.sh locally before merging. config/test-base.xcconfig takes the unit-test-only Xcode 27 fix from PR #1 (test target 12.0, deprecation group downgraded, every other warning still an error); the shipping app keeps 10.13. The .github workflows stay for the GitHub mirror. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
29 lines
1.8 KiB
YAML
29 lines
1.8 KiB
YAML
# Gitea CI on the shared KofTwentyTwo/ci-workflows macOS workflow (grogu). The .github workflows keep
|
|
# running on the GitHub mirror (release, notarization, appcast); this one is build only and unsigned.
|
|
#
|
|
# Guard B the de-paywall marker and the if-false wrap are still in computeState() (docs/PLAN-maintained-fork.md §4.4)
|
|
# Guard C no unresolved merge conflict markers in the tree
|
|
# build the Release scheme, unsigned
|
|
# Guard A the Test scheme is compiled (build-for-testing) but not run: the grogu runner has no GUI session for
|
|
# testmanagerd. Run scripts/run_tests.sh locally before merging (docs/contributing.md).
|
|
name: build
|
|
on:
|
|
push:
|
|
branches: ['**']
|
|
jobs:
|
|
macos:
|
|
uses: self:KofTwentyTwo/ci-workflows/.gitea/workflows/macos.yaml@v1
|
|
with:
|
|
commands: |
|
|
F=src/pro/license/LicenseManager.swift
|
|
[ -f "$F" ] || { echo "::error::Guard B: $F not found; chokepoint moved? Refresh the de-paywall patch (§6.2)."; exit 1; }
|
|
grep -q 'depaywall' "$F" || { echo "::error::PAYWALL RELOCKED: 'depaywall' marker missing from $F (§6.2)."; exit 1; }
|
|
grep -Eq 'guard[[:space:]]+false[[:space:]]+else' "$F" || { echo "::error::PAYWALL RELOCKED: 'if false { … }' wrap missing from $F (§6.2)."; exit 1; }
|
|
echo "Guard B OK"
|
|
if git -c grep.lineNumber=false grep -nE '^(<<<<<<<|=======|>>>>>>>)' -- . ':(exclude)docs/'; then
|
|
echo "::error::UNRESOLVED CONFLICT MARKERS present; resolve before merge (§4.4 Guard C)."; exit 1
|
|
fi
|
|
echo "Guard C OK"
|
|
xcodebuild -quiet -project alt-tab-macos.xcodeproj -scheme Release -derivedDataPath DerivedData CODE_SIGN_IDENTITY=- CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=NO build
|
|
xcodebuild -quiet -project alt-tab-macos.xcodeproj -scheme Test -configuration Release -derivedDataPath DerivedData build-for-testing
|