Fix flutter web builder by using correct flutter engine checkout path. api.repo_util.monorepo_checkout() checks out the flutter engine sources into flutter/engine of its parameter. So if parameter is 'builder/flutter', then engine ends up in 'builder/flutter/flutter/engine', which breaks bundle_web_sdk_artifacts steps that attempts to find 'builder/flutter/engine/src/flutter/build/zip.py'. Example of broken build https://ci.chromium.org/ui/p/dart/builders/ci.sandbox/flutter-web/7360/overview Change-Id: I48cca40309e419d1125499da51ee93ff47c13f8b Reviewed-on: https://flutter-review.googlesource.com/c/recipes/+/62000 Reviewed-by: Alexander Thomas <athom@google.com> Commit-Queue: Alexander Aprelev <aam@google.com>
diff --git a/recipes/engine_v2/engine_v2.expected/monorepo_config_file_tests.json b/recipes/engine_v2/engine_v2.expected/monorepo_config_file_tests.json index 599ef80..79e70bb 100644 --- a/recipes/engine_v2/engine_v2.expected/monorepo_config_file_tests.json +++ b/recipes/engine_v2/engine_v2.expected/monorepo_config_file_tests.json
@@ -592,7 +592,7 @@ "ensure-directory", "--mode", "0o777", - "[CACHE]/builder/flutter" + "[CACHE]/builder" ], "infra_step": true, "luci_context": { @@ -633,15 +633,15 @@ "--refs", "refs/heads/main" ], - "cwd": "[CACHE]/builder/flutter", + "cwd": "[CACHE]/builder", "env": { - "ANDROID_HOME": "[CACHE]/builder/flutter/engine/src/third_party/android_tools/sdk", + "ANDROID_HOME": "[CACHE]/builder/engine/src/third_party/android_tools/sdk", "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1", "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android", "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]", "DEPOT_TOOLS_REPORT_BUILD": "dart/ci.sandbox/monorepo_builder/123", - "ENGINE_CHECKOUT_PATH": "[CACHE]/builder/flutter/engine", - "ENGINE_PATH": "[CACHE]/builder/flutter/engine", + "ENGINE_CHECKOUT_PATH": "[CACHE]/builder/engine", + "ENGINE_PATH": "[CACHE]/builder/engine", "GIT_BACKENDINFO": "1", "GIT_BRANCH": "", "GIT_DAPPER_TRACE": "1", @@ -661,8 +661,8 @@ }, "env_prefixes": { "PATH": [ - "[CACHE]/builder/flutter/engine/src/third_party/dart/tools/sdks/dart-sdk/bin", - "[CACHE]/builder/flutter/engine/src/flutter/third_party/dart/tools/sdks/dart-sdk/bin" + "[CACHE]/builder/engine/src/third_party/dart/tools/sdks/dart-sdk/bin", + "[CACHE]/builder/engine/src/flutter/third_party/dart/tools/sdks/dart-sdk/bin" ] }, "env_suffixes": { @@ -792,15 +792,15 @@ "RECIPE_REPO[depot_tools]/gclient.py", "runhooks" ], - "cwd": "[CACHE]/builder/flutter", + "cwd": "[CACHE]/builder", "env": { - "ANDROID_HOME": "[CACHE]/builder/flutter/engine/src/third_party/android_tools/sdk", + "ANDROID_HOME": "[CACHE]/builder/engine/src/third_party/android_tools/sdk", "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1", "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android", "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]", "DEPOT_TOOLS_REPORT_BUILD": "dart/ci.sandbox/monorepo_builder/123", - "ENGINE_CHECKOUT_PATH": "[CACHE]/builder/flutter/engine", - "ENGINE_PATH": "[CACHE]/builder/flutter/engine", + "ENGINE_CHECKOUT_PATH": "[CACHE]/builder/engine", + "ENGINE_PATH": "[CACHE]/builder/engine", "GIT_BRANCH": "", "LUCI_BRANCH": "", "LUCI_CI": "True", @@ -811,8 +811,8 @@ }, "env_prefixes": { "PATH": [ - "[CACHE]/builder/flutter/engine/src/third_party/dart/tools/sdks/dart-sdk/bin", - "[CACHE]/builder/flutter/engine/src/flutter/third_party/dart/tools/sdks/dart-sdk/bin" + "[CACHE]/builder/engine/src/third_party/dart/tools/sdks/dart-sdk/bin", + "[CACHE]/builder/engine/src/flutter/third_party/dart/tools/sdks/dart-sdk/bin" ] }, "env_suffixes": { @@ -883,12 +883,12 @@ ], "cwd": "[CACHE]/builder/flutter/engine", "env": { - "ANDROID_HOME": "[CACHE]/builder/flutter/engine/src/third_party/android_tools/sdk", + "ANDROID_HOME": "[CACHE]/builder/engine/src/third_party/android_tools/sdk", "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1", "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android", "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]", - "ENGINE_CHECKOUT_PATH": "[CACHE]/builder/flutter/engine", - "ENGINE_PATH": "[CACHE]/builder/flutter/engine", + "ENGINE_CHECKOUT_PATH": "[CACHE]/builder/engine", + "ENGINE_PATH": "[CACHE]/builder/engine", "GIT_BRANCH": "", "LUCI_BRANCH": "", "LUCI_CI": "True", @@ -899,8 +899,8 @@ }, "env_prefixes": { "PATH": [ - "[CACHE]/builder/flutter/engine/src/third_party/dart/tools/sdks/dart-sdk/bin", - "[CACHE]/builder/flutter/engine/src/flutter/third_party/dart/tools/sdks/dart-sdk/bin" + "[CACHE]/builder/engine/src/third_party/dart/tools/sdks/dart-sdk/bin", + "[CACHE]/builder/engine/src/flutter/third_party/dart/tools/sdks/dart-sdk/bin" ] }, "env_suffixes": { @@ -942,12 +942,12 @@ ], "cwd": "[CACHE]/builder/flutter/engine", "env": { - "ANDROID_HOME": "[CACHE]/builder/flutter/engine/src/third_party/android_tools/sdk", + "ANDROID_HOME": "[CACHE]/builder/engine/src/third_party/android_tools/sdk", "ANDROID_SDK_HOME": "[CLEANUP]/tmp_tmp_1", "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1/.android", "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]", - "ENGINE_CHECKOUT_PATH": "[CACHE]/builder/flutter/engine", - "ENGINE_PATH": "[CACHE]/builder/flutter/engine", + "ENGINE_CHECKOUT_PATH": "[CACHE]/builder/engine", + "ENGINE_PATH": "[CACHE]/builder/engine", "GIT_BRANCH": "", "LUCI_BRANCH": "", "LUCI_CI": "True", @@ -958,10 +958,10 @@ }, "env_prefixes": { "PATH": [ - "[CACHE]/builder/flutter/engine/src/third_party/dart/tools/sdks/dart-sdk/bin", - "[CACHE]/builder/flutter/engine/src/flutter/third_party/dart/tools/sdks/dart-sdk/bin", - "[CACHE]/builder/flutter/engine/src/third_party/dart/tools/sdks/dart-sdk/bin", - "[CACHE]/builder/flutter/engine/src/flutter/third_party/dart/tools/sdks/dart-sdk/bin" + "[CACHE]/builder/engine/src/third_party/dart/tools/sdks/dart-sdk/bin", + "[CACHE]/builder/engine/src/flutter/third_party/dart/tools/sdks/dart-sdk/bin", + "[CACHE]/builder/engine/src/third_party/dart/tools/sdks/dart-sdk/bin", + "[CACHE]/builder/engine/src/flutter/third_party/dart/tools/sdks/dart-sdk/bin" ] }, "env_suffixes": {
diff --git a/recipes/engine_v2/engine_v2.py b/recipes/engine_v2/engine_v2.py index de47e2a..1dd4899 100644 --- a/recipes/engine_v2/engine_v2.py +++ b/recipes/engine_v2/engine_v2.py
@@ -122,7 +122,6 @@ # Generators, archives and codesign require a full engine checkout. full_engine_checkout = api.path.cache_dir / 'builder' if api.monorepo.is_monorepo_ci_build or api.monorepo.is_monorepo_try_build: - full_engine_checkout = full_engine_checkout / 'flutter' api.file.ensure_directory( 'Ensure monorepo full engine checkout folder', full_engine_checkout ) @@ -131,7 +130,7 @@ full_engine_checkout ) api.repo_util.monorepo_checkout(full_engine_checkout, env, env_prefixes) - full_engine_checkout = full_engine_checkout / 'engine' + full_engine_checkout = full_engine_checkout / 'flutter' / 'engine' else: api.file.ensure_directory( 'Ensure full engine checkout folder', full_engine_checkout