[V8] Deprecate build_config property

This deprecates and removes using the build config (Release/Debug)
on the infrastructure side. In V8, this information is configured
solely through GN using the is_debug switch. We also don't pass
the --mode parameter any longer to the test framework as this is
already auto-detected based on the gn flag.

The build path is now set to out/build in all configurations
(before it was out/Release or out/Debug). Therefore we now also
don't need to transfer this information to triggered testers.

Considerations:
- The performance test infrastructure is prepared to flexibly
detect the build output directory by:
https://crrev.com/c/2431364
- Ref builds for performance tests date back to the last beta, but
the archives are comprised of the content of the build directory.
The directory path doesn't matter there.
- The archive recipe keeps its dependency on build_config as it
runs GN directly (without MB) and still deduces release/debug on
the infra side.
- This change breaks ongoing builder/tester relation, hence it will
land on closed tree with PSA. New builds will be fine after the
switch, builds from old builders aren't compatible to new testers.
- Flake bisection command lines fit to the new configuration. It
might break bisection when going backwards. We'll prepare flako to
be tolerant to this.
- The internal performance trybots depend on the build location and,
hence, recipe simulation data will be updated.

This change was tested with "led" on release and debug builders and
testers and on windows.

This change was also staged with:
https://crrev.com/c/2431670

Bug: 1132088
Recipe-Nontrivial-Roll: build_limited_scripts_slave
Change-Id: I65409bd15bc977d90605c41d4fce6f102348e5ae
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/build/+/2426643
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Liviu Rau <liviurau@chromium.org>
55 files changed
tree: 360721dac0dfafb532e8a3439f6e894e98e55038
  1. infra/
  2. recipes/
  3. scripts/
  4. site_config/
  5. third_party/
  6. .gitattributes
  7. .gitignore
  8. .style.yapf
  9. .vpython
  10. .yapfignore
  11. codereview.settings
  12. CROS_OWNERS
  13. DEPS
  14. environment.cfg.py
  15. LICENSE
  16. OWNERS
  17. PRESUBMIT.py
  18. README.md
  19. WATCHLISTS
README.md

Recipes

If you're here to make a change to ‘recipes’ (the code located in scripts/slave/recipes*), please take a look at the README for more information pertaining to recipes.

Style

The preferred style is PEP8 with two-space indent; that is, the Chromium Python style. Functions use lowercase_with_underscores, with the exception of the special functions RunSteps and RunTests in recipes. Use yapf (git cl format --no-clang-format) to autoformat new code.