blob: 349708f68e2de462fcbf8cab6a3ef9c33a0bd878 [file] [log] [blame]
---
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/..."
- "-//gazelle/..."
build_flags:
- "--keep_going"
test_targets:
- "--"
- "..."
# The gazelle tests are not compatible with Windows, so we only test them
# on Linux. The build file generation, which uses this Gazelle extension,
# runs on all platforms, and is asserted by the build_file_generation
# integration tests below.
- "-//gazelle/..."
test_flags:
- "--test_tag_filters=-integration-test"
.reusable_build_test_all: &reusable_build_test_all
build_targets: ["..."]
test_targets: ["..."]
tasks:
gazelle_extension:
name: Test the Gazelle extension
platform: ubuntu2004
build_targets: ["//gazelle/..."]
test_targets: ["//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
name: bzlmod integration tests on Ubuntu
working_directory: examples/bzlmod
platform: ubuntu2004
integration_test_bzlmod_debian:
<<: *reusable_build_test_all
name: bzlmod integration tests on Debian
working_directory: examples/bzlmod
platform: debian11
integration_test_bzlmod_macos:
<<: *reusable_build_test_all
name: bzlmod integration tests on macOS
working_directory: examples/bzlmod
platform: macos
integration_test_bzlmod_windows:
<<: *reusable_build_test_all
name: bzlmod integration tests on Windows
working_directory: examples/bzlmod
platform: windows
integration_test_multi_python_versions_ubuntu:
<<: *reusable_build_test_all
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
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
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
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
# TODO(f0rmiga): fix this test under Windows. It needs to be consistent on
# characters across all platforms.
# integration_test_pip_parse_vendored_windows:
# <<: *reusable_build_test_all
# name: pip_parse_vendored integration tests on Windows
# working_directory: examples/pip_parse_vendored
# 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
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
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
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
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
# TODO(f0rmiga): fix me. The dependencies needed for this test are not cross-platform:
# https://github.com/bazelbuild/rules_python/issues/260
# 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