patch failure in iOS simulator trybot without any output |
|||||
Issue descriptionCL/PS: https://codereview.chromium.org/2799023002/#ps100001 iOS Simulator is red in the step "Patch Failure": https://luci-logdog.appspot.com/v/?s=chromium%2Fbb%2Ftryserver.chromium.mac%2Fios-simulator%2F191525%2F%2B%2Frecipes%2Fsteps%2FPatch_failure%2F0%2Fstdout There is no meaningful output there though, so no idea what is really failing. The step says: python -u /var/folders/9x/6c6sv3cj4j53wzpzthbp4ksm0000gm/T/tmpjCLKMK.py in dir /b/build/slave/ios-simulator/build: allow_subannotations: False base_name: Patch failure cmd: ['python', '-u', '/var/folders/9x/6c6sv3cj4j53wzpzthbp4ksm0000gm/T/tmpjCLKMK.py'] cwd: /b/build/slave/ios-simulator/build infra_step: False name: Patch failure nest_level: 0 ok_ret: frozenset([0]) step_test_data: <lambda>(...) trigger_specs: [] ... lot of env vars ... step returned non-zero exit code: 1
,
Apr 11 2017
The "bot_update" step contains the correct link to the patch failure and, as you noted, it also mentions this in the failing step: Patch failure Patch failure Check the bot_update step for details The actual patch failure log that is referenced contains a lot of useful information: https://luci-logdog.appspot.com/v/?s=chromium%2Fbb%2Ftryserver.chromium.mac%2Fios-simulator%2F191729%2F%2B%2Frecipes%2Fsteps%2Fbot_update%2F0%2Flogs%2Fpatch_error%2F0 Agreed that actually having the link there would be nice. hinoka@, any idea why we can't do that?
,
Apr 11 2017
In the event of a patch failure, we did not want the build step text to display "failed bot_update", instead, we want it to say "failed patch failure". There wasn't a way to do this in recipes without creating a new step.
,
Apr 11 2017
I actually think "failed bot_update" plus some step text would be fine. Failing that, is there a way to copy the link to the patch failure down to the "patch failure" step?
,
Apr 11 2017
problem with "failed bot_update" is that a user would see it, and then file a bug against me, and I'd have to point out that they need to rebase their checkout. This has unfortunately happened many times in the past. I don't think there is a way to refer to log links from one step in another step.
,
Apr 11 2017
Hm. I can see the problem about filing bugs against bot_update ... Aren't the buildbot links just annotations with URLs? I don't really see why we couldn't save the URL and then add it to the next step.
,
Apr 11 2017
you can't get a buildbot URL because recipes just emit step cursors and step texts. On the recipe side, there isn't a way to extract that URL (for a good reason too, it might change)
,
Apr 11 2017
The log URL is generated by BuildBot / Annotee, which happens outside of the consciousness of the recipe engine. Changing direction of that information would require a reverse formation flow to be built and is probably non-trivial.
,
Apr 12 2017
,
Apr 12 2017
After some thought, I went ahead and took a swing at this: https://chromium-review.googlesource.com/c/475950/
,
Apr 12 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/tools/depot_tools/+/8dd4edae992e3cd9cacb7ce36cf2fa48ab60d683 commit 8dd4edae992e3cd9cacb7ce36cf2fa48ab60d683 Author: Dan Jacques <dnj@chromium.org> Date: Wed Apr 12 19:05:48 2017 bot_update: Show failed patch in "Patch Failure". Have "bot_update.py" export the failing patch body in its JSON. Have the recipe actually emit the patch body in the "Patch Failure" step instead of the "bot_update" step, and remove the "Patch Failure" step's indirection to the "bot_update" step for patch failure. This will provide a more straightforward user interface: the red step that says "Patch Failure" now includes the details of the patch failure! BUG= chromium:710477 TEST=expectations Change-Id: I6ad305f0b972de89e4f0b5eb70edf41980447abd Reviewed-on: https://chromium-review.googlesource.com/475950 Commit-Queue: Daniel Jacques <dnj@chromium.org> Reviewed-by: Ryan Tseng <hinoka@chromium.org> [modify] https://crrev.com/8dd4edae992e3cd9cacb7ce36cf2fa48ab60d683/recipes/recipe_modules/bot_update/resources/bot_update.py [modify] https://crrev.com/8dd4edae992e3cd9cacb7ce36cf2fa48ab60d683/recipes/recipe_modules/bot_update/example.expected/tryjob_fail_patch.json [modify] https://crrev.com/8dd4edae992e3cd9cacb7ce36cf2fa48ab60d683/recipes/recipe_modules/bot_update/test_api.py [modify] https://crrev.com/8dd4edae992e3cd9cacb7ce36cf2fa48ab60d683/recipes/recipe_modules/bot_update/api.py [modify] https://crrev.com/8dd4edae992e3cd9cacb7ce36cf2fa48ab60d683/recipes/recipe_modules/bot_update/example.expected/tryjob_fail_patch_download.json
,
Apr 12 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/tools/depot_tools/+/8dd4edae992e3cd9cacb7ce36cf2fa48ab60d683 commit 8dd4edae992e3cd9cacb7ce36cf2fa48ab60d683 Author: Dan Jacques <dnj@chromium.org> Date: Wed Apr 12 19:05:48 2017 bot_update: Show failed patch in "Patch Failure". Have "bot_update.py" export the failing patch body in its JSON. Have the recipe actually emit the patch body in the "Patch Failure" step instead of the "bot_update" step, and remove the "Patch Failure" step's indirection to the "bot_update" step for patch failure. This will provide a more straightforward user interface: the red step that says "Patch Failure" now includes the details of the patch failure! BUG= chromium:710477 TEST=expectations Change-Id: I6ad305f0b972de89e4f0b5eb70edf41980447abd Reviewed-on: https://chromium-review.googlesource.com/475950 Commit-Queue: Daniel Jacques <dnj@chromium.org> Reviewed-by: Ryan Tseng <hinoka@chromium.org> [modify] https://crrev.com/8dd4edae992e3cd9cacb7ce36cf2fa48ab60d683/recipes/recipe_modules/bot_update/resources/bot_update.py [modify] https://crrev.com/8dd4edae992e3cd9cacb7ce36cf2fa48ab60d683/recipes/recipe_modules/bot_update/example.expected/tryjob_fail_patch.json [modify] https://crrev.com/8dd4edae992e3cd9cacb7ce36cf2fa48ab60d683/recipes/recipe_modules/bot_update/test_api.py [modify] https://crrev.com/8dd4edae992e3cd9cacb7ce36cf2fa48ab60d683/recipes/recipe_modules/bot_update/api.py [modify] https://crrev.com/8dd4edae992e3cd9cacb7ce36cf2fa48ab60d683/recipes/recipe_modules/bot_update/example.expected/tryjob_fail_patch_download.json
,
Apr 12 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/tools/depot_tools/+/8dd4edae992e3cd9cacb7ce36cf2fa48ab60d683 commit 8dd4edae992e3cd9cacb7ce36cf2fa48ab60d683 Author: Dan Jacques <dnj@chromium.org> Date: Wed Apr 12 19:05:48 2017 bot_update: Show failed patch in "Patch Failure". Have "bot_update.py" export the failing patch body in its JSON. Have the recipe actually emit the patch body in the "Patch Failure" step instead of the "bot_update" step, and remove the "Patch Failure" step's indirection to the "bot_update" step for patch failure. This will provide a more straightforward user interface: the red step that says "Patch Failure" now includes the details of the patch failure! BUG= chromium:710477 TEST=expectations Change-Id: I6ad305f0b972de89e4f0b5eb70edf41980447abd Reviewed-on: https://chromium-review.googlesource.com/475950 Commit-Queue: Daniel Jacques <dnj@chromium.org> Reviewed-by: Ryan Tseng <hinoka@chromium.org> [modify] https://crrev.com/8dd4edae992e3cd9cacb7ce36cf2fa48ab60d683/recipes/recipe_modules/bot_update/resources/bot_update.py [modify] https://crrev.com/8dd4edae992e3cd9cacb7ce36cf2fa48ab60d683/recipes/recipe_modules/bot_update/example.expected/tryjob_fail_patch.json [modify] https://crrev.com/8dd4edae992e3cd9cacb7ce36cf2fa48ab60d683/recipes/recipe_modules/bot_update/test_api.py [modify] https://crrev.com/8dd4edae992e3cd9cacb7ce36cf2fa48ab60d683/recipes/recipe_modules/bot_update/api.py [modify] https://crrev.com/8dd4edae992e3cd9cacb7ce36cf2fa48ab60d683/recipes/recipe_modules/bot_update/example.expected/tryjob_fail_patch_download.json
,
Apr 12 2017
New patch failure message looks a lot better: https://luci-milo.appspot.com/buildbot/tryserver.chromium.win/win_clang/206610 https://screenshot.googleplex.com/TOJ1DjnJGiF
,
Apr 13 2017
Yup, definitely better. Thanks!
,
Apr 13 2017
Ahh, my brain completely skipped the "Check the bot_update step for details". The thing I attached in #0 was the result of clicking "stdout" on "patch error", where I was expecting to see the failed diff. #14 looks great, thanks a lot!
,
Apr 13 2017
I'll consider that Verified :D |
|||||
►
Sign in to add a comment |
|||||
Comment 1 by dpranke@chromium.org
, Apr 11 2017Components: -Build Infra>Platform>Buildbot