Add an action to build and test the example iOS app #8
This file contains 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: Build Example iOS app | |
on: | |
push: | |
branches: [ "main" ] | |
pull_request: | |
branches: [ "main" ] | |
jobs: | |
build: | |
name: Build and Test the Example app | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: swift-actions/[email protected] | |
with: | |
swift-version: "5.9" | |
- name: Bootstrap | |
working-directory: Example | |
run: ./bootstrap | |
- name: Build | |
working-directory: Example | |
env: | |
scheme: ${{ 'KnitExample' }} | |
run: | | |
xcodebuild -resolvePackageDependencies | |
# xcrun xctrace returns via stderr, not the expected stdout (see https://developer.apple.com/forums/thread/663959) | |
device=`xcrun xctrace list devices 2>&1 | grep -oE 'iPhone.*Simulator.*\([A-Z0-9-]*\)$' | grep -oE '[A-Z0-9-]{36}' | head -1` | |
xcodebuild build-for-testing -scheme KnitExample -destination "id=$device" | |
- name: Test | |
working-directory: Example | |
env: | |
scheme: ${{ 'KnitExample' }} | |
run: | | |
# xcrun xctrace returns via stderr, not the expected stdout (see https://developer.apple.com/forums/thread/663959) | |
device=`xcrun xctrace list devices 2>&1 | grep -oE 'iPhone.*Simulator.*\([A-Z0-9-]*\)$' | grep -oE '[A-Z0-9-]{36}' | head -1` | |
xcodebuild test-without-building -scheme KnitExample -destination "id=$device" |