Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(999)

Unified Diff: scripts/slave/recipes/chromium.py

Issue 2073923002: Support sharding for swarmed isolated script tests. (Closed) Base URL: https://chromium.googlesource.com/chromium/tools/build.git@master
Patch Set: Explicitly handle missing shards' output. Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: scripts/slave/recipes/chromium.py
diff --git a/scripts/slave/recipes/chromium.py b/scripts/slave/recipes/chromium.py
index 7f15f180178a502452f87433d8f456c5b14db91b..b9a8439505330f5a548c848123bd9e5b4cdd6a8e 100644
--- a/scripts/slave/recipes/chromium.py
+++ b/scripts/slave/recipes/chromium.py
@@ -387,6 +387,98 @@ def GenTests(api):
)
yield (
+ api.test('dynamic_swarmed_sharded_passed_isolated_script_test') +
+ api.properties.generic(mastername='chromium.linux',
+ buildername='Linux Tests',
+ parent_buildername='Linux Builder') +
+ api.properties(swarm_hashes={
+ 'telemetry_gpu_unittests': 'eeeeeeeeeeeeeeeeeeeeeeeeeeeeee',
+ }) +
+ api.platform('linux', 64) +
+ api.override_step_data('read test spec', api.json.output({
+ 'Linux Tests': {
+ 'isolated_scripts': [
+ {
+ 'isolate_name': 'telemetry_gpu_unittests',
+ 'name': 'telemetry_gpu_unittests',
+ 'swarming': {
+ 'can_use_on_swarming_builders': True,
+ 'shards': 2,
+ },
+ },
+ ],
+ },
+ })) +
+ api.override_step_data('telemetry_gpu_unittests on Ubuntu-12.04',
+ api.test_utils.canned_isolated_script_output(
+ passing=True, is_win=False, swarming=True,
+ shards=2, isolated_script_passing=True, valid=True),
+ retcode=0)
+ )
+
+ yield (
+ api.test('dynamic_swarmed_sharded_failed_isolated_script_test') +
+ api.properties.generic(mastername='chromium.linux',
+ buildername='Linux Tests',
+ parent_buildername='Linux Builder') +
+ api.properties(swarm_hashes={
+ 'telemetry_gpu_unittests': 'eeeeeeeeeeeeeeeeeeeeeeeeeeeeee',
+ }) +
+ api.platform('linux', 64) +
+ api.override_step_data('read test spec', api.json.output({
+ 'Linux Tests': {
+ 'isolated_scripts': [
+ {
+ 'isolate_name': 'telemetry_gpu_unittests',
+ 'name': 'telemetry_gpu_unittests',
+ 'swarming': {
+ 'can_use_on_swarming_builders': True,
+ 'shards': 2,
+ },
+ },
+ ],
+ },
+ })) +
+ api.override_step_data('telemetry_gpu_unittests on Ubuntu-12.04',
+ api.test_utils.canned_isolated_script_output(
+ passing=False, is_win=False, swarming=True,
+ shards=2, isolated_script_passing=False, valid=True),
+ retcode=1)
+ )
+
+ yield (
+ api.test('dynamic_swarmed_sharded_isolated_script_test_missing_shard') +
+ api.properties.generic(mastername='chromium.linux',
+ buildername='Linux Tests',
+ parent_buildername='Linux Builder') +
+ api.properties(swarm_hashes={
+ 'telemetry_gpu_unittests': 'eeeeeeeeeeeeeeeeeeeeeeeeeeeeee',
+ }) +
+ api.platform('linux', 64) +
+ api.override_step_data('read test spec', api.json.output({
+ 'Linux Tests': {
+ 'isolated_scripts': [
+ {
+ 'isolate_name': 'telemetry_gpu_unittests',
+ 'name': 'telemetry_gpu_unittests',
+ 'swarming': {
+ 'can_use_on_swarming_builders': True,
+ 'shards': 2,
+ },
+ },
+ ],
+ },
+ })) +
+ api.override_step_data(
+ 'telemetry_gpu_unittests on Ubuntu-12.04',
+ api.test_utils.canned_isolated_script_output(
+ passing=True, is_win=False, swarming=True,
+ shards=2, isolated_script_passing=True, valid=True,
+ missing_shards=[1]),
+ retcode=1)
+ )
+
+ yield (
api.test('dynamic_swarmed_isolated_script_test_linux_gpu') +
api.properties.generic(mastername='chromium.linux',
buildername='Linux Tests',

Powered by Google App Engine
This is Rietveld 408576698