diff options
| author | Anderson Bravalheri <andersonbravalheri@gmail.com> | 2022-02-09 16:27:53 +0000 |
|---|---|---|
| committer | Anderson Bravalheri <andersonbravalheri@gmail.com> | 2022-03-05 09:58:49 +0000 |
| commit | 74c73411b24a32a8d030f4339ff8a96c3d26d6fc (patch) | |
| tree | 7e6f988f4ded4e4ee1079b3066442f3ad7024e78 /tools | |
| parent | e0d61d45eaf94b55a57a68c6cd65b3e508aee5a9 (diff) | |
| download | python-setuptools-git-74c73411b24a32a8d030f4339ff8a96c3d26d6fc.tar.gz | |
Improve custom vendoring logic for validate-pyproject
Co-authored-by: Sviatoslav Sydorenko <wk.cvs.github@sydorenko.org.ua>
Diffstat (limited to 'tools')
| -rw-r--r-- | tools/vendored.py | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/tools/vendored.py b/tools/vendored.py index 53185437..83ab200f 100644 --- a/tools/vendored.py +++ b/tools/vendored.py @@ -1,7 +1,5 @@ -import os import re import sys -import shutil import string import subprocess import venv @@ -156,16 +154,17 @@ def install_validate_pyproject(vendor): opts["ignore_cleanup_errors"] = True with TemporaryDirectory(**opts) as tmp: - venv.create(tmp, with_pip=True) - path = os.pathsep.join(Path(tmp).glob("*")) - venv_python = shutil.which("python", path=path) + env_builder = venv.EnvBuilder(with_pip=True) + env_builder.create(tmp) + context = env_builder.ensure_directories(tmp) + venv_python = getattr(context, 'env_exec_cmd', context.env_exe) + subprocess.check_call([venv_python, "-m", "pip", "install", pkg]) cmd = [ venv_python, "-m", "validate_pyproject.vendoring", - "--output-dir", - str(vendor / "_validate_pyproject"), + f"--output-dir={vendor / '_validate_pyproject' !s}", "--enable-plugins", "setuptools", "distutils", |
