All checks were successful
CI / build-and-deploy (push) Successful in 16s
On every push to swift/master: compile-checks against the simulator (no signing required) then builds a development IPA and deploys it to the shared OTA server at krishnas-mac-studio.tail37d544.ts.net:8443. Modelled on 1ai's ci.yaml — runs on the local macos act runner so the keychain is live and automatic signing works without any cert setup. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
51 lines
1.3 KiB
YAML
51 lines
1.3 KiB
YAML
name: CI
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
- swift
|
|
- 'feat/**'
|
|
- 'feature/**'
|
|
pull_request:
|
|
branches:
|
|
- master
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
build-and-deploy:
|
|
runs-on: macos
|
|
env:
|
|
DEVELOPER_DIR: /Applications/Xcode-26.3.app/Contents/Developer
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Generate Xcode project
|
|
run: xcodegen generate
|
|
|
|
- name: Build (simulator, compile check)
|
|
run: |
|
|
SIM_ID=$(xcrun simctl list devices available -j | python3 -c "
|
|
import json,sys
|
|
for rt,devs in json.load(sys.stdin)['devices'].items():
|
|
if 'iOS' in rt:
|
|
for d in devs:
|
|
if 'iPhone' in d['name'] and d['isAvailable']:
|
|
print(d['udid']); sys.exit()
|
|
" 2>/dev/null)
|
|
echo "Using simulator: $SIM_ID"
|
|
xcodebuild build \
|
|
-project Marks.xcodeproj \
|
|
-scheme Marks \
|
|
-destination "platform=iOS Simulator,id=$SIM_ID" \
|
|
-configuration Debug \
|
|
CODE_SIGNING_ALLOWED=NO \
|
|
CODE_SIGN_IDENTITY="" \
|
|
CODE_SIGNING_REQUIRED=NO \
|
|
DEVELOPMENT_TEAM=""
|
|
|
|
- name: Build IPA and deploy to OTA server
|
|
run: ./scripts/ipa-server/build-and-deploy.sh
|
|
continue-on-error: true
|