[dart] Refactor dart recipe module

This prepares the dart recipe module for sharding deflaking steps.

* Extract TestMatrixStep class to pass step information around.
* Extract _run_step method from _run_steps for clarity.
* Update incorrect documentation comments.
* Merge with blocks where possible to reduce nest levels.
* deflake_results now calls run_test_py instead of run_script.
* Make methods not meant to be called from other recipes protected.
* Remove "tests" and "exclude_suites" features that are no longer used.
* Remove obsolete test cases.
* Fix minor issue in builder name parsing for dev channel builders.
* Nest deflaking steps to reduce build step noise.

Change-Id: I6fce40557063f219859357c4a61ee5897706304f
Reviewed-on: https://chromium-review.googlesource.com/c/1442511
Commit-Queue: Alexander Thomas <athom@google.com>
Reviewed-by: William Hesse <whesse@google.com>
17 files changed
tree: 481ad2b63032ae547896ec444036a101a5e41770
  1. infra/
  2. masters/
  3. scripts/
  4. site_config/
  5. slave/
  6. tests/
  7. third_party/
  8. .gitattributes
  9. .gitignore
  10. .vpython
  11. codereview.settings
  12. DEPS
  13. environment.cfg.py
  14. LICENSE
  15. OWNERS
  16. PRESUBMIT.py
  17. README.md
  18. WATCHLISTS
README.md

build

Hi build contributor! If you do any change in scripts/master/ or touching any master's html/ directories, you must restart master.chromium.fyi first and ensure that it still works before restarting other masters.

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.