recipe: use python3 only This follows http://go/luci/migrations/recipe_py3 Bug: chromium:1393261 Change-Id: Ia8dfe6931c7ac93deab4772462338b599d22c2d2 Reviewed-on: https://gn-review.googlesource.com/c/gn/+/14900 Commit-Queue: Takuto Ikuta <tikuta@google.com> Reviewed-by: Petr Hosek <phosek@google.com>
diff --git a/infra/README.recipes.md b/infra/README.recipes.md index 731d098..0196775 100644 --- a/infra/README.recipes.md +++ b/infra/README.recipes.md
@@ -16,7 +16,7 @@ ### *recipe_modules* / [macos\_sdk](/infra/recipe_modules/macos_sdk) -[DEPS](/infra/recipe_modules/macos_sdk/__init__.py#7): [recipe\_engine/cipd][recipe_engine/recipe_modules/cipd], [recipe\_engine/context][recipe_engine/recipe_modules/context], [recipe\_engine/json][recipe_engine/recipe_modules/json], [recipe\_engine/path][recipe_engine/recipe_modules/path], [recipe\_engine/platform][recipe_engine/recipe_modules/platform], [recipe\_engine/step][recipe_engine/recipe_modules/step] +[DEPS](/infra/recipe_modules/macos_sdk/__init__.py#5): [recipe\_engine/cipd][recipe_engine/recipe_modules/cipd], [recipe\_engine/context][recipe_engine/recipe_modules/context], [recipe\_engine/json][recipe_engine/recipe_modules/json], [recipe\_engine/path][recipe_engine/recipe_modules/path], [recipe\_engine/platform][recipe_engine/recipe_modules/platform], [recipe\_engine/step][recipe_engine/recipe_modules/step] PYTHON_VERSION_COMPATIBILITY: PY3 @@ -66,7 +66,7 @@   **@property**<br>— **def [sdk\_dir](/infra/recipe_modules/macos_sdk/api.py#25)(self):** ### *recipe_modules* / [target](/infra/recipe_modules/target) -[DEPS](/infra/recipe_modules/target/__init__.py#7): [recipe\_engine/platform][recipe_engine/recipe_modules/platform] +[DEPS](/infra/recipe_modules/target/__init__.py#5): [recipe\_engine/platform][recipe_engine/recipe_modules/platform] PYTHON_VERSION_COMPATIBILITY: PY3 @@ -75,7 +75,7 @@   **@property**<br>— **def [host](/infra/recipe_modules/target/api.py#87)(self):** ### *recipe_modules* / [windows\_sdk](/infra/recipe_modules/windows_sdk) -[DEPS](/infra/recipe_modules/windows_sdk/__init__.py#7): [recipe\_engine/cipd][recipe_engine/recipe_modules/cipd], [recipe\_engine/context][recipe_engine/recipe_modules/context], [recipe\_engine/json][recipe_engine/recipe_modules/json], [recipe\_engine/path][recipe_engine/recipe_modules/path], [recipe\_engine/platform][recipe_engine/recipe_modules/platform], [recipe\_engine/step][recipe_engine/recipe_modules/step] +[DEPS](/infra/recipe_modules/windows_sdk/__init__.py#5): [recipe\_engine/cipd][recipe_engine/recipe_modules/cipd], [recipe\_engine/context][recipe_engine/recipe_modules/context], [recipe\_engine/json][recipe_engine/recipe_modules/json], [recipe\_engine/path][recipe_engine/recipe_modules/path], [recipe\_engine/platform][recipe_engine/recipe_modules/platform], [recipe\_engine/step][recipe_engine/recipe_modules/step] PYTHON_VERSION_COMPATIBILITY: PY3 @@ -95,45 +95,44 @@ ### *recipes* / [gn](/infra/recipes/gn.py) -[DEPS](/infra/recipes/gn.py#10): [macos\_sdk](#recipe_modules-macos_sdk), [target](#recipe_modules-target), [windows\_sdk](#recipe_modules-windows_sdk), [recipe\_engine/buildbucket][recipe_engine/recipe_modules/buildbucket], [recipe\_engine/cas][recipe_engine/recipe_modules/cas], [recipe\_engine/cipd][recipe_engine/recipe_modules/cipd], [recipe\_engine/context][recipe_engine/recipe_modules/context], [recipe\_engine/file][recipe_engine/recipe_modules/file], [recipe\_engine/json][recipe_engine/recipe_modules/json], [recipe\_engine/path][recipe_engine/recipe_modules/path], [recipe\_engine/platform][recipe_engine/recipe_modules/platform], [recipe\_engine/properties][recipe_engine/recipe_modules/properties], [recipe\_engine/python][recipe_engine/recipe_modules/python], [recipe\_engine/raw\_io][recipe_engine/recipe_modules/raw_io], [recipe\_engine/step][recipe_engine/recipe_modules/step] +[DEPS](/infra/recipes/gn.py#8): [macos\_sdk](#recipe_modules-macos_sdk), [target](#recipe_modules-target), [windows\_sdk](#recipe_modules-windows_sdk), [recipe\_engine/buildbucket][recipe_engine/recipe_modules/buildbucket], [recipe\_engine/cas][recipe_engine/recipe_modules/cas], [recipe\_engine/cipd][recipe_engine/recipe_modules/cipd], [recipe\_engine/context][recipe_engine/recipe_modules/context], [recipe\_engine/file][recipe_engine/recipe_modules/file], [recipe\_engine/json][recipe_engine/recipe_modules/json], [recipe\_engine/path][recipe_engine/recipe_modules/path], [recipe\_engine/platform][recipe_engine/recipe_modules/platform], [recipe\_engine/properties][recipe_engine/recipe_modules/properties], [recipe\_engine/raw\_io][recipe_engine/recipe_modules/raw_io], [recipe\_engine/step][recipe_engine/recipe_modules/step] PYTHON_VERSION_COMPATIBILITY: PY3 Recipe for building GN. -— **def [RunSteps](/infra/recipes/gn.py#106)(api, repository):** +— **def [RunSteps](/infra/recipes/gn.py#103)(api, repository):** ### *recipes* / [macos\_sdk:examples/full](/infra/recipe_modules/macos_sdk/examples/full.py) -[DEPS](/infra/recipe_modules/macos_sdk/examples/full.py#7): [macos\_sdk](#recipe_modules-macos_sdk), [recipe\_engine/platform][recipe_engine/recipe_modules/platform], [recipe\_engine/properties][recipe_engine/recipe_modules/properties], [recipe\_engine/step][recipe_engine/recipe_modules/step] +[DEPS](/infra/recipe_modules/macos_sdk/examples/full.py#5): [macos\_sdk](#recipe_modules-macos_sdk), [recipe\_engine/platform][recipe_engine/recipe_modules/platform], [recipe\_engine/properties][recipe_engine/recipe_modules/properties], [recipe\_engine/step][recipe_engine/recipe_modules/step] PYTHON_VERSION_COMPATIBILITY: PY3 -— **def [RunSteps](/infra/recipe_modules/macos_sdk/examples/full.py#15)(api):** +— **def [RunSteps](/infra/recipe_modules/macos_sdk/examples/full.py#13)(api):** ### *recipes* / [target:examples/full](/infra/recipe_modules/target/examples/full.py) -[DEPS](/infra/recipe_modules/target/examples/full.py#7): [target](#recipe_modules-target), [recipe\_engine/platform][recipe_engine/recipe_modules/platform], [recipe\_engine/properties][recipe_engine/recipe_modules/properties], [recipe\_engine/step][recipe_engine/recipe_modules/step] +[DEPS](/infra/recipe_modules/target/examples/full.py#5): [target](#recipe_modules-target), [recipe\_engine/platform][recipe_engine/recipe_modules/platform], [recipe\_engine/properties][recipe_engine/recipe_modules/properties], [recipe\_engine/step][recipe_engine/recipe_modules/step] PYTHON_VERSION_COMPATIBILITY: PY3 -— **def [RunSteps](/infra/recipe_modules/target/examples/full.py#15)(api):** +— **def [RunSteps](/infra/recipe_modules/target/examples/full.py#13)(api):** ### *recipes* / [windows\_sdk:examples/full](/infra/recipe_modules/windows_sdk/examples/full.py) -[DEPS](/infra/recipe_modules/windows_sdk/examples/full.py#7): [windows\_sdk](#recipe_modules-windows_sdk), [recipe\_engine/platform][recipe_engine/recipe_modules/platform], [recipe\_engine/properties][recipe_engine/recipe_modules/properties], [recipe\_engine/step][recipe_engine/recipe_modules/step] +[DEPS](/infra/recipe_modules/windows_sdk/examples/full.py#5): [windows\_sdk](#recipe_modules-windows_sdk), [recipe\_engine/platform][recipe_engine/recipe_modules/platform], [recipe\_engine/properties][recipe_engine/recipe_modules/properties], [recipe\_engine/step][recipe_engine/recipe_modules/step] PYTHON_VERSION_COMPATIBILITY: PY3 -— **def [RunSteps](/infra/recipe_modules/windows_sdk/examples/full.py#15)(api):** +— **def [RunSteps](/infra/recipe_modules/windows_sdk/examples/full.py#13)(api):** -[recipe_engine/recipe_modules/buildbucket]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/1b1ecd03e0b00399784c43add1465f685b6d1ab9/README.recipes.md#recipe_modules-buildbucket -[recipe_engine/recipe_modules/cas]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/1b1ecd03e0b00399784c43add1465f685b6d1ab9/README.recipes.md#recipe_modules-cas -[recipe_engine/recipe_modules/cipd]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/1b1ecd03e0b00399784c43add1465f685b6d1ab9/README.recipes.md#recipe_modules-cipd -[recipe_engine/recipe_modules/context]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/1b1ecd03e0b00399784c43add1465f685b6d1ab9/README.recipes.md#recipe_modules-context -[recipe_engine/recipe_modules/file]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/1b1ecd03e0b00399784c43add1465f685b6d1ab9/README.recipes.md#recipe_modules-file -[recipe_engine/recipe_modules/json]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/1b1ecd03e0b00399784c43add1465f685b6d1ab9/README.recipes.md#recipe_modules-json -[recipe_engine/recipe_modules/path]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/1b1ecd03e0b00399784c43add1465f685b6d1ab9/README.recipes.md#recipe_modules-path -[recipe_engine/recipe_modules/platform]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/1b1ecd03e0b00399784c43add1465f685b6d1ab9/README.recipes.md#recipe_modules-platform -[recipe_engine/recipe_modules/properties]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/1b1ecd03e0b00399784c43add1465f685b6d1ab9/README.recipes.md#recipe_modules-properties -[recipe_engine/recipe_modules/python]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/1b1ecd03e0b00399784c43add1465f685b6d1ab9/README.recipes.md#recipe_modules-python -[recipe_engine/recipe_modules/raw_io]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/1b1ecd03e0b00399784c43add1465f685b6d1ab9/README.recipes.md#recipe_modules-raw_io -[recipe_engine/recipe_modules/step]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/1b1ecd03e0b00399784c43add1465f685b6d1ab9/README.recipes.md#recipe_modules-step -[recipe_engine/wkt/RecipeApi]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/1b1ecd03e0b00399784c43add1465f685b6d1ab9/recipe_engine/recipe_api.py#883 +[recipe_engine/recipe_modules/buildbucket]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/ff5ce51ceaaa7a62275bb766831a3ce1e88de37d/README.recipes.md#recipe_modules-buildbucket +[recipe_engine/recipe_modules/cas]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/ff5ce51ceaaa7a62275bb766831a3ce1e88de37d/README.recipes.md#recipe_modules-cas +[recipe_engine/recipe_modules/cipd]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/ff5ce51ceaaa7a62275bb766831a3ce1e88de37d/README.recipes.md#recipe_modules-cipd +[recipe_engine/recipe_modules/context]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/ff5ce51ceaaa7a62275bb766831a3ce1e88de37d/README.recipes.md#recipe_modules-context +[recipe_engine/recipe_modules/file]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/ff5ce51ceaaa7a62275bb766831a3ce1e88de37d/README.recipes.md#recipe_modules-file +[recipe_engine/recipe_modules/json]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/ff5ce51ceaaa7a62275bb766831a3ce1e88de37d/README.recipes.md#recipe_modules-json +[recipe_engine/recipe_modules/path]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/ff5ce51ceaaa7a62275bb766831a3ce1e88de37d/README.recipes.md#recipe_modules-path +[recipe_engine/recipe_modules/platform]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/ff5ce51ceaaa7a62275bb766831a3ce1e88de37d/README.recipes.md#recipe_modules-platform +[recipe_engine/recipe_modules/properties]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/ff5ce51ceaaa7a62275bb766831a3ce1e88de37d/README.recipes.md#recipe_modules-properties +[recipe_engine/recipe_modules/raw_io]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/ff5ce51ceaaa7a62275bb766831a3ce1e88de37d/README.recipes.md#recipe_modules-raw_io +[recipe_engine/recipe_modules/step]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/ff5ce51ceaaa7a62275bb766831a3ce1e88de37d/README.recipes.md#recipe_modules-step +[recipe_engine/wkt/RecipeApi]: https://chromium.googlesource.com/infra/luci/recipes-py.git/+/ff5ce51ceaaa7a62275bb766831a3ce1e88de37d/recipe_engine/recipe_api.py#886
diff --git a/infra/config/recipes.cfg b/infra/config/recipes.cfg index 39bf9ac..da25624 100644 --- a/infra/config/recipes.cfg +++ b/infra/config/recipes.cfg
@@ -3,10 +3,11 @@ "deps": { "recipe_engine": { "branch": "refs/heads/main", - "revision": "e662254992ccd69a1089660b5de6048fe1811550", + "revision": "ff5ce51ceaaa7a62275bb766831a3ce1e88de37d", "url": "https://chromium.googlesource.com/infra/luci/recipes-py" } }, "project_id": "gn", + "py3_only": true, "recipes_path": "infra" }
diff --git a/infra/recipe_modules/macos_sdk/__init__.py b/infra/recipe_modules/macos_sdk/__init__.py index 44a4456..56b6a94 100644 --- a/infra/recipe_modules/macos_sdk/__init__.py +++ b/infra/recipe_modules/macos_sdk/__init__.py
@@ -2,8 +2,6 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -PYTHON_VERSION_COMPATIBILITY = 'PY3' - DEPS = [ 'recipe_engine/cipd', 'recipe_engine/context',
diff --git a/infra/recipe_modules/macos_sdk/examples/full.py b/infra/recipe_modules/macos_sdk/examples/full.py index 29014fc..a3348ab 100644 --- a/infra/recipe_modules/macos_sdk/examples/full.py +++ b/infra/recipe_modules/macos_sdk/examples/full.py
@@ -2,8 +2,6 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -PYTHON_VERSION_COMPATIBILITY = 'PY3' - DEPS = [ 'macos_sdk', 'recipe_engine/platform',
diff --git a/infra/recipe_modules/target/__init__.py b/infra/recipe_modules/target/__init__.py index e85b812..1239fd2 100644 --- a/infra/recipe_modules/target/__init__.py +++ b/infra/recipe_modules/target/__init__.py
@@ -2,8 +2,6 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -PYTHON_VERSION_COMPATIBILITY = 'PY3' - DEPS = [ 'recipe_engine/platform', ]
diff --git a/infra/recipe_modules/target/examples/full.py b/infra/recipe_modules/target/examples/full.py index 68af2ec..c47c86a 100644 --- a/infra/recipe_modules/target/examples/full.py +++ b/infra/recipe_modules/target/examples/full.py
@@ -2,8 +2,6 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -PYTHON_VERSION_COMPATIBILITY = 'PY3' - DEPS = [ 'target', 'recipe_engine/platform',
diff --git a/infra/recipe_modules/windows_sdk/__init__.py b/infra/recipe_modules/windows_sdk/__init__.py index 031697b..83323a8 100644 --- a/infra/recipe_modules/windows_sdk/__init__.py +++ b/infra/recipe_modules/windows_sdk/__init__.py
@@ -2,8 +2,6 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -PYTHON_VERSION_COMPATIBILITY = 'PY3' - DEPS = [ 'recipe_engine/cipd', 'recipe_engine/context',
diff --git a/infra/recipe_modules/windows_sdk/examples/full.expected/win.json b/infra/recipe_modules/windows_sdk/examples/full.expected/win.json index f6c937f..f45cd83 100644 --- a/infra/recipe_modules/windows_sdk/examples/full.expected/win.json +++ b/infra/recipe_modules/windows_sdk/examples/full.expected/win.json
@@ -30,9 +30,9 @@ }, { "cmd": [ - "python", + "python3", "-u", - "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n", + "RECIPE_MODULE[recipe_engine::json]\\resources\\read.py", "[CACHE]\\windows_sdk\\win_sdk\\bin\\SetEnv.x64.json", "/path/to/tmp/json" ],
diff --git a/infra/recipe_modules/windows_sdk/examples/full.py b/infra/recipe_modules/windows_sdk/examples/full.py index 687f2e7..902c491 100644 --- a/infra/recipe_modules/windows_sdk/examples/full.py +++ b/infra/recipe_modules/windows_sdk/examples/full.py
@@ -2,8 +2,6 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -PYTHON_VERSION_COMPATIBILITY = 'PY3' - DEPS = [ 'windows_sdk', 'recipe_engine/platform',
diff --git a/infra/recipes.py b/infra/recipes.py index 81b0bc6..7c534c2 100755 --- a/infra/recipes.py +++ b/infra/recipes.py
@@ -70,9 +70,12 @@ recipes_path (str) - native path to where the recipes live inside of the current repo (i.e. the folder containing `recipes/` and/or `recipe_modules`) + py3_only (bool) - True if this repo has been marked as ONLY supporting + python3. """ with open(recipes_cfg_path, 'r') as fh: pb = json.load(fh) + py3_only = pb.get('py3_only', False) try: if pb['api_version'] != 2: @@ -85,7 +88,7 @@ if not repo_name: repo_name = pb['project_id'] if repo_name == 'recipe_engine': - return None, pb.get('recipes_path', '') + return None, pb.get('recipes_path', ''), py3_only engine = pb['deps']['recipe_engine'] @@ -104,7 +107,7 @@ recipes_path = os.path.join(repo_root, recipes_path.replace('/', os.path.sep)) - return EngineDep(**engine), recipes_path + return EngineDep(**engine), recipes_path, py3_only except KeyError as ex: raise MalformedRecipesCfg(str(ex), recipes_cfg_path) @@ -113,11 +116,8 @@ _BAT = '.bat' if IS_WIN else '' GIT = 'git' + _BAT -VPYTHON = ('vpython' + - ('3' if os.getenv('RECIPES_USE_PY3') == 'true' else '') + - _BAT) CIPD = 'cipd' + _BAT -REQUIRED_BINARIES = {GIT, VPYTHON, CIPD} +REQUIRED_BINARIES = {GIT, CIPD} def _is_executable(path): @@ -169,10 +169,14 @@ def checkout_engine(engine_path, repo_root, recipes_cfg_path): - dep, recipes_path = parse(repo_root, recipes_cfg_path) + """Checks out the recipe_engine repo pinned in recipes.cfg. + + Returns the path to the recipe engine repo and the py3_only boolean. + """ + dep, recipes_path, py3_only = parse(repo_root, recipes_cfg_path) if dep is None: # we're running from the engine repo already! - return os.path.join(repo_root, recipes_path) + return os.path.join(repo_root, recipes_path), py3_only url = dep.url @@ -217,7 +221,7 @@ # or things will get squirrely. _git_check_call(['clean', '-qxf'], cwd=engine_path) - return engine_path + return engine_path, py3_only def main(): @@ -243,11 +247,16 @@ repo_root = os.path.abspath(repo_root).decode() recipes_cfg_path = os.path.join(repo_root, 'infra', 'config', 'recipes.cfg') args = ['--package', recipes_cfg_path] + args - engine_path = checkout_engine(engine_override, repo_root, recipes_cfg_path) + engine_path, py3_only = checkout_engine(engine_override, repo_root, recipes_cfg_path) - argv = ( - [VPYTHON, '-u', - os.path.join(engine_path, 'recipe_engine', 'main.py')] + args) + using_py3 = py3_only or os.getenv('RECIPES_USE_PY3') == 'true' + vpython = ('vpython' + ('3' if using_py3 else '') + _BAT) + if not _is_on_path(vpython): + return 'Required binary is not found on PATH: %s' % vpython + + argv = ([ + vpython, '-u', os.path.join(engine_path, 'recipe_engine', 'main.py'), + ] + args) if IS_WIN: # No real 'exec' on windows; set these signals to ignore so that they
diff --git a/infra/recipes/gn.expected/ci_linux.json b/infra/recipes/gn.expected/ci_linux.json index a7001a6..5c09522 100644 --- a/infra/recipes/gn.expected/ci_linux.json +++ b/infra/recipes/gn.expected/ci_linux.json
@@ -236,7 +236,7 @@ }, { "cmd": [ - "vpython", + "vpython3", "-u", "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", "--json-output", @@ -267,7 +267,7 @@ }, { "cmd": [ - "vpython", + "vpython3", "-u", "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", "--json-output", @@ -305,7 +305,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/rpmalloc/configure.py", "-c", @@ -378,7 +378,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/rpmalloc/configure.py", "-c", @@ -455,7 +455,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/gn/build/gen.py", "-d" @@ -558,7 +558,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/gn/build/gen.py", "--use-lto", @@ -711,7 +711,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/gn/build/gen.py", "--use-lto",
diff --git a/infra/recipes/gn.expected/ci_mac.json b/infra/recipes/gn.expected/ci_mac.json index 26af61d..66274f8 100644 --- a/infra/recipes/gn.expected/ci_mac.json +++ b/infra/recipes/gn.expected/ci_mac.json
@@ -305,7 +305,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/gn/build/gen.py", "-d" @@ -462,7 +462,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/gn/build/gen.py", "--use-lto", @@ -668,7 +668,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/gn/build/gen.py", "--use-lto",
diff --git a/infra/recipes/gn.expected/ci_win.json b/infra/recipes/gn.expected/ci_win.json index e1a74d6..11534b5 100644 --- a/infra/recipes/gn.expected/ci_win.json +++ b/infra/recipes/gn.expected/ci_win.json
@@ -188,9 +188,9 @@ }, { "cmd": [ - "python", + "python3", "-u", - "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n", + "RECIPE_MODULE[recipe_engine::json]\\resources\\read.py", "[CACHE]\\windows_sdk\\win_sdk\\bin\\SetEnv.x64.json", "/path/to/tmp/json" ], @@ -243,7 +243,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]\\gn\\build\\gen.py", "-d" @@ -349,7 +349,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]\\gn\\build\\gen.py", "--use-lto",
diff --git a/infra/recipes/gn.expected/cipd_exists.json b/infra/recipes/gn.expected/cipd_exists.json index 6094333..c2a1553 100644 --- a/infra/recipes/gn.expected/cipd_exists.json +++ b/infra/recipes/gn.expected/cipd_exists.json
@@ -236,7 +236,7 @@ }, { "cmd": [ - "vpython", + "vpython3", "-u", "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", "--json-output", @@ -267,7 +267,7 @@ }, { "cmd": [ - "vpython", + "vpython3", "-u", "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", "--json-output", @@ -305,7 +305,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/rpmalloc/configure.py", "-c", @@ -378,7 +378,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/rpmalloc/configure.py", "-c", @@ -455,7 +455,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/gn/build/gen.py", "-d" @@ -558,7 +558,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/gn/build/gen.py", "--use-lto", @@ -762,7 +762,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/gn/build/gen.py", "--use-lto",
diff --git a/infra/recipes/gn.expected/cipd_register.json b/infra/recipes/gn.expected/cipd_register.json index 9420990..b877dc1 100644 --- a/infra/recipes/gn.expected/cipd_register.json +++ b/infra/recipes/gn.expected/cipd_register.json
@@ -236,7 +236,7 @@ }, { "cmd": [ - "vpython", + "vpython3", "-u", "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", "--json-output", @@ -267,7 +267,7 @@ }, { "cmd": [ - "vpython", + "vpython3", "-u", "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", "--json-output", @@ -305,7 +305,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/rpmalloc/configure.py", "-c", @@ -378,7 +378,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/rpmalloc/configure.py", "-c", @@ -455,7 +455,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/gn/build/gen.py", "-d" @@ -558,7 +558,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/gn/build/gen.py", "--use-lto", @@ -797,7 +797,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/gn/build/gen.py", "--use-lto",
diff --git a/infra/recipes/gn.expected/cq_linux.json b/infra/recipes/gn.expected/cq_linux.json index 9f6943e..9bbd7d3 100644 --- a/infra/recipes/gn.expected/cq_linux.json +++ b/infra/recipes/gn.expected/cq_linux.json
@@ -287,7 +287,7 @@ }, { "cmd": [ - "vpython", + "vpython3", "-u", "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", "--json-output", @@ -318,7 +318,7 @@ }, { "cmd": [ - "vpython", + "vpython3", "-u", "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", "--json-output", @@ -356,7 +356,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/rpmalloc/configure.py", "-c", @@ -429,7 +429,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/rpmalloc/configure.py", "-c", @@ -506,7 +506,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/gn/build/gen.py", "-d" @@ -609,7 +609,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/gn/build/gen.py", "--use-lto", @@ -710,7 +710,7 @@ }, { "cmd": [ - "vpython", + "vpython3", "-u", "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", "--json-output", @@ -756,7 +756,7 @@ }, { "cmd": [ - "vpython", + "vpython3", "-u", "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", "--json-output", @@ -889,7 +889,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/gn/build/gen.py", "--use-lto",
diff --git a/infra/recipes/gn.expected/cq_mac.json b/infra/recipes/gn.expected/cq_mac.json index f9d745e..cc3ec5f 100644 --- a/infra/recipes/gn.expected/cq_mac.json +++ b/infra/recipes/gn.expected/cq_mac.json
@@ -356,7 +356,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/gn/build/gen.py", "-d" @@ -513,7 +513,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/gn/build/gen.py", "--use-lto", @@ -613,7 +613,7 @@ }, { "cmd": [ - "vpython", + "vpython3", "-u", "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", "--json-output", @@ -659,7 +659,7 @@ }, { "cmd": [ - "vpython", + "vpython3", "-u", "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", "--json-output", @@ -846,7 +846,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]/gn/build/gen.py", "--use-lto",
diff --git a/infra/recipes/gn.expected/cq_win.json b/infra/recipes/gn.expected/cq_win.json index e1f742b..792e0e9 100644 --- a/infra/recipes/gn.expected/cq_win.json +++ b/infra/recipes/gn.expected/cq_win.json
@@ -239,9 +239,9 @@ }, { "cmd": [ - "python", + "python3", "-u", - "\nimport shutil\nimport sys\nshutil.copy(sys.argv[1], sys.argv[2])\n", + "RECIPE_MODULE[recipe_engine::json]\\resources\\read.py", "[CACHE]\\windows_sdk\\win_sdk\\bin\\SetEnv.x64.json", "/path/to/tmp/json" ], @@ -294,7 +294,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]\\gn\\build\\gen.py", "-d" @@ -400,7 +400,7 @@ }, { "cmd": [ - "python", + "python3", "-u", "[START_DIR]\\gn\\build\\gen.py", "--use-lto", @@ -503,7 +503,7 @@ }, { "cmd": [ - "vpython", + "vpython3", "-u", "RECIPE_MODULE[recipe_engine::file]\\resources\\fileutil.py", "--json-output", @@ -550,7 +550,7 @@ }, { "cmd": [ - "vpython", + "vpython3", "-u", "RECIPE_MODULE[recipe_engine::file]\\resources\\fileutil.py", "--json-output",
diff --git a/infra/recipes/gn.py b/infra/recipes/gn.py index 011d4b0..a4277dc 100644 --- a/infra/recipes/gn.py +++ b/infra/recipes/gn.py
@@ -5,8 +5,6 @@ from recipe_engine.recipe_api import Property -PYTHON_VERSION_COMPATIBILITY = 'PY3' - DEPS = [ 'recipe_engine/buildbucket', 'recipe_engine/cas', @@ -17,7 +15,6 @@ 'recipe_engine/path', 'recipe_engine/platform', 'recipe_engine/properties', - 'recipe_engine/python', 'recipe_engine/raw_io', 'recipe_engine/step', 'target', @@ -226,10 +223,10 @@ cipd_dir) with api.step.nest('build rpmalloc-' + platform), api.context( env=env, cwd=rpmalloc_src_dir): - api.python( + api.step( 'configure', - rpmalloc_src_dir.join('configure.py'), - args=['-c', 'release', '-a', rpmalloc_arch, '--lto']) + ['python3', '-u', rpmalloc_src_dir.join('configure.py')] + + ['-c', 'release', '-a', rpmalloc_arch, '--lto']) # NOTE: Only build the static library. rpmalloc_static_lib = api.path.join('lib', rpmalloc_os, 'release', @@ -252,7 +249,8 @@ '--link-lib=%s' % rpmalloc_static_libs[target.platform] ] - api.python('generate', src_dir.join('build', 'gen.py'), args=args) + api.step('generate', + ['python3', '-u', src_dir.join('build', 'gen.py')] + args) # Windows requires the environment modifications when building too. api.step('build',