[botanist] Add support for getting into zedboot from fastboot.

Before this can be used we need to:
* Install the fastboot tool onto the machines that run botanist.
* Ensure that exactly one usb fastboot device gets mapped into the
  docker container that botanist is running in.

Note on implementation approach:
I initially attempted to write go code that would directly communicate
with the target over USB, using the google/gosub library. Strangely I
found that both that library and the linux tool lsusb have trouble
reliably communicating with Vim2, wheras the fastboot command line tool
never failed. The issue with Vim2 is tracked by ZX-2733. If that is
fixed, we can reconsider the implementation of the fastboot package.

Test: Unit test for fastboot package. Manual testing for main.
Bug: IN-634 #comment
Change-Id: I0ebaff660279bd53c5cdf70e63ef91ba345e5a7f
3 files changed
tree: 8d891f1b11a8eb98cfa82e293414dd2e0016c729
  1. botanist/
  2. cmd/
  3. fastboot/
  4. fuchsia/
  5. fxctx/
  6. gerrit-policy/
  7. netboot/
  8. ninjalog/
  9. pdu/
  10. qemu/
  11. retry/
  12. secrets/
  13. serial/
  14. telnet/
  15. tftp/
  16. tilo/
  17. tools/
  18. .gitignore
  19. AUTHORS
  20. Gopkg.lock
  21. Gopkg.toml
  22. LICENSE
  23. MAINTAINERS
  24. manifest
  25. PATENTS
  26. 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.

In order to build the Go code, you must clone this repo into an appropriately named directory. This should do the trick:

REPO=fuchsia.googlesource.com/infra/infra
git clone https://${REPO} $(go env GOPATH)/src/${REPO}