| commit | 29780fbab8bca05da846fca47957fb1d53b8e78c | [log] [tgz] |
|---|---|---|
| author | seanmccullough <seanmccullough@google.com> | Wed Aug 23 16:05:10 2023 -0700 |
| committer | SkCQ <skcq-be@skia-corp.google.com.iam.gserviceaccount.com> | Fri Aug 25 20:27:03 2023 +0000 |
| tree | 87dcff17ae40eb510f95fe3f78c780cf9c8fdc47 | |
| parent | 560e4c0c924ede0f7ed8e6d935b11693f1bc5e2e [diff] |
[cabe] update cabe proto targets to support envoy grpc-json transcoding This CL by itself doesn't do anything interesting yet. I have a separate WIP CL to update envoy settings in //k8s-config/skfe which will have to land separately since it's in a different repo. That k8s-config change configures envoy to use the cabe_descriptor_set.pb file generated by the new proto_descriptor_set target in this CL. See https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/grpc_json_transcoder_filter for envoy's docs on this transcoding feature. TL;DR is you can apply this filter in front of a grpc service, and envoy will transparently switch between REST+JSON and gRPC transport and encodings based on request headers - the service implementation can keep believing that it's always talking gRPC. Bug: chromium:1473744 Change-Id: Ibe44188f94479e1abe5e40a9fdccbeb05227b478 Reviewed-on: https://skia-review.googlesource.com/c/buildbot/+/746138 Commit-Queue: Sean McCullough <seanmccullough@google.com> Reviewed-by: Joe Gregorio <jcgregorio@google.com>
This repo contains infrastructure code for Skia.
The main source code repository is a Git repository hosted at https://skia.googlesource.com/buildbot.git. It is possible to check out this repository directly with git clone or via go get.
Using git clone allows you to work in whatever directory you want. You will still need to set GOPATH in order to build some apps (recommended to put this in a cache dir). E.g.:
$ cd ${WORKDIR}
$ git clone https://skia.googlesource.com/buildbot.git
$ export GOPATH=${HOME}/.cache/gopath/$(basename ${WORKDIR})
$ mkdir $GOPATH
$ cd buildbot
Almost all applications are built with Bazel, and bazelisk is the recommended tool to ensure you have the right version of bazel installed:
go install github.com/bazelbuild/bazelisk@latest go install github.com/bazelbuild/buildtools/buildifier@latest go install github.com/kisielk/errcheck@latest go install golang.org/x/tools/cmd/goimports@latest go install github.com/mikefarah/yq/v4@latest go install go.chromium.org/luci/client/cmd/...@latest
sudo apt-get install jq
bazelisk build --config=mayberemote //...
bazelisk test --config=mayberemote //...
To update generated code run the following in any directory:
go generate ./...
Install Cloud SDK.
Use this command to run the presubmit tests:
./run_unittests --small