Index: scripts/slave/recipe_modules/swarming/api.py |
diff --git a/scripts/slave/recipe_modules/swarming/api.py b/scripts/slave/recipe_modules/swarming/api.py |
index de26cf14f11a01db085f0a8f4b7654c3a986b60e..2202c9d1a208c2e15907668b6b565665c31c0cf2 100644 |
--- a/scripts/slave/recipe_modules/swarming/api.py |
+++ b/scripts/slave/recipe_modules/swarming/api.py |
@@ -793,8 +793,14 @@ class SwarmingApi(recipe_api.RecipeApi): |
links = step_result.presentation.links |
for index in xrange(task.shards): |
url = task.get_shard_view_url(index) |
+ if summary['shards'][index] is None: |
+ display_text = 'shard #%d (failed - result not received)' % index |
M-A Ruel
2016/09/22 21:09:19
We should treat that as an infrastructure failure
nednguyen
2016/09/22 21:46:03
Done.
|
+ elif summary['shards'][index].get('exit_code', 0) != 0: |
M-A Ruel
2016/09/22 21:09:19
, None)
since if it's missing this is bad.
nednguyen
2016/09/22 21:46:03
Done.
|
+ display_text = 'shard #%d (failed)' % index |
+ else: |
+ display_text = 'shard #%d' % index |
if url: |
- links['shard #%d' % index] = url |
+ links[display_text] = url |
step_result.isolated_script_results = \ |
self._merge_isolated_script_shards(task, step_result) |