fix: update Xcode version in CI workflow to 16.4 #2
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| jobs: | |
| lint: | |
| name: Typecheck + Nitrogen sync + bob build | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 22 | |
| cache: npm | |
| - name: Install root deps | |
| run: npm ci | |
| - name: Typecheck | |
| run: npm run typecheck | |
| - name: Nitrogen sync | |
| run: npm run specs && git diff --exit-code nitrogen/generated | |
| - name: Build (bob) | |
| run: npm run build | |
| android: | |
| name: Android assembleDebug (example) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 22 | |
| cache: npm | |
| - uses: actions/setup-java@v4 | |
| with: | |
| distribution: temurin | |
| java-version: '17' | |
| - name: Cache Gradle | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ~/.gradle/caches | |
| ~/.gradle/wrapper | |
| key: gradle-${{ runner.os }}-${{ hashFiles('android/build.gradle', 'android/gradle.properties') }} | |
| - name: Install root deps | |
| run: npm ci | |
| - name: Install example deps | |
| working-directory: example | |
| run: npm ci | |
| - name: Expo prebuild (android) | |
| working-directory: example | |
| run: npx expo prebuild --platform android --clean --no-install | |
| - name: Gradle assembleDebug | |
| working-directory: example/android | |
| run: ./gradlew assembleDebug --no-daemon --stacktrace | |
| ios: | |
| name: iOS pod install + xcodebuild (example) | |
| runs-on: macos-15 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 22 | |
| cache: npm | |
| - name: Select Xcode | |
| run: sudo xcode-select -s /Applications/Xcode_16.4.app | |
| - name: Cache CocoaPods | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ~/Library/Caches/CocoaPods | |
| example/ios/Pods | |
| key: pods-${{ runner.os }}-${{ hashFiles('Cover.podspec', 'example/package.json') }} | |
| - name: Install root deps | |
| run: npm ci | |
| - name: Install example deps | |
| working-directory: example | |
| run: npm ci | |
| - name: Expo prebuild (ios) | |
| working-directory: example | |
| run: npx expo prebuild --platform ios --clean --no-install | |
| - name: Pod install | |
| working-directory: example/ios | |
| run: pod install --repo-update | |
| - name: xcodebuild | |
| working-directory: example/ios | |
| run: | | |
| set -o pipefail | |
| xcodebuild \ | |
| -workspace CoverExample.xcworkspace \ | |
| -scheme CoverExample \ | |
| -configuration Debug \ | |
| -sdk iphonesimulator \ | |
| -destination 'generic/platform=iOS Simulator' \ | |
| -quiet \ | |
| CODE_SIGNING_ALLOWED=NO \ | |
| build |