--- matrix: platform: - ubuntu2204 - macos bazel: [6.x, 7.x] tasks: ubuntu2204: name: Ubuntu 22.04 with WORKSPACE platform: ubuntu2204 bazel: 7.1.1 build_flags: - "--noexperimental_enable_bzlmod" test_flags: - "--noexperimental_enable_bzlmod" build_targets: - "..." run_targets: # Run Gazelle on repo to verify BUILD files are up-to-date. The output shouldn't differ # between platforms, so we only run it from one. - "//:gazelle_ci" test_targets: - "..." ubuntu2204_bzlmod: name: Ubuntu 22.04 with Bzlmod platform: ubuntu2204 bazel: 7.1.1 build_targets: - "..." run_targets: # Run Gazelle on repo to verify BUILD files are up-to-date. The output shouldn't differ # between platforms, so we only run it from one. - "//:gazelle_ci" test_targets: - "..." - "-//internal:bazel_test" - "-//cmd/gazelle:gazelle_test" bcr_tests: name: BCR test module platform: ${{ platform }} bazel: ${{ bazel }} working_directory: tests/bcr shell_commands: # Regenerate the BUILD files for the test module using Gazelle. # Also verify -repo_config are generated correctly in gazelle.bash - rm pkg/BUILD.bazel proto/BUILD.bazel - bazel run //:gazelle -- update pkg proto - bazel run //:gazelle -- pkg proto build_targets: - "//..." - "//:gazelle" test_targets: # Specify these targets explicitly to verify that Gazelle generates them correctly. - "//pkg:pkg_test" - "//proto:proto_test" - "//..." - "@test_dep//..." bcr_test_windows: name: BCR test on Windows platform: windows bazel: ${{ bazel }} working_directory: tests/bcr shell_commands: # Regenerate the BUILD file for the test module using Gazelle. # Also verify -repo_config are generated correctly in gazelle.bash - rm pkg/BUILD.bazel - bazel run //:gazelle -- update pkg - bazel run //:gazelle -- pkg build_flags: # Since go_sdk is platform-dependent, the lockfile will differ between # platforms. We will skip the check on windows. - "--lockfile_mode=update" test_flags: # See above. - "--lockfile_mode=update" build_targets: - "//..." - "//:gazelle" test_targets: # Specify this target explicitly to verify that Gazelle generated it correctly. - "//pkg:pkg_test" - "//..." - "@test_dep//..." macos_arm64_bzlmod: name: Mac OS Arm 64 with Bzlmod platform: macos_arm64 bazel: 7.1.1 build_targets: - "..." test_targets: - "..." - "-//internal:bazel_test" - "-//cmd/gazelle:gazelle_test" macos_arm64: name: Mac OS Arm 64 with WORKSPACE platform: macos_arm64 bazel: 7.1.1 build_flags: - "--noexperimental_enable_bzlmod" test_flags: - "--noexperimental_enable_bzlmod" build_targets: - "..." test_targets: - "..." macos_bzlmod: name: Mac OS with Bzlmod platform: macos bazel: 7.1.1 build_targets: - "..." test_targets: - "..." - "-//internal:bazel_test" - "-//cmd/gazelle:gazelle_test" macos: name: Mac OS with WORKSPACE platform: macos bazel: 7.1.1 build_flags: - "--noexperimental_enable_bzlmod" test_flags: - "--noexperimental_enable_bzlmod" build_targets: - "..." test_targets: - "..." windows_bzlmod: name: Windows with Bzlmod platform: windows bazel: 7.1.1 build_targets: - "--" - "..." - "-//cmd/autogazelle/..." test_targets: - "--" - "..." - "-//cmd/gazelle:gazelle_test" # autogazelle is only supported on UNIX-like platforms. # It requires UNIX domain sockets. - "-//cmd/autogazelle/..." # Stardoc produces different line-endings on windows, # so the documentation it generates doesn't match the checked in files - "-//docs:all" # Fails to execute, apparently due to command-line length limit. - "-//internal:bazel_test" # gazelle prints file paths with backward slashes on windows, # which doesn't match the golden files generated on *nix. - "-//tests:fix_mode_print0" - "-//tests:fix_mode_strict" windows: name: Windows with WORKSPACE platform: windows bazel: 7.1.1 build_flags: - "--noexperimental_enable_bzlmod" test_flags: - "--noexperimental_enable_bzlmod" build_targets: - "--" - "..." - "-//cmd/autogazelle/..." test_targets: - "--" - "..." # autogazelle is only supported on UNIX-like platforms. # It requires UNIX domain sockets. - "-//cmd/autogazelle/..." # Stardoc produces different line-endings on windows, # so the documentation it generates doesn't match the checked in files - "-//docs:all" # Fails to execute, apparently due to command-line length limit. - "-//internal:bazel_test" # gazelle prints file paths with backward slashes on windows, # which doesn't match the golden files generated on *nix. - "-//tests:fix_mode_print0" - "-//tests:fix_mode_strict" incompatible: name: Ubuntu 22.04 with WORKSPACE and --config=incompatible platform: ubuntu2204 bazel: 7.1.1 build_flags: - "--noexperimental_enable_bzlmod" - "--config=incompatible" build_targets: - "..." run_targets: - "//:gazelle_ci" test_flags: - "--noexperimental_enable_bzlmod" - "--config=incompatible" test_targets: - "..."