|
| 1 | +name: Build on minimum supported platforms |
| 2 | + |
| 3 | +on: |
| 4 | + pull_request: |
| 5 | + |
| 6 | +permissions: {} |
| 7 | + |
| 8 | +concurrency: |
| 9 | + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} |
| 10 | + cancel-in-progress: true |
| 11 | + |
| 12 | +jobs: |
| 13 | + build-on-minimum-supported-platforms: |
| 14 | + name: ${{ matrix.os }} |
| 15 | + environment: Unit Test # TODO(5d): remove this line after repo is marked as public |
| 16 | + strategy: |
| 17 | + fail-fast: true |
| 18 | + matrix: |
| 19 | + include: |
| 20 | + - scheme: AWSAppSyncApolloExtensions |
| 21 | + os: iOS # Swift 5.9 (Xcode 15.0), iOS v13 |
| 22 | + sdk: iphonesimulator17.0 |
| 23 | + destination: platform=iOS Simulator,name=iPhone 14,OS=17.0 |
| 24 | + runner: macos-13 |
| 25 | + app: Xcode_15.0.1 |
| 26 | + - scheme: AWSAppSyncApolloExtensions |
| 27 | + os: macOS # Swift 5.9 (Xcode 15.0), macOS v10_15 |
| 28 | + sdk: macosx14.0 |
| 29 | + destination: platform=OS X,arch=x86_64 |
| 30 | + runner: macos-13 |
| 31 | + app: Xcode_15.0.1 |
| 32 | + - scheme: AWSAppSyncApolloExtensions |
| 33 | + os: watchOS # Swift 5.9 (Xcode 15.0), watchOS v9 |
| 34 | + sdk: watchsimulator10.0 |
| 35 | + destination: platform=watchOS Simulator,name=Apple Watch Series 8 (45mm),OS=10.0 |
| 36 | + runner: macos-13 |
| 37 | + app: Xcode_15.0.1 |
| 38 | + - scheme: AWSAppSyncApolloExtensions |
| 39 | + os: tvOS # Swift 5.9 (Xcode 15.0), tvOS v13 |
| 40 | + sdk: appletvsimulator17.0 |
| 41 | + destination: platform=tvOS Simulator,name=Apple TV 4K (3rd generation),OS=17.0 |
| 42 | + runner: macos-13 |
| 43 | + app: Xcode_15.0.1 |
| 44 | + |
| 45 | + runs-on: ${{ matrix.runner }} |
| 46 | + steps: |
| 47 | + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 |
| 48 | + with: |
| 49 | + persist-credentials: false |
| 50 | + token: ${{ secrets.PAT }} # TODO(5d): remove this line after repo is marked as public |
| 51 | + |
| 52 | + - name: ${{ matrix.os }} |
| 53 | + run: | |
| 54 | + sudo xcode-select -s "/Applications/${{ matrix.app }}.app" |
| 55 | + xcodebuild build \ |
| 56 | + -scheme ${{ matrix.scheme }} \ |
| 57 | + -destination "${{ matrix.destination }}" \ |
| 58 | + -sdk ${{ matrix.sdk }} \ |
| 59 | + | xcpretty --simple --color --report junit && exit ${PIPESTATUS[0]} |
0 commit comments