build #2547
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: build | |
| permissions: | |
| contents: read | |
| on: | |
| push: | |
| branches: [main] | |
| paths-ignore: | |
| - '**/*.md' # .md files anywhere in the repo | |
| - '**/LICENSE' # LICENSE files anywhere in the repo | |
| - '**/.gitignore' # .gitignore files anywhere in the repo | |
| - '**/*.png' # .png image files anywhere in the repo | |
| - '**/*.pdf' # .pdf files anywhere in the repo | |
| pull_request: | |
| branches: [main] | |
| paths-ignore: | |
| - '**/*.md' # .md files anywhere in the repo | |
| - '**/LICENSE' # LICENSE files anywhere in the repo | |
| - '**/.gitignore' # .gitignore files anywhere in the repo | |
| - '**/*.png' # .png image files anywhere in the repo | |
| - '**/*.pdf' # .pdf files anywhere in the repo | |
| workflow_dispatch: | |
| schedule: | |
| - cron: '35 11 * * *' # once a day @ 11:35am UTC (4:35am PST) | |
| env: | |
| SCHEME: "swift-midi" | |
| WORKSPACEPATH: ".swiftpm/xcode/package.xcworkspace" | |
| jobs: | |
| macOS-14: | |
| name: Tests (macOS 14) | |
| runs-on: macos-14 | |
| timeout-minutes: 20 | |
| steps: | |
| - uses: actions/checkout@main | |
| - uses: maxim-lobanov/setup-xcode@v1 | |
| with: | |
| xcode-version: latest-stable | |
| - name: Build | |
| run: xcodebuild build -workspace "$WORKSPACEPATH" -scheme "$SCHEME" -destination "generic/platform=macOS" | xcbeautify --renderer github-actions && exit ${PIPESTATUS[0]} | |
| # - name: Unit Tests | |
| # run: xcodebuild test -workspace "$WORKSPACEPATH" -scheme "$SCHEME" -destination "platform=macOS" | xcbeautify --renderer github-actions && exit ${PIPESTATUS[0]} | |
| macOS-15: | |
| name: Tests (macOS 15) | |
| runs-on: macos-15 | |
| timeout-minutes: 20 | |
| steps: | |
| - uses: actions/checkout@main | |
| - uses: maxim-lobanov/setup-xcode@v1 | |
| with: | |
| xcode-version: latest-stable | |
| - name: Build | |
| run: xcodebuild build -workspace "$WORKSPACEPATH" -scheme "$SCHEME" -destination "generic/platform=macOS" | xcbeautify --renderer github-actions && exit ${PIPESTATUS[0]} | |
| # - name: Unit Tests | |
| # run: xcodebuild test -workspace "$WORKSPACEPATH" -scheme "$SCHEME" -destination "platform=macOS" | xcbeautify --renderer github-actions && exit ${PIPESTATUS[0]} | |
| macOS-swift6-2: | |
| name: Tests (macOS - Swift 6.2) | |
| runs-on: macos-latest | |
| timeout-minutes: 20 | |
| steps: | |
| - uses: actions/checkout@main | |
| - uses: maxim-lobanov/setup-xcode@v1 | |
| with: | |
| xcode-version: latest-stable | |
| - name: Set Package to Swift 6.2 | |
| run: swift package tools-version --set "6.2" | |
| - name: Build | |
| run: xcodebuild build -workspace "$WORKSPACEPATH" -scheme "$SCHEME" -destination "generic/platform=macOS" | xcbeautify --renderer github-actions && exit ${PIPESTATUS[0]} | |
| # - name: Unit Tests | |
| # run: xcodebuild test -workspace "$WORKSPACEPATH" -scheme "$SCHEME" -destination "platform=macOS" | xcbeautify --renderer github-actions && exit ${PIPESTATUS[0]} | |
| macCatalyst: | |
| name: Tests (macCatalyst) | |
| runs-on: macos-latest | |
| timeout-minutes: 20 | |
| steps: | |
| - uses: actions/checkout@main | |
| - uses: maxim-lobanov/setup-xcode@v1 | |
| with: | |
| xcode-version: latest-stable | |
| - name: Build | |
| run: xcodebuild build -workspace "$WORKSPACEPATH" -scheme "$SCHEME" -destination "generic/platform=macOS,variant=Mac Catalyst" | xcbeautify --renderer github-actions && exit ${PIPESTATUS[0]} | |
| # - name: Unit Tests | |
| # run: xcodebuild test -workspace "$WORKSPACEPATH" -scheme "$SCHEME" -destination "platform=macOS,variant=Mac Catalyst" | xcbeautify --renderer github-actions && exit ${PIPESTATUS[0]} | |
| device-simulators: | |
| name: Tests | |
| runs-on: macos-latest | |
| strategy: | |
| matrix: | |
| target: [iOS, tvOS, watchOS, visionOS] | |
| continue-on-error: true | |
| timeout-minutes: 20 | |
| steps: | |
| - uses: actions/checkout@main | |
| - uses: maxim-lobanov/setup-xcode@v1 | |
| with: | |
| xcode-version: latest-stable | |
| - name: Prepare Device Simulator | |
| id: sim-setup | |
| uses: orchetect/setup-xcode-simulator@v1 | |
| with: | |
| refresh: true | |
| download: false # skip simulator download since we aren't running unit tests | |
| scheme: ${{ env.SCHEME }} | |
| target: ${{ matrix.target }} | |
| - name: Build | |
| run: xcodebuild build -workspace "$WORKSPACEPATH" -scheme "$SCHEME" -destination "generic/platform=$PLATFORMSHORT" | xcbeautify --renderer github-actions && exit ${PIPESTATUS[0]} | |
| env: | |
| PLATFORMSHORT: ${{ steps.sim-setup.outputs.platform-short }} | |
| WORKSPACEPATH: ${{ steps.sim-setup.outputs.workspace-path }} | |
| # - name: Unit Tests | |
| # run: xcodebuild test -workspace "$WORKSPACEPATH" -scheme "$SCHEME" -destination "platform=$PLATFORM,id=$ID" | xcbeautify --renderer github-actions && exit ${PIPESTATUS[0]} | |
| # env: | |
| # ID: ${{ steps.sim-setup.outputs.id }} | |
| # PLATFORM: ${{ steps.sim-setup.outputs.platform }} | |
| # WORKSPACEPATH: ${{ steps.sim-setup.outputs.workspace-path }} |