From 31804b5c496aca25e08b74183cc87d398e4bfe0a Mon Sep 17 00:00:00 2001 From: Di Wu Date: Mon, 26 Aug 2024 14:03:09 -0700 Subject: [PATCH] add build with minimum supported version github action --- .../build-on-minimum-supported-platform.yaml | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 .github/workflows/build-on-minimum-supported-platform.yaml diff --git a/.github/workflows/build-on-minimum-supported-platform.yaml b/.github/workflows/build-on-minimum-supported-platform.yaml new file mode 100644 index 0000000..03cdcb6 --- /dev/null +++ b/.github/workflows/build-on-minimum-supported-platform.yaml @@ -0,0 +1,53 @@ +name: Build on minimum supported platforms + +on: + pull_request: + +permissions: {} + +jobs: + build-on-minimum-supported-platforms: + name: ${{ matrix.os }} + environment: Unit Test # TODO(5d): remove this line after repo is marked as public + strategy: + fail-fast: true + matrix: + scheme: + - AWSAppSyncApolloExtensions + include: + - os: iOS # Swift 5.9 (Xcode 15.0), iOS v13 + sdk: iphonesimulator17.0 + destination: platform=iOS Simulator,name=iPhone 14,OS=17.0 + runner: macos-13 + app: Xcode_15.0.1 + - os: macOS # Swift 5.9 (Xcode 15.0), macOS v10_15 + sdk: macosx14.0 + destination: platform=OS X,arch=x86_64 + runner: macos-13 + app: Xcode_15.0.1 + - os: watchOS # Swift 5.9 (Xcode 15.0), watchOS v9 + sdk: watchsimulator10.0 + destination: platform=watchOS Simulator,name=Apple Watch Series 8 (45mm),OS=10.0 + runner: macos-13 + app: Xcode_15.0.1 + - os: tvOS # Swift 5.9 (Xcode 15.0), tvOS v13 + sdk: appletvsimulator17.0 + destination: platform=tvOS Simulator,name=Apple TV 4K (3rd generation),OS=17.0 + runner: macos-13 + app: Xcode_15.0.1 + + runs-on: ${{ matrix.runner }} + steps: + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + with: + persist-credentials: false + token: ${{ secrets.PAT }} # TODO(5d): remove this line after repo is marked as public + + - name: ${{ matrix.os }} + run: | + sudo xcode-select -s "/Applications/${{ matrix.app }}.app" + xcodebuild build \ + -scheme ${{ matrix.scheme }} \ + -destination "${{ matrix.destination }}" \ + -sdk ${{ matrix.sdk }} \ + | xcpretty --simple --color --report junit && exit ${PIPESTATUS[0]}