pb/

directory
v0.0.169 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 1, 2023 License: Apache-2.0

README

Protocol Buffers in TestGrid

TestGrid stores its configuration, state, and other information in cloud storage encoded via these protocol buffers.

Reading a Protocol Buffer

Protocol buffers can be read using the proto compiler protoc. Be sure your working directory is this repository.

This example uses gsutil to read a Configuration from Google Cloud Storage. Then, it uses protoc to decode it.

gsutil cat gs://example-bucket/config | protoc --decode=Configuration pb/config/config.proto

You need to pass protoc the proto name and file used to encode the file.

These components generally generate these types of protos:

Component Message Source
Configurator or Config Merger Configuration config.proto
Summarizer DashboardSummary summary.proto
Updater Grid (see Reading a Grid) state.proto
Tabulator Grid (see Reading a Grid) state.proto
Reading a Grid

The Updater and Tabulator will compress its state as well as encoding it. To read it, you'll need to do one of the following:

  • In Go: Use DownloadGrid() or zlib.NewReader(reader)
  • In shell: Use a script that will uncompress zlib, then pipe that result to protoc
Reading an Unknown Protocol Buffer
gsutil cat gs://example-bucket/config | protoc --decode_raw

The result will use message numbers instead of message names. For example, 1 instead of test_groups

Changing a Protocol Buffer Definition

If you want to change one of the .proto files in this repository, you'll also need to regenerate the .pb.go files. Do so with this command:

bazel run //hack:update-protos

Directories

Path Synopsis
api
v1

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL