[engine_v2] respect gclient_variables from parent build

For fuchsia lsc tests, the parent builder is triggered by a fuchsia
change with customized `gclient_variables` to specify the non-released
fuchsia sdk.

These gclient_variables are used by DEPS and
src/flutter/tools/download_fuchsia_sdk.py to download the fuchsia sdk
from gcs rather than the released ones in cipd.
(https://github.com/flutter/engine/blob/3e8b0deffe4e01fa7364024a0f0f2fda01909a9f/DEPS#L1128)

But the `gclient_variables` were never really forwarded to the drone
builders, and caused the fuchsia lsc tests to not function as its
purpose, e.g.
https://ci.chromium.org/ui/p/flutter/builders/try/Linux%20Engine%20Drone/2075085/overview

More details can be found in http://b/328110079.

So this change propagates the `gclient_variables` from parent builder
to the drone builders if any. Meanwhile the `gclient_variables`
specifically defined in the ci/builders/*.json are still being
respected and have higher priority to override anything conflicting.

Bug: b/328110079
Change-Id: I34f022b358206e3a7603db18895bf63a33b751f9
Reviewed-on: https://flutter-review.googlesource.com/c/recipes/+/55760
Commit-Queue: Zijie He <zijiehe@google.com>
Reviewed-by: Keyong Han <keyonghan@google.com>
3 files changed
tree: 3f985dd0a6e0b1ebaf5b0452a3e6e2b5d5322d42
  1. infra/
  2. recipe_modules/
  3. recipes/
  4. .gitignore
  5. .style.yapf
  6. AUTHORS
  7. CONTRIBUTING.md
  8. LICENSE
  9. OWNERS
  10. README.md
  11. recipes.py
README.md

Flutter LUCI Recipes

This repository contains Flutter's LUCI recipes. For the LUCI infrastructure config, see flutter/infra. Builds can be found in the Flutter Dashboard.

Supported repositories roll their .ci.yaml into flutter/infra, which updates what properties builds have. For example, flutter config specifies various dependencies the different tests require, which are then used by the flutter_deps recipe_module No modifications to flutter/infra are required to work on the recipes.

Contributing

Please follow instructions on Contributing docs to set up your development environment.