fix(ci/release): skip iOS archive cleanly when the iOS SDK is absent
The macOS Developer ID DMG path is green (signed + notarized + stapled). The iOS/TestFlight step (already best-effort + continue-on-error) was failing on this runner with 'iOS 26.5 is not installed' — the iOS platform SDK is a separate Xcode component that isn't installed. Guard the step on `xcodebuild -showsdks | grep iphoneos` and exit 0 with a warning when it's missing, so runs are unambiguously green. Install on the runner with `xcodebuild -downloadPlatform iOS` when iOS goes live. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -218,6 +218,14 @@ jobs:
|
|||||||
# is done so real upload failures fail the run.
|
# is done so real upload failures fail the run.
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
run: |
|
run: |
|
||||||
|
# The iOS platform SDK is a separate Xcode component and isn't installed on every
|
||||||
|
# runner; without it `archive` dies with "iOS 26.5 is not installed". Skip cleanly
|
||||||
|
# (this is best-effort anyway) instead of a red step — install it on the runner with
|
||||||
|
# `xcodebuild -downloadPlatform iOS` when iOS/TestFlight is ready to go live.
|
||||||
|
if ! DEVELOPER_DIR="$XCODE_DEV_DIR" xcodebuild -showsdks 2>/dev/null | grep -q iphoneos; then
|
||||||
|
echo "::warning::iOS platform SDK not installed on this runner — skipping iOS/TestFlight."
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
DEVELOPER_DIR="$XCODE_DEV_DIR" xcodebuild archive \
|
DEVELOPER_DIR="$XCODE_DEV_DIR" xcodebuild archive \
|
||||||
-project "$PROJECT" -scheme Punktfunk-iOS \
|
-project "$PROJECT" -scheme Punktfunk-iOS \
|
||||||
-destination 'generic/platform=iOS' \
|
-destination 'generic/platform=iOS' \
|
||||||
|
|||||||
Reference in New Issue
Block a user