Merge pull request #23 from MillerTechnologyPeru/feature/androidswiftui #6
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: [master] | |
| pull_request: | |
| workflow_dispatch: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| test: | |
| name: Test | |
| runs-on: macos-26 | |
| timeout-minutes: 45 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| # Pinned, not latest-stable: WasmKit 0.3.x declares swift-tools-version 6.3, so it needs | |
| # Swift 6.3+. Xcode 26.5 (the macos-26 default) ships Swift 6.2.x and fails with | |
| # "package 'wasmkit' is using Swift tools version 6.3.0 but the installed version is 6.2.4". | |
| - uses: maxim-lobanov/setup-xcode@v1 | |
| with: | |
| xcode-version: '26.6' | |
| - name: Build | |
| run: swift build --build-tests | |
| - name: Test | |
| run: swift test | |
| ios-archive: | |
| name: iOS Archive | |
| runs-on: macos-26 | |
| timeout-minutes: 60 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| # Pinned, not latest-stable: WasmKit 0.3.x declares swift-tools-version 6.3, so it needs | |
| # Swift 6.3+. Xcode 26.5 (the macos-26 default) ships Swift 6.2.x and fails with | |
| # "package 'wasmkit' is using Swift tools version 6.3.0 but the installed version is 6.2.4". | |
| - uses: maxim-lobanov/setup-xcode@v1 | |
| with: | |
| xcode-version: '26.6' | |
| - name: Archive | |
| working-directory: Darwin | |
| run: | | |
| xcodebuild archive \ | |
| -project BluetoothExplorer.xcodeproj \ | |
| -scheme "BluetoothExplorer App" \ | |
| -destination 'generic/platform=iOS' \ | |
| -archivePath "$RUNNER_TEMP/BluetoothExplorer.xcarchive" \ | |
| -skipPackagePluginValidation \ | |
| -skipMacroValidation \ | |
| CODE_SIGNING_ALLOWED=NO | |
| - name: Verify archive contents | |
| run: | | |
| APP="$RUNNER_TEMP/BluetoothExplorer.xcarchive/Products/Applications/BluetoothExplorer.app" | |
| test -d "$APP" || { echo "::error::archive did not produce BluetoothExplorer.app"; exit 1; } | |
| # The bundled WASM parser plugins must ship inside the app. | |
| find "$APP" -name '*.wasm' -print | tee /tmp/wasm-list | |
| test -s /tmp/wasm-list || { echo "::error::no bundled .wasm plugins in the archive"; exit 1; } | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: ios-archive | |
| path: ${{ runner.temp }}/BluetoothExplorer.xcarchive | |
| retention-days: 14 |