Continuous Integration #63
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
| # Portions of this file are generated by the build. | |
| # | |
| # Note: | |
| # - Modification to values outside of the matrix strategy sections should | |
| # persist. | |
| # - Comments and custom formatting will be lost. | |
| name: Continuous Integration | |
| "on": | |
| pull_request: | |
| branches: | |
| - main | |
| merge_group: {} | |
| schedule: | |
| - cron: 14 11 * * * | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| all_ci_tests: | |
| runs-on: ubuntu-latest | |
| needs: | |
| - tidy_and_test_matrix | |
| - integration_test_matrix | |
| if: ${{ always() }} | |
| steps: | |
| - uses: cgrindel/gha_join_jobs@v1 | |
| with: | |
| github_token: ${{ secrets.GITHUB_TOKEN }} | |
| integration_test_matrix: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - test: '@@//bzlmod:e2e_test' | |
| runner: ubuntu-22.04 | |
| - test: '@@//bzlmod:e2e_test' | |
| runner: macos-15 | |
| - test: '@@//examples:firebase_example_test_bazel_.bazelversion' | |
| runner: macos-15 | |
| - test: '@@//examples:google_maps_example_test_bazel_.bazelversion' | |
| runner: macos-15 | |
| - test: '@@//examples:grpc_example_test_bazel_.bazelversion' | |
| runner: ubuntu-22.04 | |
| - test: '@@//examples:grpc_example_test_bazel_.bazelversion' | |
| runner: macos-15 | |
| - test: '@@//examples:interesting_deps_test_bazel_.bazelversion' | |
| runner: macos-15 | |
| - test: '@@//examples:ios_sim_test_bazel_.bazelversion' | |
| runner: macos-15 | |
| - test: '@@//examples:kscrash_example_test_bazel_.bazelversion' | |
| runner: macos-15 | |
| - test: '@@//examples:lottie_ios_example_test_bazel_.bazelversion' | |
| runner: macos-15 | |
| - test: '@@//examples:messagekit_example_test_bazel_.bazelversion' | |
| runner: macos-15 | |
| - test: '@@//examples:nimble_example_test_bazel_.bazelversion' | |
| runner: macos-15 | |
| - test: '@@//examples:objc_code_test_bazel_.bazelversion' | |
| runner: macos-15 | |
| - test: '@@//examples:phone_number_kit_test_bazel_.bazelversion' | |
| runner: macos-15 | |
| - test: '@@//examples:pkg_manifest_minimal_test_bazel_.bazelversion' | |
| runner: ubuntu-22.04 | |
| - test: '@@//examples:pkg_manifest_minimal_test_bazel_.bazelversion' | |
| runner: macos-15 | |
| - test: '@@//examples:resources_example_test_bazel_.bazelversion' | |
| runner: macos-15 | |
| - test: '@@//examples:shake_ios_example_test_bazel_.bazelversion' | |
| runner: macos-15 | |
| - test: '@@//examples:skip_local_transitive_dependencies_example_test_bazel_.bazelversion' | |
| runner: macos-15 | |
| - test: '@@//examples:snapkit_example_test_bazel_.bazelversion' | |
| runner: macos-15 | |
| - test: '@@//examples:soto_example_test_bazel_.bazelversion' | |
| runner: macos-15 | |
| - test: '@@//examples:stripe_example_test_bazel_.bazelversion' | |
| runner: macos-15 | |
| - test: '@@//examples:swift_package_registry_example_test_bazel_.bazelversion' | |
| runner: macos-15 | |
| - test: '@@//examples:symlink_example_test_bazel_.bazelversion' | |
| runner: macos-15 | |
| - test: '@@//examples:tca_example_test_bazel_.bazelversion' | |
| runner: macos-15 | |
| - test: '@@//examples:vapor_example_test_bazel_.bazelversion' | |
| runner: ubuntu-22.04 | |
| - test: '@@//examples:vapor_example_test_bazel_.bazelversion' | |
| runner: macos-15 | |
| - test: '@@//examples:xcmetrics_example_test_bazel_.bazelversion' | |
| runner: macos-15 | |
| - test: '@@//release:archive_test' | |
| runner: ubuntu-22.04 | |
| - test: '@@//release:archive_test' | |
| runner: macos-15 | |
| runs-on: ${{ matrix.runner }} | |
| env: | |
| CC: clang | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: ./.github/actions/set_up_ubuntu | |
| if: ${{ startsWith(matrix.runner, 'ubuntu') }} | |
| with: | |
| repo_name: rules_swift_package_manager | |
| ubuntu_version: "22.04" | |
| - uses: ./.github/actions/set_up_macos | |
| if: ${{ startsWith(matrix.runner, 'macos') }} | |
| with: | |
| repo_name: rules_swift_package_manager | |
| test_target: ${{ matrix.test }} | |
| - uses: ./.github/actions/configure_remote_cache_auth | |
| with: | |
| buildbuddy_api_key: ${{ secrets.BUILDBUDDY_API_KEY }} | |
| - uses: ./.github/actions/execute_test | |
| with: | |
| bzlmod_enabled: ${{ matrix.bzlmod_enabled }} | |
| test_target: ${{ matrix.test }} | |
| tidy_and_test_matrix: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| runner: | |
| - macos-15 | |
| - ubuntu-22.04 | |
| runs-on: ${{ matrix.runner }} | |
| env: | |
| CC: clang | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: ./.github/actions/set_up_ubuntu | |
| if: ${{ startsWith(matrix.runner, 'ubuntu') }} | |
| with: | |
| repo_name: rules_swift_package_manager | |
| ubuntu_version: "22.04" | |
| - uses: ./.github/actions/set_up_macos | |
| if: ${{ startsWith(matrix.runner, 'macos') }} | |
| with: | |
| repo_name: rules_swift_package_manager | |
| - uses: ./.github/actions/configure_remote_cache_auth | |
| with: | |
| buildbuddy_api_key: ${{ secrets.BUILDBUDDY_API_KEY }} | |
| - uses: ./.github/actions/tidy_and_test | |
| if: ${{ startsWith(matrix.runner, 'ubuntu') }} | |
| - if: ${{ startsWith(matrix.runner, 'macos') }} | |
| name: Execute tests | |
| shell: bash | |
| run: "bazelisk test //... \n" |