diff --git a/infra/config/recipes.cfg b/infra/config/recipes.cfg index e717b9c96..6a79bbaeb 100644 --- a/infra/config/recipes.cfg +++ b/infra/config/recipes.cfg @@ -17,7 +17,7 @@ "deps": { "recipe_engine": { "branch": "refs/heads/main", - "revision": "eb434718b27659fb36792b710cf2b80b8d85aa0b", + "revision": "c406446548974dc887dac0a676838e08e09b526a", "url": "https://chromium.googlesource.com/infra/luci/recipes-py.git" } }, diff --git a/recipes/README.recipes.md b/recipes/README.recipes.md index 28f5c218a..a99a82938 100644 --- a/recipes/README.recipes.md +++ b/recipes/README.recipes.md @@ -1212,26 +1212,26 @@ Move things around in a loop! — **def [RunSteps](/recipes/recipe_modules/windows_sdk/examples/full.py#16)(api):** -[recipe_engine/recipe_modules/archive]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/eb434718b27659fb36792b710cf2b80b8d85aa0b/README.recipes.md#recipe_modules-archive -[recipe_engine/recipe_modules/assertions]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/eb434718b27659fb36792b710cf2b80b8d85aa0b/README.recipes.md#recipe_modules-assertions -[recipe_engine/recipe_modules/buildbucket]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/eb434718b27659fb36792b710cf2b80b8d85aa0b/README.recipes.md#recipe_modules-buildbucket -[recipe_engine/recipe_modules/cipd]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/eb434718b27659fb36792b710cf2b80b8d85aa0b/README.recipes.md#recipe_modules-cipd -[recipe_engine/recipe_modules/commit_position]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/eb434718b27659fb36792b710cf2b80b8d85aa0b/README.recipes.md#recipe_modules-commit_position -[recipe_engine/recipe_modules/context]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/eb434718b27659fb36792b710cf2b80b8d85aa0b/README.recipes.md#recipe_modules-context -[recipe_engine/recipe_modules/cq]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/eb434718b27659fb36792b710cf2b80b8d85aa0b/README.recipes.md#recipe_modules-cq -[recipe_engine/recipe_modules/cv]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/eb434718b27659fb36792b710cf2b80b8d85aa0b/README.recipes.md#recipe_modules-cv -[recipe_engine/recipe_modules/file]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/eb434718b27659fb36792b710cf2b80b8d85aa0b/README.recipes.md#recipe_modules-file -[recipe_engine/recipe_modules/json]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/eb434718b27659fb36792b710cf2b80b8d85aa0b/README.recipes.md#recipe_modules-json -[recipe_engine/recipe_modules/led]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/eb434718b27659fb36792b710cf2b80b8d85aa0b/README.recipes.md#recipe_modules-led -[recipe_engine/recipe_modules/milo]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/eb434718b27659fb36792b710cf2b80b8d85aa0b/README.recipes.md#recipe_modules-milo -[recipe_engine/recipe_modules/path]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/eb434718b27659fb36792b710cf2b80b8d85aa0b/README.recipes.md#recipe_modules-path -[recipe_engine/recipe_modules/platform]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/eb434718b27659fb36792b710cf2b80b8d85aa0b/README.recipes.md#recipe_modules-platform -[recipe_engine/recipe_modules/properties]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/eb434718b27659fb36792b710cf2b80b8d85aa0b/README.recipes.md#recipe_modules-properties -[recipe_engine/recipe_modules/raw_io]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/eb434718b27659fb36792b710cf2b80b8d85aa0b/README.recipes.md#recipe_modules-raw_io -[recipe_engine/recipe_modules/resultdb]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/eb434718b27659fb36792b710cf2b80b8d85aa0b/README.recipes.md#recipe_modules-resultdb -[recipe_engine/recipe_modules/runtime]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/eb434718b27659fb36792b710cf2b80b8d85aa0b/README.recipes.md#recipe_modules-runtime -[recipe_engine/recipe_modules/step]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/eb434718b27659fb36792b710cf2b80b8d85aa0b/README.recipes.md#recipe_modules-step -[recipe_engine/recipe_modules/time]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/eb434718b27659fb36792b710cf2b80b8d85aa0b/README.recipes.md#recipe_modules-time -[recipe_engine/recipe_modules/url]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/eb434718b27659fb36792b710cf2b80b8d85aa0b/README.recipes.md#recipe_modules-url -[recipe_engine/recipe_modules/version]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/eb434718b27659fb36792b710cf2b80b8d85aa0b/README.recipes.md#recipe_modules-version -[recipe_engine/wkt/RecipeApi]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/eb434718b27659fb36792b710cf2b80b8d85aa0b/recipe_engine/recipe_api.py#433 +[recipe_engine/recipe_modules/archive]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/c406446548974dc887dac0a676838e08e09b526a/README.recipes.md#recipe_modules-archive +[recipe_engine/recipe_modules/assertions]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/c406446548974dc887dac0a676838e08e09b526a/README.recipes.md#recipe_modules-assertions +[recipe_engine/recipe_modules/buildbucket]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/c406446548974dc887dac0a676838e08e09b526a/README.recipes.md#recipe_modules-buildbucket +[recipe_engine/recipe_modules/cipd]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/c406446548974dc887dac0a676838e08e09b526a/README.recipes.md#recipe_modules-cipd +[recipe_engine/recipe_modules/commit_position]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/c406446548974dc887dac0a676838e08e09b526a/README.recipes.md#recipe_modules-commit_position +[recipe_engine/recipe_modules/context]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/c406446548974dc887dac0a676838e08e09b526a/README.recipes.md#recipe_modules-context +[recipe_engine/recipe_modules/cq]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/c406446548974dc887dac0a676838e08e09b526a/README.recipes.md#recipe_modules-cq +[recipe_engine/recipe_modules/cv]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/c406446548974dc887dac0a676838e08e09b526a/README.recipes.md#recipe_modules-cv +[recipe_engine/recipe_modules/file]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/c406446548974dc887dac0a676838e08e09b526a/README.recipes.md#recipe_modules-file +[recipe_engine/recipe_modules/json]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/c406446548974dc887dac0a676838e08e09b526a/README.recipes.md#recipe_modules-json +[recipe_engine/recipe_modules/led]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/c406446548974dc887dac0a676838e08e09b526a/README.recipes.md#recipe_modules-led +[recipe_engine/recipe_modules/milo]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/c406446548974dc887dac0a676838e08e09b526a/README.recipes.md#recipe_modules-milo +[recipe_engine/recipe_modules/path]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/c406446548974dc887dac0a676838e08e09b526a/README.recipes.md#recipe_modules-path +[recipe_engine/recipe_modules/platform]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/c406446548974dc887dac0a676838e08e09b526a/README.recipes.md#recipe_modules-platform +[recipe_engine/recipe_modules/properties]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/c406446548974dc887dac0a676838e08e09b526a/README.recipes.md#recipe_modules-properties +[recipe_engine/recipe_modules/raw_io]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/c406446548974dc887dac0a676838e08e09b526a/README.recipes.md#recipe_modules-raw_io +[recipe_engine/recipe_modules/resultdb]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/c406446548974dc887dac0a676838e08e09b526a/README.recipes.md#recipe_modules-resultdb +[recipe_engine/recipe_modules/runtime]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/c406446548974dc887dac0a676838e08e09b526a/README.recipes.md#recipe_modules-runtime +[recipe_engine/recipe_modules/step]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/c406446548974dc887dac0a676838e08e09b526a/README.recipes.md#recipe_modules-step +[recipe_engine/recipe_modules/time]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/c406446548974dc887dac0a676838e08e09b526a/README.recipes.md#recipe_modules-time +[recipe_engine/recipe_modules/url]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/c406446548974dc887dac0a676838e08e09b526a/README.recipes.md#recipe_modules-url +[recipe_engine/recipe_modules/version]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/c406446548974dc887dac0a676838e08e09b526a/README.recipes.md#recipe_modules-version +[recipe_engine/wkt/RecipeApi]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/c406446548974dc887dac0a676838e08e09b526a/recipe_engine/recipe_api.py#433 diff --git a/recipes/recipes.py b/recipes/recipes.py index 05ca94164..c6ef83add 100755 --- a/recipes/recipes.py +++ b/recipes/recipes.py @@ -235,13 +235,10 @@ def main(): if not shutil.which(vpython): return f'Required binary is not found on PATH: {vpython}' - # We unset PYTHONPATH here in case the user has conflicting environmental - # things we don't want them to leak through into the recipe_engine which - # manages its environment entirely via vpython. - # - # NOTE: os.unsetenv unhelpfully doesn't exist on all platforms until python3.9 - # so we have to use the cutesy `pop` formulation below until then... - os.environ.pop("PYTHONPATH", None) + # We overwrite PYTHONPATH here on purpose; We don't want any conflicting + # environmental path leaking through into the recipe_engine which manages its + # environment entirely via vpython. + os.environ['PYTHONPATH'] = engine_path spec = '.vpython3' debugger = os.environ.get('RECIPE_DEBUGGER', '')