Jeremy Stanley 85c494e219 build-python-release: pyproject-build by default
The PyPA "build" project is the canonical pyproject (PEP 517) build
frontend, and is necessary in cases where SetupTools-based projects
want to do modern Python packaging standards-compliant builds. The
SetupTools maintainers have long since deprecated direct calls to
setup.py scripts, with this as the preferred solution.

Note that pyproject-build is designed to be backwards-compatible
with old-style SetupTools projects that don't have a pyproject.toml
file, so this should be a safe and transparent change. That said, we
include a failsafe switch to bring back the old behavior just in
case it's needed by some projects for unexpected reasons.

Change-Id: I9b28c97092c32870bf730f5ca6cac966435370bc
2025-01-27 22:35:32 +00:00

27 lines
738 B
ReStructuredText

Build sdist and wheel for Python projects.
**Role Variables**
.. zuul:rolevar:: build_wheel
:default: true
Whether to build a wheel. Set to false to just build an sdist tarball.
.. zuul:rolevar:: legacy_setup
:default: false
By default, the role uses pyproject-build. Set this to true if you need
to use old-style direct invocation of setup.py instead.
.. zuul:rolevar:: release_python
:default: python
The python interpreter to use. Set it to "python3" to use python 3,
for example. Only relevant when legacy_setup is enabled.
.. zuul:rolevar:: bdist_wheel_xargs
:default: ''
Extra arguments to pass to the bdist_wheel command when building
packages. Only relevant when legacy_setup is enabled.