[dart] Shard deflaking

This re-uses the sharding logic in _run_test_py for deflaking. This
will allow deflaking on ARM/Android builders that can't run local
shards.

* Only deflake when there is something to deflake.
* Move deflaking args to run_test_py.
* Remove obsolete functionality in api.dart.shard().
* Clear collected tasks to re-use the list for deflaking tasks.
* 1 shard and local shard => no sharding.
* Collect any sharded deflake tasks after deflaking.
* Limit deflaking to 1 shard.
* Cleanup example.py and remove redundant tests.

Change-Id: I7fdd466ce6e768999db770ad92b90a0a42556564
Reviewed-on: https://chromium-review.googlesource.com/c/1443191
Commit-Queue: Alexander Thomas <athom@google.com>
Reviewed-by: William Hesse <whesse@google.com>
13 files changed
tree: 5214c29ea2fc22944a22b732a14e8bf0056bf999
  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.