| # Copyright 2023 The Bazel Authors. All rights reserved. |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| --- |
| buildifier: |
| version: latest |
| # keep this argument in sync with .pre-commit-config.yaml |
| warnings: "all" |
| .reusable_config: &reusable_config |
| build_targets: |
| - "--" |
| - "..." |
| # As a regression test for #225, check that wheel targets still build when |
| # their package path is qualified with the repo name. |
| - "@rules_python//examples/wheel/..." |
| build_flags: |
| - "--keep_going" |
| test_targets: |
| - "--" |
| - "..." |
| test_flags: |
| - "--test_tag_filters=-integration-test" |
| .common_bzlmod_flags: &common_bzlmod_flags |
| test_flags: |
| - "--experimental_enable_bzlmod" |
| build_flags: |
| - "--experimental_enable_bzlmod" |
| .reusable_build_test_all: &reusable_build_test_all |
| build_targets: ["..."] |
| test_targets: ["..."] |
| .coverage_targets_example_bzlmod: &coverage_targets_example_bzlmod |
| coverage_targets: ["//:test"] |
| .coverage_targets_example_multi_python: &coverage_targets_example_multi_python |
| coverage_targets: |
| - //tests:my_lib_3_10_test |
| - //tests:my_lib_3_11_test |
| - //tests:my_lib_3_8_test |
| - //tests:my_lib_3_9_test |
| - //tests:my_lib_default_test |
| - //tests:version_3_10_test |
| - //tests:version_3_11_test |
| - //tests:version_3_8_test |
| - //tests:version_3_9_test |
| - //tests:version_default_test |
| tasks: |
| gazelle_extension: |
| name: Test the Gazelle extension |
| platform: ubuntu2004 |
| build_targets: ["//..."] |
| test_targets: ["//..."] |
| working_directory: gazelle |
| ubuntu: |
| <<: *reusable_config |
| name: Default test on Ubuntu |
| platform: ubuntu2004 |
| debian: |
| <<: *reusable_config |
| name: Default test on Debian |
| platform: debian11 |
| macos: |
| <<: *reusable_config |
| name: Default test on macOS |
| platform: macos |
| windows: |
| <<: *reusable_config |
| name: Default test on Windows |
| platform: windows |
| test_flags: |
| - "--test_tag_filters=-integration-test,-fix-windows" |
| rbe: |
| <<: *reusable_config |
| name: Test on RBE |
| platform: rbe_ubuntu1604 |
| test_flags: |
| - "--test_tag_filters=-integration-test,-acceptance-test" |
| |
| integration_test_build_file_generation_ubuntu: |
| <<: *reusable_build_test_all |
| name: build_file_generation integration tests on Ubuntu |
| working_directory: examples/build_file_generation |
| platform: ubuntu2004 |
| integration_test_build_file_generation_debian: |
| <<: *reusable_build_test_all |
| name: build_file_generation integration tests on Debian |
| working_directory: examples/build_file_generation |
| platform: debian11 |
| integration_test_build_file_generation_macos: |
| <<: *reusable_build_test_all |
| name: build_file_generation integration tests on macOS |
| working_directory: examples/build_file_generation |
| platform: macos |
| integration_test_build_file_generation_windows: |
| <<: *reusable_build_test_all |
| name: build_file_generation integration tests on Windows |
| working_directory: examples/build_file_generation |
| platform: windows |
| |
| integration_test_bzlmod_ubuntu: |
| <<: *reusable_build_test_all |
| <<: *coverage_targets_example_bzlmod |
| name: bzlmod integration tests on Ubuntu |
| working_directory: examples/bzlmod |
| platform: ubuntu2004 |
| integration_test_bzlmod_debian: |
| <<: *reusable_build_test_all |
| <<: *coverage_targets_example_bzlmod |
| name: bzlmod integration tests on Debian |
| working_directory: examples/bzlmod |
| platform: debian11 |
| integration_test_bzlmod_macos: |
| <<: *reusable_build_test_all |
| <<: *coverage_targets_example_bzlmod |
| name: bzlmod integration tests on macOS |
| working_directory: examples/bzlmod |
| platform: macos |
| integration_test_bzlmod_windows: |
| <<: *reusable_build_test_all |
| # coverage is not supported on Windows |
| name: bzlmod integration tests on Windows |
| working_directory: examples/bzlmod |
| platform: windows |
| |
| integration_test_multi_python_versions_ubuntu: |
| <<: *reusable_build_test_all |
| <<: *coverage_targets_example_multi_python |
| name: multi_python_versions integration tests on Ubuntu |
| working_directory: examples/multi_python_versions |
| platform: ubuntu2004 |
| integration_test_multi_python_versions_debian: |
| <<: *reusable_build_test_all |
| <<: *coverage_targets_example_multi_python |
| name: multi_python_versions integration tests on Debian |
| working_directory: examples/multi_python_versions |
| platform: debian11 |
| integration_test_multi_python_versions_macos: |
| <<: *reusable_build_test_all |
| <<: *coverage_targets_example_multi_python |
| name: multi_python_versions integration tests on macOS |
| working_directory: examples/multi_python_versions |
| platform: macos |
| integration_test_multi_python_versions_windows: |
| <<: *reusable_build_test_all |
| # coverage is not supported on Windows |
| name: multi_python_versions integration tests on Windows |
| working_directory: examples/multi_python_versions |
| platform: windows |
| |
| integration_test_pip_install_ubuntu: |
| <<: *reusable_build_test_all |
| name: pip_install integration tests on Ubuntu |
| working_directory: examples/pip_install |
| platform: ubuntu2004 |
| integration_test_pip_install_debian: |
| <<: *reusable_build_test_all |
| name: pip_install integration tests on Debian |
| working_directory: examples/pip_install |
| platform: debian11 |
| integration_test_pip_install_macos: |
| <<: *reusable_build_test_all |
| name: pip_install integration tests on macOS |
| working_directory: examples/pip_install |
| platform: macos |
| integration_test_pip_install_windows: |
| <<: *reusable_build_test_all |
| name: pip_install integration tests on Windows |
| working_directory: examples/pip_install |
| platform: windows |
| |
| integration_test_pip_parse_ubuntu: |
| <<: *reusable_build_test_all |
| name: pip_parse integration tests on Ubuntu |
| working_directory: examples/pip_parse |
| platform: ubuntu2004 |
| integration_test_pip_parse_debian: |
| <<: *reusable_build_test_all |
| name: pip_parse integration tests on Debian |
| working_directory: examples/pip_parse |
| platform: debian11 |
| integration_test_pip_parse_macos: |
| <<: *reusable_build_test_all |
| name: pip_parse integration tests on macOS |
| working_directory: examples/pip_parse |
| platform: macos |
| integration_test_pip_parse_windows: |
| <<: *reusable_build_test_all |
| name: pip_parse integration tests on Windows |
| working_directory: examples/pip_parse |
| platform: windows |
| |
| integration_test_pip_parse_vendored_ubuntu: |
| <<: *reusable_build_test_all |
| name: pip_parse_vendored integration tests on Ubuntu |
| working_directory: examples/pip_parse_vendored |
| platform: ubuntu2004 |
| integration_test_pip_parse_vendored_debian: |
| <<: *reusable_build_test_all |
| name: pip_parse_vendored integration tests on Debian |
| working_directory: examples/pip_parse_vendored |
| platform: debian11 |
| integration_test_pip_parse_vendored_macos: |
| <<: *reusable_build_test_all |
| name: pip_parse_vendored integration tests on macOS |
| working_directory: examples/pip_parse_vendored |
| platform: macos |
| # We don't run pip_parse_vendored under Windows as the file checked in is |
| # generated from a repository rule containing OS-specific rendered paths. |
| |
| integration_test_py_proto_library_ubuntu: |
| <<: *reusable_build_test_all |
| name: py_proto_library integration tests on Ubuntu |
| working_directory: examples/py_proto_library |
| platform: ubuntu2004 |
| integration_test_py_proto_library_debian: |
| <<: *reusable_build_test_all |
| name: py_proto_library integration tests on Debian |
| working_directory: examples/py_proto_library |
| platform: debian11 |
| integration_test_py_proto_library_macos: |
| <<: *reusable_build_test_all |
| name: py_proto_library integration tests on macOS |
| working_directory: examples/py_proto_library |
| platform: macos |
| integration_test_py_proto_library_windows: |
| <<: *reusable_build_test_all |
| name: py_proto_library integration tests on Windows |
| working_directory: examples/py_proto_library |
| platform: windows |
| |
| # Check the same using bzlmod as well |
| integration_test_py_proto_library_bzlmod_ubuntu: |
| <<: *reusable_build_test_all |
| <<: *common_bzlmod_flags |
| name: py_proto_library bzlmod integration tests on Ubuntu |
| working_directory: examples/py_proto_library |
| platform: ubuntu2004 |
| integration_test_py_proto_library_bzlmod_debian: |
| <<: *reusable_build_test_all |
| <<: *common_bzlmod_flags |
| name: py_proto_library bzlmod integration tests on Debian |
| working_directory: examples/py_proto_library |
| platform: debian11 |
| integration_test_py_proto_library_bzlmod_macos: |
| <<: *reusable_build_test_all |
| <<: *common_bzlmod_flags |
| name: py_proto_library bzlmod integration tests on macOS |
| working_directory: examples/py_proto_library |
| platform: macos |
| integration_test_py_proto_library_bzlmod_windows: |
| <<: *reusable_build_test_all |
| <<: *common_bzlmod_flags |
| name: py_proto_library bzlmod integration tests on Windows |
| working_directory: examples/py_proto_library |
| platform: windows |
| |
| integration_test_pip_repository_annotations_ubuntu: |
| <<: *reusable_build_test_all |
| name: pip_repository_annotations integration tests on Ubuntu |
| working_directory: examples/pip_repository_annotations |
| platform: ubuntu2004 |
| integration_test_pip_repository_annotations_debian: |
| <<: *reusable_build_test_all |
| name: pip_repository_annotations integration tests on Debian |
| working_directory: examples/pip_repository_annotations |
| platform: debian11 |
| integration_test_pip_repository_annotations_macos: |
| <<: *reusable_build_test_all |
| name: pip_repository_annotations integration tests on macOS |
| working_directory: examples/pip_repository_annotations |
| platform: macos |
| integration_test_pip_repository_annotations_windows: |
| <<: *reusable_build_test_all |
| name: pip_repository_annotations integration tests on Windows |
| working_directory: examples/pip_repository_annotations |
| platform: windows |
| |
| integration_test_compile_pip_requirements_ubuntu: |
| <<: *reusable_build_test_all |
| name: compile_pip_requirements integration tests on Ubuntu |
| working_directory: tests/compile_pip_requirements |
| platform: ubuntu2004 |
| shell_commands: |
| # Make a change to the locked requirements and then assert that //:requirements.update does the |
| # right thing. |
| - "echo '' > requirements_lock.txt" |
| - "! git diff --exit-code" |
| - "bazel run //:requirements.update" |
| - "git diff --exit-code" |
| integration_test_compile_pip_requirements_debian: |
| <<: *reusable_build_test_all |
| name: compile_pip_requirements integration tests on Debian |
| working_directory: tests/compile_pip_requirements |
| platform: debian11 |
| shell_commands: |
| # Make a change to the locked requirements and then assert that //:requirements.update does the |
| # right thing. |
| - "echo '' > requirements_lock.txt" |
| - "! git diff --exit-code" |
| - "bazel run //:requirements.update" |
| - "git diff --exit-code" |
| integration_test_compile_pip_requirements_macos: |
| <<: *reusable_build_test_all |
| name: compile_pip_requirements integration tests on macOS |
| working_directory: tests/compile_pip_requirements |
| platform: macos |
| shell_commands: |
| # Make a change to the locked requirements and then assert that //:requirements.update does the |
| # right thing. |
| - "echo '' > requirements_lock.txt" |
| - "! git diff --exit-code" |
| - "bazel run //:requirements.update" |
| - "git diff --exit-code" |
| integration_test_compile_pip_requirements_windows: |
| <<: *reusable_build_test_all |
| name: compile_pip_requirements integration tests on Windows |
| working_directory: tests/compile_pip_requirements |
| platform: windows |
| shell_commands: |
| # Make a change to the locked requirements and then assert that //:requirements.update does the |
| # right thing. |
| - "echo '' > requirements_lock.txt" |
| - "! git diff --exit-code" |
| - "bazel run //:requirements.update" |
| - "git diff --exit-code" |
| |
| integration_test_pip_repository_entry_points_ubuntu: |
| <<: *reusable_build_test_all |
| name: pip_repository_entry_points integration tests on Ubuntu |
| working_directory: tests/pip_repository_entry_points |
| platform: ubuntu2004 |
| integration_test_pip_repository_entry_points_debian: |
| <<: *reusable_build_test_all |
| name: pip_repository_entry_points integration tests on Debian |
| working_directory: tests/pip_repository_entry_points |
| platform: debian11 |
| integration_test_pip_repository_entry_points_macos: |
| <<: *reusable_build_test_all |
| name: pip_repository_entry_points integration tests on macOS |
| working_directory: tests/pip_repository_entry_points |
| platform: macos |
| integration_test_pip_repository_entry_points_windows: |
| <<: *reusable_build_test_all |
| name: pip_repository_entry_points integration tests on Windows |
| working_directory: tests/pip_repository_entry_points |
| platform: windows |
| |
| integration_test_ignore_root_user_error_ubuntu: |
| <<: *reusable_build_test_all |
| name: ignore_root_user_error integration tests on Ubuntu |
| working_directory: tests/ignore_root_user_error |
| platform: ubuntu2004 |
| integration_test_ignore_root_user_error_debian: |
| <<: *reusable_build_test_all |
| name: ignore_root_user_error integration tests on Debian |
| working_directory: tests/ignore_root_user_error |
| platform: debian11 |
| integration_test_ignore_root_user_error_macos: |
| <<: *reusable_build_test_all |
| name: ignore_root_user_error integration tests on macOS |
| working_directory: tests/ignore_root_user_error |
| platform: macos |
| integration_test_ignore_root_user_error_windows: |
| <<: *reusable_build_test_all |
| name: ignore_root_user_error integration tests on Windows |
| working_directory: tests/ignore_root_user_error |
| platform: windows |