name: Test on: push: branches: [main] pull_request: permissions: contents: read env: SKIP_INTEGRATION_TESTS: 'true' jobs: spm_linux: name: SPM, Linux, Swift 6.1 runs-on: ubuntu-24.04 container: swift:6.1-noble steps: - uses: actions/checkout@v4 - uses: actions/cache@v4 with: key: ${{ runner.os }}-swift-spm-${{ hashFiles('Package.resolved') }} restore-keys: ${{ runner.os }}-swift-spm- path: .build - name: Run tests uses: ./.github/actions/run-make with: rule: spm_test spm_macos: name: SPM, macOS ${{ matrix.macOS }}, Xcode ${{ matrix.xcode }} runs-on: macos-${{ matrix.macOS }} strategy: matrix: include: - macOS: '14' xcode: '15.4' - macOS: '15' xcode: '16.4' env: DEVELOPER_DIR: /Applications/Xcode_${{ matrix.xcode }}.app steps: - uses: actions/checkout@v4 - uses: actions/cache@v4 with: key: ${{ runner.os }}-xcode-spm-${{ matrix.xcode }}-${{ hashFiles('Package.resolved') }} restore-keys: ${{ runner.os }}-xcode-spm-${{ matrix.xcode }}- path: .build - name: Run tests run: make spm_test bazel_linux_debug: name: Bazel, Linux, Swift 6.1 (debug) runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 - uses: ./.github/actions/bazel-linux-build name: Build with Bazel env: CI_BAZELRC_FILE_CONTENT: ${{ secrets.CI_BAZELRC_FILE_CONTENT }} with: debug: 'true' - name: Run tests run: make bazel_test