btpeerd: Add scripts/update_btpeers.sh

Adds a script to remotely update btpeerd on one or more btpeer
hosts for testing changes during development. See script doc
for details on usage.

BUG=b:331246657
TEST=used new script to update and test latest btpeerd change
TEST=script fails as expected when trying to update an invalid host

Change-Id: I8f9c1582bfae8bdee7990f62888af751e9d5154f
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/btpeerd/+/5508278
Tested-by: Jared Bennett <jaredbennett@google.com>
Commit-Queue: Jared Bennett <jaredbennett@google.com>
Reviewed-by: Jason Stanko <jstanko@google.com>
1 file changed
tree: 4b58ab270536a83dcabd54ea084835f61fa96055
  1. go/
  2. scripts/
  3. .gitignore
  4. DIR_METADATA
  5. LICENSE
  6. OWNERS
  7. PRESUBMIT.cfg
  8. README.md
README.md

btpeerd

A system service for controlling Raspberry Pi btpeers for ChromeOS bluetooth testing.

Design: go/btpeerd

Building btpeerd

System must have golang installed (any version) in order to download and configure the local golang version used by the btpeerd build process.

Build btpeerd on the same system environment the executable is meant to be run on (e.g. in the pi-gen chroot) to ensure system compatibility. The unit tests should not be system dependent, so running the build script on gLinux should be sufficient to say those test pass.

Run scripts/build.sh to build btpeerd. This will do the following:

  • Download the specific version of golang needed for btpeerd to ./go/bin
  • Downloads go package dependencies.
  • Run all unit tests
  • Build btpeerd binary to ./go/bin/btpeerd

Running btpeerd

No files in this repository are used during btpeerd runtime, the ./go/bin/btpeerd executable should be runnable directly to launch btpeerd.

Note: Golang is only used during the compilation of the btpeerd executable.

The btpeerd accepts the following optional command line options:

  • --ListenPort=<port> (default 8100) Sets the port the gRPC server will listen on.
  • --LogLevel=<DEBUG|INFO|WARN|ERROR> (default INFO) Sets the log level of btpeerd.

The btpeerd process will run continuously until a SIGINT signal (Ctrl+C) is received, upon which it will gracefully shut down the gRPC server and then close.