[close #131] Retry App#run on empty results #132
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
App#run (
heroku run
) commands sometimes return empty strings. We would love to know WHY so this pr does two things:I figure that it's unlikely someone will be running a
heroku run
session and expecting an empty result, unless that's how they detect some failure mode. If they are expecting it, then they can manually specifyretry_on_empty: false
.For now the only extra debug info we're providing is the contents of releases. In the future we could enable
DEBUG="*"
by default and separately capture stdout versus stderr and output the full debug contents of stderr if needed.In reality, the retry behavior here will likely be "good enough" to make this issue functionally disappear.
I extracted the behavior of running a
heroku run
command to it's own class to make unit testing easier and because app.rb is becoming a junk drawer of private methods.