New issue
Advanced search Search tips

Issue 857210 link

Starred by 1 user

Issue metadata

Status: Duplicate
Merged: issue 851639
Owner: ----
Closed: Jun 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug



Sign in to add a comment

Recipe code throws exceptions when layout tests don't output json results

Project Member Reported by martiniss@chromium.org, Jun 27 2018

Issue description

https://ci.chromium.org/p/chromium/builders/luci.chromium.try/mac_chromium_rel_ng/79854 is an example of this.

When layout tests are retried without patch, sometimes they don't end up executing any tests. This can happen if the CL the tryjob is testing adds a test which fails; obviously without the patch that test wouldn't fail.

This ends up being problematic for the recipe code. It has this exception:

  File "/b/s/w/ir/kitchen-checkout/build/scripts/slave/recipe_modules/swarming/api.py", line 998, in _default_collect_step
    links = step_result.json.output.get('links', {})
AttributeError: 'NoneType' object has no attribute 'get'

We can either play whack-a-mole in the recipe code, to protect it from this stuff and check arguments, or make layout tests always output empty results files, even if it doesn't run tests. I tried looking into the latter, and it looked fairly complicated. The layout tests output several types of files when they're done executing tests, so I'm not sure how easily we could do that.
 
Cc: robertma@chromium.org
Mergedinto: 851639
Status: Duplicate (was: Unconfirmed)
This should be fixed by my recent change https://crrev.com/c/1117623 ( issue 851639 ). I just landed the CL this morning.

Feel free to reopen the bug if this continues to happen.

Sign in to add a comment