| --- |
| matrix: |
| bzlmod_platforms: ["centos7_java11_devtoolset10", "ubuntu2004", "macos", "windows"] |
| |
| tasks: |
| bzlmod_builds: |
| name: "Bazel Bzlmod build" |
| platform: ${{ bzlmod_platforms }} |
| build_flags: |
| - "--config=bzlmod" |
| build_targets: |
| - "//src:bazel" |
| test_targets: |
| - "//src/test/cpp/..." |
| centos7_java11_devtoolset10: |
| shell_commands: |
| - sed -i.bak -e 's/^# android_sdk_repository/android_sdk_repository/' -e 's/^# |
| android_ndk_repository/android_ndk_repository/' WORKSPACE |
| - rm -f WORKSPACE.bak |
| - rm -rf $HOME/bazeltest |
| - mkdir $HOME/bazeltest |
| build_flags: |
| - "--test_env=TEST_INSTALL_BASE=$HOME/bazeltest/install_base" |
| - "--test_env=TEST_REPOSITORY_HOME=$OUTPUT_BASE/external" |
| - "--noremote_accept_cached" |
| build_targets: |
| - "//:bazel-distfile.zip" |
| - "//scripts/packages/debian:bazel-debian.deb" |
| - "//scripts/packages:with-jdk/install.sh" |
| - "//src:bazel" |
| - "//src:bazel_jdk_minimal" |
| - "//src:test_repos" |
| - "//src/main/java/..." |
| test_flags: |
| - "--sandbox_default_allow_network=false" |
| - "--sandbox_writable_path=$HOME/bazeltest" |
| - "--test_env=TEST_INSTALL_BASE=$HOME/bazeltest/install_base" |
| - "--test_env=TEST_REPOSITORY_HOME=$OUTPUT_BASE/external" |
| test_targets: |
| - "//scripts/..." |
| - "//src/java_tools/..." |
| - "//src/test/..." |
| - "//src/tools/execlog/..." |
| - "//src/tools/singlejar/..." |
| - "//src/tools/workspacelog/..." |
| - "//third_party/ijar/..." |
| - "//tools/android/..." |
| - "//tools/aquery_differ/..." |
| - "//tools/python/..." |
| # Re-enable once fixed: https://github.com/bazelbuild/bazel/issues/8162 |
| - "-//src/java_tools/buildjar/..." |
| - "-//src/java_tools/import_deps_checker/..." |
| # These tests are not compatible with the gcov version of CentOS 7. |
| - "-//src/test/shell/bazel:bazel_cc_code_coverage_test" |
| - "-//src/test/shell/bazel:bazel_coverage_cc_released_test_gcc" |
| - "-//src/test/shell/bazel:bazel_coverage_cc_head_test_gcc" |
| - "-//src/test/shell/bazel:bazel_coverage_sh_test" |
| include_json_profile: |
| - build |
| - test |
| ubuntu1804: |
| shell_commands: |
| - sed -i.bak -e 's/^# android_sdk_repository/android_sdk_repository/' -e 's/^# |
| android_ndk_repository/android_ndk_repository/' WORKSPACE |
| - rm -f WORKSPACE.bak |
| - rm -rf $HOME/bazeltest |
| - mkdir $HOME/bazeltest |
| build_flags: |
| - "--test_env=TEST_INSTALL_BASE=$HOME/bazeltest/install_base" |
| - "--test_env=TEST_REPOSITORY_HOME=$OUTPUT_BASE/external" |
| - "--test_env=REMOTE_NETWORK_ADDRESS=bazel.build:80" |
| - "--noremote_accept_cached" |
| build_targets: |
| - "//src:bazel" |
| - "//src:bazel_jdk_minimal" |
| - "//src:test_repos" |
| - "//src/main/java/..." |
| test_flags: |
| - "--sandbox_default_allow_network=false" |
| - "--sandbox_writable_path=$HOME/bazeltest" |
| - "--test_env=TEST_INSTALL_BASE=$HOME/bazeltest/install_base" |
| - "--test_env=TEST_REPOSITORY_HOME=$OUTPUT_BASE/external" |
| # Configure and enable tests that require access to the network. |
| - "--test_env=REMOTE_NETWORK_ADDRESS=bazel.build:80" |
| test_targets: |
| - "//scripts/..." |
| - "//src/java_tools/..." |
| - "//src/test/..." |
| - "//src/tools/execlog/..." |
| - "//src/tools/singlejar/..." |
| - "//src/tools/workspacelog/..." |
| - "//third_party/ijar/..." |
| - "//tools/android/..." |
| - "//tools/aquery_differ/..." |
| - "//tools/python/..." |
| # Re-enable once fixed: https://github.com/bazelbuild/bazel/issues/8162 |
| - "-//src/java_tools/import_deps_checker/..." |
| include_json_profile: |
| - build |
| - test |
| ubuntu1804_clang: |
| platform: ubuntu1804 |
| environment: |
| CC: clang |
| CC_CONFIGURE_DEBUG: 1 |
| name: "Clang" |
| shell_commands: |
| - sed -i.bak -e 's/^# android_sdk_repository/android_sdk_repository/' -e 's/^# |
| android_ndk_repository/android_ndk_repository/' WORKSPACE |
| - rm -f WORKSPACE.bak |
| - rm -rf $HOME/bazeltest |
| - mkdir $HOME/bazeltest |
| build_flags: |
| - "--test_env=TEST_INSTALL_BASE=$HOME/bazeltest/install_base" |
| - "--test_env=TEST_REPOSITORY_HOME=$OUTPUT_BASE/external" |
| - "--noremote_accept_cached" |
| build_targets: |
| - "//src:bazel" |
| - "//src:bazel_jdk_minimal" |
| - "//src:test_repos" |
| - "//src/main/java/..." |
| test_flags: |
| - "--sandbox_default_allow_network=false" |
| - "--sandbox_writable_path=$HOME/bazeltest" |
| - "--test_env=TEST_INSTALL_BASE=$HOME/bazeltest/install_base" |
| - "--test_env=TEST_REPOSITORY_HOME=$OUTPUT_BASE/external" |
| test_targets: |
| - "//src/test/shell/bazel:cc_integration_test" |
| include_json_profile: |
| - build |
| - test |
| ubuntu2004: |
| shell_commands: |
| - sed -i.bak -e 's/^# android_sdk_repository/android_sdk_repository/' -e 's/^# |
| android_ndk_repository/android_ndk_repository/' WORKSPACE |
| - rm -f WORKSPACE.bak |
| - rm -rf $HOME/bazeltest |
| - mkdir $HOME/bazeltest |
| build_flags: |
| - "--test_env=TEST_INSTALL_BASE=$HOME/bazeltest/install_base" |
| - "--test_env=TEST_REPOSITORY_HOME=$OUTPUT_BASE/external" |
| - "--test_env=REMOTE_NETWORK_ADDRESS=bazel.build:80" |
| - "--noremote_accept_cached" |
| build_targets: |
| - "//src:bazel" |
| - "//src:bazel_jdk_minimal" |
| - "//src:test_repos" |
| - "//src/main/java/..." |
| test_flags: |
| - "--sandbox_default_allow_network=false" |
| - "--sandbox_writable_path=$HOME/bazeltest" |
| - "--test_env=TEST_INSTALL_BASE=$HOME/bazeltest/install_base" |
| - "--test_env=TEST_REPOSITORY_HOME=$OUTPUT_BASE/external" |
| # Configure and enable tests that require access to the network. |
| - "--test_env=REMOTE_NETWORK_ADDRESS=bazel.build:80" |
| test_targets: |
| - "//scripts/..." |
| - "//src/java_tools/..." |
| - "//src/test/..." |
| - "//src/tools/execlog/..." |
| - "//src/tools/singlejar/..." |
| - "//src/tools/workspacelog/..." |
| - "//third_party/ijar/..." |
| - "//tools/android/..." |
| - "//tools/aquery_differ/..." |
| - "//tools/python/..." |
| # Re-enable once fixed: https://github.com/bazelbuild/bazel/issues/8162 |
| - "-//src/java_tools/import_deps_checker/..." |
| include_json_profile: |
| - build |
| - test |
| macos: |
| shell_commands: |
| - sed -i.bak -e 's/^# android_sdk_repository/android_sdk_repository/' -e 's/^# |
| android_ndk_repository/android_ndk_repository/' WORKSPACE |
| - rm -f WORKSPACE.bak |
| - rm -rf $HOME/bazeltest |
| - mkdir $HOME/bazeltest |
| - ln -sf $OUTPUT_BASE/external $HOME/bazeltest/external |
| build_flags: |
| - "--test_env=TEST_INSTALL_BASE=$HOME/bazeltest/install_base" |
| - "--test_env=TEST_REPOSITORY_HOME=$OUTPUT_BASE/external" |
| - "--test_env=TEST_REPOSITORY_HOME=$HOME/bazeltest/external" |
| - "--test_env=REMOTE_NETWORK_ADDRESS=bazel.build:80" |
| - "--noremote_accept_cached" |
| build_targets: |
| - "//src:bazel" |
| - "//src:bazel_jdk_minimal" |
| - "//src:test_repos" |
| - "//src/main/java/..." |
| test_flags: |
| - "--sandbox_default_allow_network=false" |
| - "--sandbox_writable_path=$HOME/bazeltest" |
| - "--test_env=TEST_INSTALL_BASE=$HOME/bazeltest/install_base" |
| - "--test_env=TEST_REPOSITORY_HOME=$HOME/bazeltest/external" |
| # Configure and enable tests that require access to the network. |
| - "--test_env=REMOTE_NETWORK_ADDRESS=bazel.build:80" |
| # Fine tune the number of test jobs running in parallel to avoid timeout |
| - "--local_test_jobs=8" |
| test_targets: |
| - "//scripts/..." |
| - "//src/test/..." |
| - "//src/tools/execlog/..." |
| - "//src/tools/singlejar/..." |
| - "//src/tools/workspacelog/..." |
| - "//third_party/ijar/..." |
| - "//tools/android/..." |
| - "//tools/aquery_differ/..." |
| - "//tools/python/..." |
| # C++ coverage is not supported on macOS yet. |
| - "-//src/test/shell/bazel:bazel_cc_code_coverage_test" |
| # MacOS does not have cgroups so it can't support hardened sandbox |
| - "-//src/test/shell/integration:bazel_hardened_sandboxed_worker_test" |
| # https://github.com/bazelbuild/bazel/issues/16526 |
| - "-//src/test/shell/bazel:starlark_repository_test" |
| # https://github.com/bazelbuild/bazel/issues/17407 |
| - "-//src/test/shell/bazel/apple:bazel_apple_test" |
| # https://github.com/bazelbuild/bazel/issues/17408 |
| - "-//src/test/shell/bazel/apple:bazel_objc_test" |
| # https://github.com/bazelbuild/bazel/issues/16526#issuecomment-1415858550 |
| - "-//src/test/shell/bazel/android:android_instrumentation_test_integration_test" |
| - "-//src/test/shell/bazel/android:android_instrumentation_test_integration_test_with_head_android_tools" |
| - "-//src/test/shell/bazel/android:android_instrumentation_test_integration_test_with_platforms" |
| # https://github.com/bazelbuild/bazel/issues/17410 |
| - "-//src/test/java/com/google/devtools/build/lib/platform:SystemMemoryPressureEventTest" |
| # https://github.com/bazelbuild/bazel/issues/17411 |
| - "-//src/test/java/com/google/devtools/build/lib/blackbox/tests/workspace:PatchApiBlackBoxTest" |
| # https://github.com/bazelbuild/bazel/issues/17447 |
| - "-//src/test/java/com/google/devtools/build/lib/blackbox/tests/workspace:GitRepositoryBlackBoxTest" |
| # https://github.com/bazelbuild/bazel/issues/17456 |
| - "-//src/test/shell/bazel:bazel_determinism_test" |
| # https://github.com/bazelbuild/bazel/issues/17457 |
| - "-//src/test/shell/bazel:jdeps_test" |
| include_json_profile: |
| - build |
| - test |
| macos_arm64: |
| shell_commands: |
| - sed -i.bak -e 's/^# android_sdk_repository/android_sdk_repository/' -e 's/^# |
| android_ndk_repository/android_ndk_repository/' WORKSPACE |
| - rm -f WORKSPACE.bak |
| - rm -rf $HOME/bazeltest |
| - mkdir $HOME/bazeltest |
| - ln -sf $OUTPUT_BASE/external $HOME/bazeltest/external |
| build_flags: |
| - "--test_env=TEST_INSTALL_BASE=$HOME/bazeltest/install_base" |
| - "--test_env=TEST_REPOSITORY_HOME=$OUTPUT_BASE/external" |
| - "--test_env=TEST_REPOSITORY_HOME=$HOME/bazeltest/external" |
| - "--test_env=REMOTE_NETWORK_ADDRESS=bazel.build:80" |
| - "--noremote_accept_cached" |
| build_targets: |
| - "//src:bazel" |
| - "//src:bazel_jdk_minimal" |
| - "//src:test_repos" |
| - "//src/main/java/..." |
| test_flags: |
| - "--sandbox_default_allow_network=false" |
| - "--sandbox_writable_path=$HOME/bazeltest" |
| - "--test_env=TEST_INSTALL_BASE=$HOME/bazeltest/install_base" |
| - "--test_env=TEST_REPOSITORY_HOME=$HOME/bazeltest/external" |
| # Configure and enable tests that require access to the network. |
| - "--test_env=REMOTE_NETWORK_ADDRESS=bazel.build:80" |
| test_targets: |
| - "//scripts/..." |
| - "//src/test/..." |
| - "//src/tools/execlog/..." |
| - "//src/tools/singlejar/..." |
| - "//src/tools/workspacelog/..." |
| - "//third_party/ijar/..." |
| - "//tools/android/..." |
| - "//tools/aquery_differ/..." |
| - "//tools/python/..." |
| # C++ coverage is not supported on macOS yet. |
| - "-//src/test/shell/bazel:bazel_cc_code_coverage_test" |
| # MacOS does not have cgroups so it can't support hardened sandbox |
| - "-//src/test/shell/integration:bazel_hardened_sandboxed_worker_test" |
| # https://github.com/bazelbuild/bazel/issues/16521 |
| - "-//src/test/shell/bazel/android/..." |
| - "-//src/tools/android/java/com/google/devtools/build/android/..." |
| - "-//src/test/java/com/google/devtools/build/android/dexer:AllTests" |
| # https://github.com/bazelbuild/bazel/issues/16525 |
| - "-//src/test/java/com/google/devtools/build/lib/buildtool:KeepGoingTest" |
| - "-//src/test/java/com/google/devtools/build/lib/buildtool:DanglingSymlinkTest" |
| - "-//src/test/java/com/google/devtools/build/lib/buildtool:CompileOneDependencyIntegrationTest" |
| - "-//src/test/java/com/google/devtools/build/lib/buildtool:SkymeldBuildIntegrationTest" |
| - "-//src/test/java/com/google/devtools/build/lib/rules/objc:BazelJ2ObjcLibraryTest" |
| - "-//src/test/java/com/google/devtools/build/lib/skyframe/rewinding:RewindingTest" |
| - "-//src/test/java/com/google/devtools/build/lib/buildtool:MiscAnalysisTest" |
| - "-//src/test/java/com/google/devtools/build/lib/rules/objc:ObjcRulesTests" |
| # https://github.com/bazelbuild/bazel/issues/16975 |
| - "-//scripts/docs:rewriter_test" |
| # https://github.com/bazelbuild/bazel/issues/17007 |
| - "-//src/test/java/com/google/devtools/build/lib/platform:SystemMemoryPressureEventTest" |
| include_json_profile: |
| - build |
| - test |
| windows: |
| batch_commands: |
| - powershell -Command "(Get-Content WORKSPACE) -Replace '# android_', 'android_' | Set-Content WORKSPACE" |
| - mkdir C:\b |
| - mklink /J C:\b\bazeltest_external %OUTPUT_BASE:/=\%\external |
| build_flags: |
| - "--copt=-w" |
| - "--host_copt=-w" |
| - "--test_env=JAVA_HOME" |
| - "--test_env=TEST_INSTALL_BASE=$HOME/bazeltest_install_base" |
| - "--test_env=TEST_REPOSITORY_HOME=C:/b/bazeltest_external" |
| - "--noremote_accept_cached" |
| build_targets: |
| - "//src:bazel.exe" |
| - "//src:bazel_jdk_minimal" |
| - "//src:test_repos" |
| - "//src/main/java/..." |
| test_flags: |
| - "--copt=-w" |
| - "--host_copt=-w" |
| - "--test_tag_filters=-no_windows,-slow" |
| - "--test_env=JAVA_HOME" |
| - "--test_env=TEST_INSTALL_BASE=$HOME/bazeltest_install_base" |
| - "--test_env=TEST_REPOSITORY_HOME=C:/b/bazeltest_external" |
| test_targets: |
| - "//src:embedded_tools_size_test" |
| - "//src/test/cpp/..." |
| - "//src/test/java/com/google/devtools/build/android/..." |
| - "//src/test/java/com/google/devtools/build/lib/..." |
| - "//src/test/java/com/google/devtools/build/skyframe/..." |
| - "//src/test/java/com/google/devtools/common/options/..." |
| - "//src/test/native/windows/..." |
| - "//src/test/py/bazel/..." |
| - "//src/test/res/..." |
| - "//src/test/shell/..." |
| - "//src/tools/launcher/..." |
| - "//src/tools/singlejar/..." |
| - "//third_party/def_parser/..." |
| - "//tools/android/..." |
| - "//tools/aquery_differ/..." |
| - "//tools/bash/..." |
| - "//tools/build_defs/..." |
| - "//tools/cpp/runfiles/..." |
| - "//tools/java/..." |
| - "//tools/jdk/..." |
| - "//tools/python/..." |
| - "//tools/test/..." |
| # Re-enable the following tests on Windows: |
| # https://github.com/bazelbuild/bazel/issues/4292 |
| - "-//src/test/java/com/google/devtools/build/android/r8/..." |
| - "-//src/test/java/com/google/devtools/build/lib/query2/cquery/..." |
| - "-//src/test/java/com/google/devtools/build/lib/query2/engine/..." |
| - "-//src/test/java/com/google/devtools/build/lib/versioning/..." |
| - "-//src/test/java/com/google/devtools/build/lib/worker/..." |
| - "-//src/test/java/com/google/devtools/build/lib/remote:remote" |
| - "-//src/test/shell/bazel/remote/..." |
| - "-//tools/python:pywrapper_test" |
| include_json_profile: |
| - build |
| - test |
| rbe_ubuntu1804: |
| platform: ubuntu1804 |
| shell_commands: |
| - sed -i.bak |
| -e 's/^# android_sdk_repository/android_sdk_repository/' |
| -e 's/^# android_ndk_repository/android_ndk_repository/' WORKSPACE |
| - rm -f WORKSPACE.bak |
| build_flags: |
| - "--config=ubuntu1804_java11" |
| - "--remote_executor=grpcs://remotebuildexecution.googleapis.com" |
| - "--jobs=200" |
| - "--experimental_remote_download_outputs=minimal" |
| - "--experimental_inmemory_jdeps_files" |
| - "--experimental_inmemory_dotd_files" |
| build_targets: |
| - "//src:bazel" |
| - "//src:bazel_jdk_minimal" |
| - "//src/main/java/..." |
| test_flags: |
| - "--config=ubuntu1804_java11" |
| - "--remote_executor=grpcs://remotebuildexecution.googleapis.com" |
| - "--jobs=200" |
| - "--experimental_remote_download_outputs=minimal" |
| - "--experimental_inmemory_jdeps_files" |
| - "--experimental_inmemory_dotd_files" |
| test_targets: |
| - "//scripts/..." |
| - "//src/java_tools/..." |
| - "//src/test/..." |
| - "//src/tools/execlog/..." |
| - "//src/tools/singlejar/..." |
| - "//src/tools/workspacelog/..." |
| - "//third_party/ijar/..." |
| - "//tools/aquery_differ/..." |
| - "//tools/python/..." |
| - "//tools/android/..." |
| # See https://github.com/bazelbuild/bazel/issues/8033 |
| - "-//src/tools/singlejar:output_jar_simple_test" |
| - "-//src/test/shell/bazel:external_integration_test" |
| - "-//src/test/shell/bazel:bazel_repository_cache_test" |
| - "-//src/test/shell/integration:java_integration_test" |
| - "-//src/test/java/com/google/devtools/build/lib/sandbox/..." |
| # See https://github.com/bazelbuild/bazel/issues/8162 (also disabled for local exec) |
| - "-//src/java_tools/buildjar/..." |
| - "-//src/java_tools/import_deps_checker/..." |
| # We hit connection timeout error when downloading multiple URLs on RBE, see b/217865760 |
| - "-//src/test/py/bazel:bazel_module_test" |
| - "-//src/test/py/bazel:bazel_lockfile_test" |
| - "-//src/test/py/bazel:bazel_overrides_test" |
| - "-//src/test/py/bazel:bazel_repo_mapping_test" |
| - "-//src/test/py/bazel:bazel_yanked_versions_test" |
| - "-//src/test/shell/bazel:verify_workspace" |
| include_json_profile: |
| - build |
| - test |
| kythe_ubuntu2004: |
| shell_commands: |
| - sed -i.bak -e 's/^# android_sdk_repository/android_sdk_repository/' |
| -e 's/^# android_ndk_repository/android_ndk_repository/' WORKSPACE |
| - rm -f WORKSPACE.bak |
| index_flags: |
| - "--define=kythe_corpus=github.com/bazelbuild/bazel" |
| index_targets_query: "kind(\"cc_(binary|library|test|proto_library) rule\", ...) union kind(\"java_(binary|import|library|plugin|test|proto_library) rule\", ...) union kind(\"proto_library rule\", ...)" |
| index_upload_policy: Always |
| index_upload_gcs: True |