Skip to content

Commit a999b4e

Browse files
committed
Add iOS buildtest workflow
1 parent 376550e commit a999b4e

1 file changed

Lines changed: 75 additions & 0 deletions

File tree

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
name: iOS Build Test IPA
2+
3+
on:
4+
push:
5+
branches:
6+
- 'buildtest/**'
7+
workflow_dispatch:
8+
9+
permissions:
10+
contents: read
11+
12+
concurrency:
13+
group: ios-buildtest-ipa-${{ github.ref }}
14+
cancel-in-progress: true
15+
16+
defaults:
17+
run:
18+
shell: bash
19+
20+
jobs:
21+
build:
22+
name: Build unsigned iOS IPA
23+
runs-on: macos-15
24+
timeout-minutes: 60
25+
26+
steps:
27+
- name: Checkout
28+
uses: actions/checkout@v5
29+
with:
30+
submodules: recursive
31+
32+
- name: Toolchain diagnostics
33+
run: |
34+
sw_vers
35+
uname -a
36+
xcodebuild -version
37+
xcode-select -p
38+
cmake --version
39+
xcrun --sdk iphoneos --find metal
40+
xcrun --sdk iphoneos --find metallib
41+
df -h
42+
43+
- name: Verify submodules
44+
run: |
45+
git submodule status --recursive
46+
47+
- name: Generate Xcode project
48+
run: |
49+
./scripts/generate-ios-xcode.sh
50+
51+
- name: List Xcode schemes
52+
run: |
53+
xcodebuild \
54+
-project build-ios-xcode/ARMSX2iOS.xcodeproj \
55+
-list
56+
57+
- name: Build unsigned IPA
58+
run: |
59+
./scripts/build-ios-ipa.sh
60+
61+
- name: Inspect unsigned IPA
62+
run: |
63+
IPA_PATH="build-ios-xcode/ARMSX2-iOS-unsigned.ipa"
64+
if [ ! -f "$IPA_PATH" ]; then
65+
echo "Unsigned IPA not produced at $IPA_PATH"
66+
find build-ios-xcode -maxdepth 5 \( -name "*.ipa" -o -name "*.app" \) -print
67+
exit 1
68+
fi
69+
ls -lh "$IPA_PATH"
70+
71+
- name: Upload unsigned IPA
72+
uses: actions/upload-artifact@v5
73+
with:
74+
name: ARMSX2-iOS-buildtest-unsigned-ipa
75+
path: build-ios-xcode/ARMSX2-iOS-unsigned.ipa

0 commit comments

Comments
 (0)