[size_diff] Various cleanups

- Exit early if the build listed by `searchForBuild()` is already
  completed, instead of entering the `waitForBuildCompletion()` loop.
  This reduces the minimum required number of HTTP requests from 2 to 1,
  restoring behavior inadvertently changed in
  commit 62a85b3c6b67f4fa461a87807cf7b8241c7b801d.
- Unify the definitions of which Buildbucket fields are required and
  reduce plumbing. Also use the new `BuildMask` type which can be used
  for both searching builds and getting a specific build.

Change-Id: Ia5e4e42cb29e558b0783742311d8f20f99c809e3
Reviewed-on: https://fuchsia-review.googlesource.com/c/infra/infra/+/975392
Fuchsia-Auto-Submit: Oliver Newman <olivernewman@google.com>
Commit-Queue: Auto-Submit <auto-submit@fuchsia-infra.iam.gserviceaccount.com>
Reviewed-by: Ina Huh <ihuh@google.com>
3 files changed
tree: 1c7214e3c2f9367a9d642e48cbb7883d2b1a47e6
  1. artifacts/
  2. buildbucket/
  3. checkout/
  4. cmd/
  5. execution/
  6. flagutil/
  7. functools/
  8. gerrit/
  9. gitiles/
  10. issuetracker/
  11. monorail/
  12. rpcutil/
  13. scripts/
  14. slsa/
  15. third_party/
  16. vendor/
  17. .gitignore
  18. AUTHORS
  19. go.mod
  20. go.sum
  21. LICENSE
  22. manifest
  23. PATENTS
  24. README.md
README.md

infra

This repo contains tools and config files necessary to run infrastructure related to builds, code review, version control, and continuous integrations.