Revert "[swarming] Roll executable, make invocation failure an infra failure"

This reverts commit 202779b4946ce3ff354fd4a1e9171cf132ca85c0.

Reason for revert: Failing after 5 minutes with
"swarming: context deadline exceeded"
e.g. https://chromium-swarm.appspot.com/task?id=4a3ab2bb4d6b4410

Original change's description:
> [swarming] Roll executable, make invocation failure an infra failure
> 
> This is because the swarming Go client correctly returns non-zero only
> in the case of an RPC failure, it doesn't return the exit code of the
> task that results are being collected. This is the right thing, so now
> all swarming execution shall be considered an infrastructure failure.
> 
> This was not true with the python client, albeit this recipe module
> never used the python client, it was just an oversight. Also until the
> current swarming Go version being rolled in, collect didn't return
> non-zero on RPC failure.
> 
> Recipe-Nontrivial-Roll: build
> Recipe-Nontrivial-Roll: build_limited_scripts_slave
> Recipe-Nontrivial-Roll: chromiumos
> Recipe-Nontrivial-Roll: fuchsia
> Recipe-Nontrivial-Roll: release_scripts
> Bug: 1049713, 1049756
> Change-Id: I30e43bd196092567cd477d325fce8201952698ff
> Reviewed-on: https://chromium-review.googlesource.com/c/infra/luci/recipes-py/+/2044051
> Commit-Queue: Joshua Seaton <joshuaseaton@google.com>
> Auto-Submit: Marc-Antoine Ruel <maruel@chromium.org>
> Reviewed-by: Joshua Seaton <joshuaseaton@google.com>

TBR=maruel@chromium.org,iannucci@chromium.org,tandrii@google.com,joshuaseaton@google.com,infra-scoped@luci-project-accounts.iam.gserviceaccount.com

Change-Id: I7b26428f4c16c6d4321b3d4bc6fe4273850f5792
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 1049713, 1049756
Reviewed-on: https://chromium-review.googlesource.com/c/infra/luci/recipes-py/+/2045048
Reviewed-by: Marc-Antoine Ruel <maruel@chromium.org>
Commit-Queue: Marc-Antoine Ruel <maruel@chromium.org>
14 files changed
tree: 1184efd16101d21d5ab047da99bc6842c506ceba
  1. doc/
  2. infra/
  3. misc/
  4. recipe_engine/
  5. recipe_modules/
  6. recipe_proto/
  7. recipes/
  8. unittests/
  9. .gitattributes
  10. .gitignore
  11. .style.yapf
  12. .vpython
  13. AUTHORS
  14. codereview.settings
  15. CONTRIBUTORS
  16. LICENSE
  17. OWNERS
  18. PRESUBMIT.py
  19. README.md
  20. README.recipes.md
  21. recipes.py
README.md

Recipes

Recipes are a domain-specific language (embedded in python) for specifying sequences of subprocess calls in a cross-platform and testable way.

They allow writing build flows which integrate with the rest of LUCI.

Documentation for the recipe engine (including this file!). Take a look at the user guide for some hints on how to get started. See the implementation details doc for more detailed implementation information about the recipe engine.

Contributing

  • Sign the Google CLA.
  • Make sure your user.email and user.name are configured in git config.

Run the following to setup the code review tool and create your first review:

# Get `depot_tools` in $PATH if you don't have it
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git $HOME/src/depot_tools
export PATH="$PATH:$HOME/src/depot_tools"

# Check out the recipe engine repo
git clone https://chromium.googlesource.com/infra/luci/recipes-py $HOME/src/recipes-py

# make your change
cd $HOME/src/recipes-py
git new-branch cool_feature
# hack hack
git commit -a -m "This is awesome"

# This will ask for your Google Account credentials.
git cl upload -s -r joe@example.com
# Wait for approval over email.
# Click "Submit to CQ" button or ask reviewer to do it for you.
# Wait for the change to be tested and landed automatically.

Use git cl help and git cl help <cmd> for more details.