From 474e5a6b079f821c3e12e89b3424e755f683b5eb Mon Sep 17 00:00:00 2001 From: Samuel Littley Date: Fri, 10 Jul 2026 18:02:18 +0100 Subject: [PATCH 1/3] Upgrade the Go toolchain, packages and Please plugin --- .gitignore | 2 + .plzconfig | 7 +- ChangeLog | 4 + VERSION | 2 +- elan/rpc/BUILD | 2 +- elan/rpc/compression_test.go | 6 +- elan/rpc/rpc.go | 8 + flair/rpc/rpc.go | 8 + go.mod | 135 ++-- go.sum | 508 +++++------- plugins/BUILD | 2 +- proto/.gitignore | 3 + proto/lucidity/lucidity.pb.go | 579 -------------- proto/lucidity/lucidity_grpc.pb.go | 141 ---- proto/mettle/mettle.pb.go | 409 ---------- proto/purity/purity.pb.go | 723 ------------------ third_party/binary/BUILD | 2 +- third_party/go/BUILD | 190 +++-- third_party/proto/cas/.gitignore | 1 + .../proto/resourceusage/resourceusage.pb.go | 682 ----------------- 20 files changed, 455 insertions(+), 2959 deletions(-) create mode 100644 proto/.gitignore delete mode 100644 proto/lucidity/lucidity.pb.go delete mode 100644 proto/lucidity/lucidity_grpc.pb.go delete mode 100644 proto/mettle/mettle.pb.go delete mode 100644 proto/purity/purity.pb.go create mode 100644 third_party/proto/cas/.gitignore delete mode 100644 third_party/proto/resourceusage/resourceusage.pb.go diff --git a/.gitignore b/.gitignore index 8f9e08ee..9652d1f3 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,5 @@ plz-out .plzconfig.local .idea *.sw? + +*.pb.go diff --git a/.plzconfig b/.plzconfig index 5098d621..e8526da3 100644 --- a/.plzconfig +++ b/.plzconfig @@ -3,6 +3,9 @@ version = >=17.0.0 [build] path = /usr/local/go/bin:/usr/local/bin:/usr/bin:/bin +LinkGeneratedSources = true +DownloadLinkable = true +UpdateGitignore = true [buildconfig] local-host = 127.0.0.1 @@ -27,8 +30,8 @@ moduledir = third_party/python [plugin "cc"] target = //plugins:cc -defaultoptcflags = --std=c99 -O3 -pipe -DNDEBUG -Wall -Werror -Wno-error=stringop-overflow -Wno-error=misleading-indentation -Wno-error=unknown-warning-option -defaultdbgcflags = --std=c99 -g3 -pipe -DDEBUG -Wall -Werror -Wno-error=stringop-overflow -Wno-error=misleading-indentation -Wno-error=unknown-warning-option +defaultoptcflags = --std=c99 -O3 -pipe -DNDEBUG -Wall -Werror -Wno-error=stringop-overflow -Wno-error=misleading-indentation +defaultdbgcflags = --std=c99 -g3 -pipe -DDEBUG -Wall -Werror -Wno-error=stringop-overflow -Wno-error=misleading-indentation [plugin "shell"] target = //plugins:shell diff --git a/ChangeLog b/ChangeLog index 9a871aba..c59beae0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Version 11.17.0 +--------------- + * Upgrade Go toolchain, packages and Please plugin + Version 11.16.9 --------------- * Apply defaultstatic = true to fix Mettle broken deployment diff --git a/VERSION b/VERSION index e1a99a93..6f51726c 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -11.16.9 +11.17.0 diff --git a/elan/rpc/BUILD b/elan/rpc/BUILD index 3ebac9f2..90ed1c8d 100644 --- a/elan/rpc/BUILD +++ b/elan/rpc/BUILD @@ -60,7 +60,7 @@ go_test( genrule( name = "test_data", cmd = [ - 'for i in `seq 1 10000`; do echo "$i ----------------------------------------- $i" >> "tmp.txt"; done', + 'for i in `seq 1 100000`; do echo "$i ----------------------------------------- $i" >> "tmp.txt"; done', 'HASH="`(command -v sha256sum >/dev/null 2>&1 && sha256sum tmp.txt || shasum -a 256 tmp.txt) | cut -c -64`"', 'PREFIX="${HASH:0:2}"', 'mkdir -p "data/cas/${PREFIX}" "data/zstd_cas/${PREFIX}"', diff --git a/elan/rpc/compression_test.go b/elan/rpc/compression_test.go index d2a959ca..e3bf92b0 100644 --- a/elan/rpc/compression_test.go +++ b/elan/rpc/compression_test.go @@ -20,9 +20,9 @@ var bsClient bs.ByteStreamClient const ( // These are determined empirically from the generated test files. - hash = "5201263d9a7365629360c09a9ab780a1c15f94aaf3b38874d41500df3e0be87f" - size = 517788 - ssize = "517788" + hash = "2e2595aaffe0987a183d3ba9a3c5d81c79d29f3f6e2b2dd47e628d6bf9b12725" + size = 5377790 + ssize = "5377790" name = "blobs/" + hash + "/" + ssize cname = "compressed-blobs/zstd/" + hash + "/" + ssize ) diff --git a/elan/rpc/rpc.go b/elan/rpc/rpc.go index 3f5afe71..7caefc07 100644 --- a/elan/rpc/rpc.go +++ b/elan/rpc/rpc.go @@ -630,6 +630,14 @@ func (s *server) QueryWriteStatus(ctx context.Context, req *bs.QueryWriteStatusR return nil, status.Errorf(codes.NotFound, "write %s not found", req.ResourceName) } +func (s *server) SpliceBlob(ctx context.Context, req *pb.SpliceBlobRequest) (*pb.SpliceBlobResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "not implemented") +} + +func (s *server) SplitBlob(ctx context.Context, req *pb.SplitBlobRequest) (*pb.SplitBlobResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "not implemented") +} + func (s *server) readBlob(ctx context.Context, key string, offset, length int64) (io.ReadCloser, error) { if length == 0 || strings.Contains(key, digest.Empty.Hash) { // Special case any empty read request diff --git a/flair/rpc/rpc.go b/flair/rpc/rpc.go index b958d2ed..dedac09a 100644 --- a/flair/rpc/rpc.go +++ b/flair/rpc/rpc.go @@ -406,6 +406,14 @@ func (s *server) GetTree(req *pb.GetTreeRequest, srv pb.ContentAddressableStorag return srv.Send(r) } +func (s *server) SpliceBlob(ctx context.Context, req *pb.SpliceBlobRequest) (*pb.SpliceBlobResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "not implemented") +} + +func (s *server) SplitBlob(ctx context.Context, req *pb.SplitBlobRequest) (*pb.SplitBlobResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "not implemented") +} + func (s *server) Read(req *bs.ReadRequest, srv bs.ByteStream_ReadServer) error { hash, err := s.bytestreamBlobName(req.ResourceName) if err != nil { diff --git a/go.mod b/go.mod index 45df2289..ef330f10 100644 --- a/go.mod +++ b/go.mod @@ -1,95 +1,110 @@ module github.com/thought-machine/please-servers -go 1.24.0 +go 1.25.8 + +ignore plz-out require ( - cloud.google.com/go/profiler v0.4.0 - cloud.google.com/go/pubsub v1.33.0 - cloud.google.com/go/storage v1.36.0 - github.com/bazelbuild/remote-apis v0.0.0-20230411132548-35aee1c4a425 - github.com/bazelbuild/remote-apis-sdks v0.0.0-20230419185642-269815af5db1 - github.com/dgraph-io/ristretto v0.1.1 + cloud.google.com/go/profiler v0.6.0 + cloud.google.com/go/pubsub v1.50.4 + cloud.google.com/go/storage v1.63.0 + github.com/bazelbuild/remote-apis v0.0.0-20260331222004-becdd8f9ff81 + github.com/bazelbuild/remote-apis-sdks v0.0.0-20260610142741-7ffd493e6686 + github.com/dgraph-io/ristretto v0.2.0 github.com/dustin/go-humanize v1.0.1 github.com/go-redis/redis/v8 v8.11.5 github.com/golang/protobuf v1.5.4 - github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus v1.0.0 - github.com/grpc-ecosystem/go-grpc-middleware/v2 v2.0.1 + github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus v1.1.0 + github.com/grpc-ecosystem/go-grpc-middleware/v2 v2.3.3 github.com/hashicorp/go-multierror v1.1.1 - github.com/hashicorp/go-retryablehttp v0.7.7 - github.com/klauspost/compress v1.17.4 - github.com/mostynb/go-grpc-compression v1.2.2 + github.com/hashicorp/go-retryablehttp v0.7.8 + github.com/klauspost/compress v1.19.0 + github.com/mostynb/go-grpc-compression v1.2.3 github.com/peterebden/go-cli-init/v4 v4.0.2 github.com/peterebden/go-copyfile v0.0.0-20200424115000-bc0baf74909c github.com/peterebden/go-sri v1.1.1 - github.com/prometheus/client_golang v1.18.0 - github.com/prometheus/common v0.45.0 + github.com/prometheus/client_golang v1.23.2 + github.com/prometheus/common v0.70.0 github.com/shirou/gopsutil v3.21.11+incompatible - github.com/sirupsen/logrus v1.9.3 + github.com/sirupsen/logrus v1.9.4 github.com/stretchr/testify v1.11.1 github.com/thought-machine/http-admin v1.1.1 - go.uber.org/automaxprocs v1.5.3 - gocloud.dev v0.36.0 - golang.org/x/crypto v0.46.0 - golang.org/x/exp v0.0.0-20240103183307-be819d1f06fc - golang.org/x/sync v0.19.0 - golang.org/x/time v0.5.0 - google.golang.org/api v0.155.0 - google.golang.org/genproto v0.0.0-20240102182953-50ed04b92917 - google.golang.org/genproto/googleapis/bytestream v0.0.0-20240102182953-50ed04b92917 - google.golang.org/genproto/googleapis/rpc v0.0.0-20251202230838-ff82c1b0f217 - google.golang.org/grpc v1.79.3 - google.golang.org/protobuf v1.36.10 + go.uber.org/automaxprocs v1.6.0 + gocloud.dev v0.46.0 + golang.org/x/crypto v0.54.0 + golang.org/x/exp v0.0.0-20260709172345-9ea1abe57597 + golang.org/x/sync v0.22.0 + golang.org/x/time v0.15.0 + google.golang.org/api v0.288.0 + google.golang.org/genproto v0.0.0-20260706201446-f0a921348800 + google.golang.org/genproto/googleapis/bytestream v0.0.0-20260706201446-f0a921348800 + google.golang.org/genproto/googleapis/rpc v0.0.0-20260706201446-f0a921348800 + google.golang.org/grpc v1.82.0 + google.golang.org/protobuf v1.36.11 gopkg.in/op/go-logging.v1 v1.0.0-20160211212156-b2cb9fa56473 ) require ( - cloud.google.com/go v0.111.0 // indirect + cel.dev/expr v0.25.2 // indirect + cloud.google.com/go v0.123.0 // indirect + cloud.google.com/go/auth v0.21.0 // indirect + cloud.google.com/go/auth/oauth2adapt v0.2.8 // indirect cloud.google.com/go/compute/metadata v0.9.0 // indirect - cloud.google.com/go/iam v1.1.5 // indirect - cloud.google.com/go/longrunning v0.5.4 // indirect + cloud.google.com/go/iam v1.11.0 // indirect + cloud.google.com/go/longrunning v1.2.0 // indirect + cloud.google.com/go/monitoring v1.29.0 // indirect + cloud.google.com/go/pubsub/v2 v2.6.1 // indirect + github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.34.0 // indirect + github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric v0.58.0 // indirect + github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.58.0 // indirect github.com/beorn7/perks v1.0.1 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect - github.com/davecgh/go-spew v1.1.1 // indirect + github.com/cncf/xds/go v0.0.0-20260202195803-dba9d589def2 // indirect + github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect - github.com/felixge/httpsnoop v1.0.4 // indirect + github.com/envoyproxy/go-control-plane/envoy v1.37.0 // indirect + github.com/envoyproxy/protoc-gen-validate v1.3.3 // indirect + github.com/felixge/httpsnoop v1.1.0 // indirect + github.com/go-jose/go-jose/v4 v4.1.4 // indirect github.com/go-logr/logr v1.4.3 // indirect github.com/go-logr/stdr v1.2.2 // indirect github.com/go-ole/go-ole v1.3.0 // indirect github.com/golang/glog v1.2.5 // indirect - github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect - github.com/google/pprof v0.0.0-20231229205709-960ae82b1e42 // indirect - github.com/google/s2a-go v0.1.7 // indirect + github.com/google/pprof v0.0.0-20260709232956-b9395ee17fa0 // indirect + github.com/google/s2a-go v0.1.9 // indirect github.com/google/uuid v1.6.0 // indirect - github.com/google/wire v0.5.0 // indirect - github.com/googleapis/enterprise-certificate-proxy v0.3.2 // indirect - github.com/googleapis/gax-go/v2 v2.12.0 // indirect + github.com/google/wire v0.7.0 // indirect + github.com/googleapis/enterprise-certificate-proxy v0.3.18 // indirect + github.com/googleapis/gax-go/v2 v2.23.0 // indirect github.com/gorilla/mux v1.8.1 // indirect github.com/hashicorp/errwrap v1.1.0 // indirect github.com/hashicorp/go-cleanhttp v0.5.2 // indirect - github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 // indirect - github.com/mostynb/zstdpool-syncpool v0.0.13 // indirect - github.com/pborman/uuid v1.2.1 // indirect + github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/pkg/xattr v0.4.9 // indirect - github.com/pmezard/go-difflib v1.0.0 // indirect - github.com/prometheus/client_model v0.5.0 // indirect - github.com/prometheus/procfs v0.12.0 // indirect - github.com/thought-machine/go-flags v1.6.3 // indirect - github.com/yusufpapurcu/wmi v1.2.3 // indirect - go.opencensus.io v0.24.0 // indirect + github.com/pkg/xattr v0.4.12 // indirect + github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10 // indirect + github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect + github.com/prometheus/client_model v0.6.2 // indirect + github.com/prometheus/procfs v0.21.1 // indirect + github.com/spiffe/go-spiffe/v2 v2.8.1 // indirect + github.com/thought-machine/go-flags v1.7.0 // indirect + github.com/yusufpapurcu/wmi v1.2.4 // indirect go.opentelemetry.io/auto/sdk v1.2.1 // indirect - go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.46.1 // indirect - go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.46.1 // indirect - go.opentelemetry.io/otel v1.39.0 // indirect - go.opentelemetry.io/otel/metric v1.39.0 // indirect - go.opentelemetry.io/otel/trace v1.39.0 // indirect - golang.org/x/net v0.48.0 // indirect - golang.org/x/oauth2 v0.34.0 // indirect - golang.org/x/sys v0.39.0 // indirect - golang.org/x/term v0.38.0 // indirect - golang.org/x/text v0.32.0 // indirect - golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20251202230838-ff82c1b0f217 // indirect + go.opentelemetry.io/contrib/detectors/gcp v1.44.0 // indirect + go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.69.0 // indirect + go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.69.0 // indirect + go.opentelemetry.io/otel v1.44.0 // indirect + go.opentelemetry.io/otel/metric v1.44.0 // indirect + go.opentelemetry.io/otel/sdk v1.44.0 // indirect + go.opentelemetry.io/otel/sdk/metric v1.44.0 // indirect + go.opentelemetry.io/otel/trace v1.44.0 // indirect + golang.org/x/net v0.57.0 // indirect + golang.org/x/oauth2 v0.36.0 // indirect + golang.org/x/sys v0.47.0 // indirect + golang.org/x/term v0.45.0 // indirect + golang.org/x/text v0.40.0 // indirect + golang.org/x/xerrors v0.0.0-20240903120638-7835f813f4da // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20260706201446-f0a921348800 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/go.sum b/go.sum index 129ac62a..8044d19d 100644 --- a/go.sum +++ b/go.sum @@ -1,107 +1,123 @@ -cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= -cloud.google.com/go v0.111.0 h1:YHLKNupSD1KqjDbQ3+LVdQ81h/UJbJyZG203cEfnQgM= -cloud.google.com/go v0.111.0/go.mod h1:0mibmpKP1TyOOFYQY5izo0LnT+ecvOQ0Sg3OdmMiNRU= +cel.dev/expr v0.25.2 h1:K6j46C81hXtZQfuX60cVWQFBJahKSE2gfRbNuvr5bFs= +cel.dev/expr v0.25.2/go.mod h1:hrXvqGP6G6gyx8UAHSHJ5RGk//1Oj5nXQ2NI02Nrsg4= +cloud.google.com/go v0.123.0 h1:2NAUJwPR47q+E35uaJeYoNhuNEM9kM8SjgRgdeOJUSE= +cloud.google.com/go v0.123.0/go.mod h1:xBoMV08QcqUGuPW65Qfm1o9Y4zKZBpGS+7bImXLTAZU= +cloud.google.com/go/auth v0.21.0 h1:g/QwYfYb2Ai6HH8oomAOyBaIHLbscZ4+T/F/f5JZHkE= +cloud.google.com/go/auth v0.21.0/go.mod h1:M9o2Oz+YI2jAfxewJgb1vyI3vceHF+eohmxyzmrl+9s= +cloud.google.com/go/auth/oauth2adapt v0.2.8 h1:keo8NaayQZ6wimpNSmW5OPc283g65QNIiLpZnkHRbnc= +cloud.google.com/go/auth/oauth2adapt v0.2.8/go.mod h1:XQ9y31RkqZCcwJWNSx2Xvric3RrU88hAYYbjDWYDL+c= cloud.google.com/go/compute/metadata v0.9.0 h1:pDUj4QMoPejqq20dK0Pg2N4yG9zIkYGdBtwLoEkH9Zs= cloud.google.com/go/compute/metadata v0.9.0/go.mod h1:E0bWwX5wTnLPedCKqk3pJmVgCBSM6qQI1yTBdEb3C10= -cloud.google.com/go/iam v1.1.5 h1:1jTsCu4bcsNsE4iiqNT5SHwrDRCfRmIaaaVFhRveTJI= -cloud.google.com/go/iam v1.1.5/go.mod h1:rB6P/Ic3mykPbFio+vo7403drjlgvoWfYpJhMXEbzv8= -cloud.google.com/go/longrunning v0.5.4 h1:w8xEcbZodnA2BbW6sVirkkoC+1gP8wS57EUUgGS0GVg= -cloud.google.com/go/longrunning v0.5.4/go.mod h1:zqNVncI0BOP8ST6XQD1+VcvuShMmq7+xFSzOL++V0dI= -cloud.google.com/go/profiler v0.4.0 h1:ZeRDZbsOBDyRG0OiK0Op1/XWZ3xeLwJc9zjkzczUxyY= -cloud.google.com/go/profiler v0.4.0/go.mod h1:RvPlm4dilIr3oJtAOeFQU9Lrt5RoySHSDj4pTd6TWeU= -cloud.google.com/go/pubsub v1.33.0 h1:6SPCPvWav64tj0sVX/+npCBKhUi/UjJehy9op/V3p2g= -cloud.google.com/go/pubsub v1.33.0/go.mod h1:f+w71I33OMyxf9VpMVcZbnG5KSUkCOUHYpFd5U1GdRc= -cloud.google.com/go/storage v1.36.0 h1:P0mOkAcaJxhCTvAkMhxMfrTKiNcub4YmmPBtlhAyTr8= -cloud.google.com/go/storage v1.36.0/go.mod h1:M6M/3V/D3KpzMTJyPOR/HU6n2Si5QdaXYEsng2xgOs8= -github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= +cloud.google.com/go/iam v1.11.0 h1:KieQ9Pb+LLPak1O3Rv3GgCxhnmkYf7Xyh0P5HfF1jFM= +cloud.google.com/go/iam v1.11.0/go.mod h1:KP+nKGugNJW4LcLx1uEZcq1ok5sQHFaQehQNl4QDgV4= +cloud.google.com/go/logging v1.18.0 h1:KhzZq+1cSkPH9YUaKLLhLtQxIHitVayBmk0sGfoM9+k= +cloud.google.com/go/logging v1.18.0/go.mod h1:ZGKnpBaURITh+g/uom2VhbiFoFWvejcrHPDhxFtU/gI= +cloud.google.com/go/longrunning v1.2.0 h1:WjYH3YHBGCxGJP9M4dWGHBfXr/cFIjMkNgWcJj7/iMM= +cloud.google.com/go/longrunning v1.2.0/go.mod h1:5KMQALFGOCtFoi2xSOA1u3H7WKlhmckgiyFw7+LGQp0= +cloud.google.com/go/monitoring v1.29.0 h1:AHhDsFaSax1/4k+qlIDX/SDGe6hggnfXJ9dkgD9qBPY= +cloud.google.com/go/monitoring v1.29.0/go.mod h1:72NOVjJXHY/HBfoLT0+qlCZBT059+9VXLeAnL2PeeVM= +cloud.google.com/go/profiler v0.6.0 h1:Vwxqgnp8CQwBNcKjO8luwLCh7qblEkcZCtMUvhU9Yik= +cloud.google.com/go/profiler v0.6.0/go.mod h1:cJV7Qfj0o9PAC7q/xQTkM6qn2FO9So3TFk4P5O5yLis= +cloud.google.com/go/pubsub v1.50.4 h1:mPvjbI9tbPtH3cYyDM/gX6/kRAy7qfglW4W+De8subs= +cloud.google.com/go/pubsub v1.50.4/go.mod h1:CBCG3lNP243mGNB8kTILs/Pd/gTV9a00kM1KjOtdxEk= +cloud.google.com/go/pubsub/v2 v2.6.1 h1:jX6gnC4n8BgYx6MOYICgbbaXZpr1vKeNOE3Bn17P5zg= +cloud.google.com/go/pubsub/v2 v2.6.1/go.mod h1:1y2lZnKfUFPZz0PU4YmXyk4lA11+xmYA42zbC32RkxQ= +cloud.google.com/go/storage v1.63.0 h1:hvXF2xfg9I32bjujggxgkEZn/Ej6sJ9pieFgeueBLrQ= +cloud.google.com/go/storage v1.63.0/go.mod h1:tirWVptrFNo5GEX2DQ47JooF7yaweJdAJ1hYAVMvKzE= +cloud.google.com/go/trace v1.16.0 h1:GmQovzFc5F0CNfl0VLgL64aoTtu7xsM0YajW2GlG9+E= +cloud.google.com/go/trace v1.16.0/go.mod h1:r+bdAn16dKLSV1G2D5v3e58IlQlizfxWrUfjx7kM7X0= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.34.0 h1:yzIYdwuro811Z27D3T80Wkd3rqZzb0K43nner7Eh1yE= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.34.0/go.mod h1:pJTkW8hEUIIi3Pf65lPZOnn4Y81yCllX6IWk2jNXdkM= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric v0.58.0 h1:ZYGajzJNcirVZpT1rltgf9iM+j9zZ4v8V9DrF+xKRJ8= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric v0.58.0/go.mod h1:PDQyYBOzGtQgvshQI//UiXyzuMHCz0ndyu+4W8X82vM= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/cloudmock v0.58.0 h1:IBF8BbhKJkMsON/eY+LMu3aF3XMiotCb9KvkUmEkOJo= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/cloudmock v0.58.0/go.mod h1:dzcEjy1WJ0Q4u9twNR3LcLhNoYMRCrMCMafpxa0TjPQ= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.58.0 h1:SBZzZCiPmDrUV7NSCWY54OnKikO/oTydPCvyEyYaDDE= +github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.58.0/go.mod h1:YqwkQPrWSC7+byyc1VlKbWLBF5JsW5IoL6xUkemYSXk= github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= -github.com/aws/aws-sdk-go v1.49.0 h1:g9BkW1fo9GqKfwg2+zCD+TW/D36Ux+vtfJ8guF4AYmY= -github.com/aws/aws-sdk-go v1.49.0/go.mod h1:LF8svs817+Nz+DmiMQKTO3ubZ/6IaTpq3TjupRn3Eqk= -github.com/aws/aws-sdk-go-v2 v1.24.0 h1:890+mqQ+hTpNuw0gGP6/4akolQkSToDJgHfQE7AwGuk= -github.com/aws/aws-sdk-go-v2 v1.24.0/go.mod h1:LNh45Br1YAkEKaAqvmE1m8FUx6a5b/V0oAKV7of29b4= -github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.5.4 h1:OCs21ST2LrepDfD3lwlQiOqIGp6JiEUqG84GzTDoyJs= -github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.5.4/go.mod h1:usURWEKSNNAcAZuzRn/9ZYPT8aZQkR7xcCtunK/LkJo= -github.com/aws/aws-sdk-go-v2/config v1.26.1 h1:z6DqMxclFGL3Zfo+4Q0rLnAZ6yVkzCRxhRMsiRQnD1o= -github.com/aws/aws-sdk-go-v2/config v1.26.1/go.mod h1:ZB+CuKHRbb5v5F0oJtGdhFTelmrxd4iWO1lf0rQwSAg= -github.com/aws/aws-sdk-go-v2/credentials v1.16.12 h1:v/WgB8NxprNvr5inKIiVVrXPuuTegM+K8nncFkr1usU= -github.com/aws/aws-sdk-go-v2/credentials v1.16.12/go.mod h1:X21k0FjEJe+/pauud82HYiQbEr9jRKY3kXEIQ4hXeTQ= -github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.10 h1:w98BT5w+ao1/r5sUuiH6JkVzjowOKeOJRHERyy1vh58= -github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.10/go.mod h1:K2WGI7vUvkIv1HoNbfBA1bvIZ+9kL3YVmWxeKuLQsiw= -github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.15.7 h1:FnLf60PtjXp8ZOzQfhJVsqF0OtYKQZWQfqOLshh8YXg= -github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.15.7/go.mod h1:tDVvl8hyU6E9B8TrnNrZQEVkQlB8hjJwcgpPhgtlnNg= -github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.9 h1:v+HbZaCGmOwnTTVS86Fleq0vPzOd7tnJGbFhP0stNLs= -github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.9/go.mod h1:Xjqy+Nyj7VDLBtCMkQYOw1QYfAEZCVLrfI0ezve8wd4= -github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.9 h1:N94sVhRACtXyVcjXxrwK1SKFIJrA9pOJ5yu2eSHnmls= -github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.9/go.mod h1:hqamLz7g1/4EJP+GH5NBhcUMLjW+gKLQabgyz6/7WAU= -github.com/aws/aws-sdk-go-v2/internal/ini v1.7.2 h1:GrSw8s0Gs/5zZ0SX+gX4zQjRnRsMJDJ2sLur1gRBhEM= -github.com/aws/aws-sdk-go-v2/internal/ini v1.7.2/go.mod h1:6fQQgfuGmw8Al/3M2IgIllycxV7ZW7WCdVSqfBeUiCY= -github.com/aws/aws-sdk-go-v2/internal/v4a v1.2.9 h1:ugD6qzjYtB7zM5PN/ZIeaAIyefPaD82G8+SJopgvUpw= -github.com/aws/aws-sdk-go-v2/internal/v4a v1.2.9/go.mod h1:YD0aYBWCrPENpHolhKw2XDlTIWae2GKXT1T4o6N6hiM= -github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.4 h1:/b31bi3YVNlkzkBrm9LfpaKoaYZUxIAj4sHfOTmLfqw= -github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.4/go.mod h1:2aGXHFmbInwgP9ZfpmdIfOELL79zhdNYNmReK8qDfdQ= -github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.2.9 h1:/90OR2XbSYfXucBMJ4U14wrjlfleq/0SB6dZDPncgmo= -github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.2.9/go.mod h1:dN/Of9/fNZet7UrQQ6kTDo/VSwKPIq94vjlU16bRARc= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.9 h1:Nf2sHxjMJR8CSImIVCONRi4g0Su3J+TSTbS7G0pUeMU= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.9/go.mod h1:idky4TER38YIjr2cADF1/ugFMKvZV7p//pVeV5LZbF0= -github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.16.9 h1:iEAeF6YC3l4FzlJPP9H3Ko1TXpdjdqWffxXjp8SY6uk= -github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.16.9/go.mod h1:kjsXoK23q9Z/tLBrckZLLyvjhZoS+AGrzqzUfEClvMM= -github.com/aws/aws-sdk-go-v2/service/s3 v1.47.5 h1:Keso8lIOS+IzI2MkPZyK6G0LYcK3My2LQ+T5bxghEAY= -github.com/aws/aws-sdk-go-v2/service/s3 v1.47.5/go.mod h1:vADO6Jn+Rq4nDtfwNjhgR84qkZwiC6FqCaXdw/kYwjA= -github.com/aws/aws-sdk-go-v2/service/sso v1.18.5 h1:ldSFWz9tEHAwHNmjx2Cvy1MjP5/L9kNoR0skc6wyOOM= -github.com/aws/aws-sdk-go-v2/service/sso v1.18.5/go.mod h1:CaFfXLYL376jgbP7VKC96uFcU8Rlavak0UlAwk1Dlhc= -github.com/aws/aws-sdk-go-v2/service/ssooidc v1.21.5 h1:2k9KmFawS63euAkY4/ixVNsYYwrwnd5fIvgEKkfZFNM= -github.com/aws/aws-sdk-go-v2/service/ssooidc v1.21.5/go.mod h1:W+nd4wWDVkSUIox9bacmkBP5NMFQeTJ/xqNabpzSR38= -github.com/aws/aws-sdk-go-v2/service/sts v1.26.5 h1:5UYvv8JUvllZsRnfrcMQ+hJ9jNICmcgKPAO1CER25Wg= -github.com/aws/aws-sdk-go-v2/service/sts v1.26.5/go.mod h1:XX5gh4CB7wAs4KhcF46G6C8a2i7eupU19dcAAE+EydU= -github.com/aws/smithy-go v1.19.0 h1:KWFKQV80DpP3vJrrA9sVAHQ5gc2z8i4EzrLhLlWXcBM= -github.com/aws/smithy-go v1.19.0/go.mod h1:NukqUGpCZIILqqiV0NIjeFh24kd/FAa4beRb6nbIUPE= -github.com/bazelbuild/remote-apis v0.0.0-20230411132548-35aee1c4a425 h1:Lj8uXWW95oXyYguUSdQDvzywQb4f0jbJWsoLPQWAKTY= -github.com/bazelbuild/remote-apis v0.0.0-20230411132548-35aee1c4a425/go.mod h1:ry8Y6CkQqCVcYsjPOlLXDX2iRVjOnjogdNwhvHmRcz8= +github.com/aws/aws-sdk-go-v2 v1.41.9 h1:/rYeyO2+HrMztAmxAq9++XJtFMqSIpSsNA0yDGALYq4= +github.com/aws/aws-sdk-go-v2 v1.41.9/go.mod h1:+HsoOEX80qAVUitj1A2DhCNTjmb3edVyuDypb6LNEeo= +github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.7.11 h1:h5+3VT69KUBK24grGuuA5saDJTj2IIjLb9au668Fo5I= +github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.7.11/go.mod h1:dnakxebH6UwFvcvujL0LVggYQ8nEvBGjU4G/V79Nv94= +github.com/aws/aws-sdk-go-v2/config v1.32.20 h1:8VMDnWc/kEzxsI/1ngGM9mG81a8IGmIHD8KLcYGwagc= +github.com/aws/aws-sdk-go-v2/config v1.32.20/go.mod h1:PuwEpciweIXGULWeOeSTXtSbH4CW9mWdWrhdCKQI1sM= +github.com/aws/aws-sdk-go-v2/credentials v1.19.19 h1:yuFzSV1U0aRNYCQGVaTY2zW2M/L93pYHnXnrJUphYhU= +github.com/aws/aws-sdk-go-v2/credentials v1.19.19/go.mod h1:7y63L1kGzeoDlJaQ3Z578KrnmfBut96JjvJUzGwR+YE= +github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.25 h1:0w6dCiO8iez+YKwRhRBlL1CH/E3GTfdkuzrwj1by8vo= +github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.25/go.mod h1:9FDWUothyr5RCRAHc45XOiVCzUR8n/IhCYX+uVqw6vk= +github.com/aws/aws-sdk-go-v2/feature/s3/transfermanager v0.2.3 h1:w5OoDiMN6x53ROmiIImGzmVcxXv2q1GXY+aKV4WAJYM= +github.com/aws/aws-sdk-go-v2/feature/s3/transfermanager v0.2.3/go.mod h1:dAhgYp776bX3LuWvnSCFwQEjNs6fuFg7YXIy5PXcP3Q= +github.com/aws/aws-sdk-go-v2/internal/configsources v1.4.25 h1:Uii3frf9ztec/ABM2/FSH9/z7PLzxfpG8h4RpkUFflQ= +github.com/aws/aws-sdk-go-v2/internal/configsources v1.4.25/go.mod h1:G6kntsA2GorAxDPbap6xgB2F+amSLUF8GJTi7PUoX44= +github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.7.25 h1:r1+/l6m+WaUJF9HISEsNOLHSNj5EXYQxK8VX6Cz9NlA= +github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.7.25/go.mod h1:cKf+D+NMDK1LndD7BowHbBZPgR9V0/5HubH0PFWvA+c= +github.com/aws/aws-sdk-go-v2/internal/v4a v1.4.26 h1:A1PmWU2zfkIm9EyFlJncFXL4W4phML+h8KjltUsCvNQ= +github.com/aws/aws-sdk-go-v2/internal/v4a v1.4.26/go.mod h1:dY4MRzXEizrD4hqtpKvWVGPX7QleSGGVY+EBolo1RmM= +github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.13.10 h1:d5/908OJ4bXg8lyjeMPvXetEKqoDoLi5Owy1zNue3yg= +github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.13.10/go.mod h1:a57l7Hwh+FWI+we50g5NPJHYUKeJKfXbc4w8SyXu8Ig= +github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.9.18 h1:W/EyPFl9A5rXrtoilfwHYEvzHER+K4SpBPtMXi24Mos= +github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.9.18/go.mod h1:UG50K+pvd/uy6xExbobg0rjqFBFZe6I3l75EPDZw4tg= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.13.25 h1:dD3dhHNglpd98gs72my22Ndqi1hqQGllFFg1F+twfxg= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.13.25/go.mod h1:0yAbjPfd64gG7mj85RW+fMEYdfBgCRZw8g/oWcL1pjc= +github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.19.25 h1:2pQEbwf+/6EDbiit/GcBE2K4IUpMZymaA0kOz3xK978= +github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.19.25/go.mod h1:KvT6NCcQ0EZ+ZkVRrlBMt04Po3ok23YELEp7WimhLhM= +github.com/aws/aws-sdk-go-v2/service/s3 v1.102.2 h1:ie4ElCmUKS26pzrZcIk/lmt4yWjAqLLcawstyQCh298= +github.com/aws/aws-sdk-go-v2/service/s3 v1.102.2/go.mod h1:zjsomFeX5duj+4PlMB+o4JoWTIx+G0XMyzjYrUbQkN0= +github.com/aws/aws-sdk-go-v2/service/signin v1.1.1 h1:1VwbP3qMNfxUDEXWki4rCE5iA+44VA1lokTz9HasGzw= +github.com/aws/aws-sdk-go-v2/service/signin v1.1.1/go.mod h1:vUtyoSj0OPji3kjIVSc/GlKuWEiL33f/WFxl6dmpy/A= +github.com/aws/aws-sdk-go-v2/service/sso v1.30.19 h1:N6pIsdFOW1Kd9S4KyFKXdGRBojPPxkP32+uHFWLv4Hc= +github.com/aws/aws-sdk-go-v2/service/sso v1.30.19/go.mod h1:3gt5WJArFooNmyLONS+h/R4J+o86II8du38IgCwj9dE= +github.com/aws/aws-sdk-go-v2/service/ssooidc v1.36.2 h1:hc+lBYiiTr8Zk4MTzIsQ92MeDWCIDvWGmzKUWOaBcOg= +github.com/aws/aws-sdk-go-v2/service/ssooidc v1.36.2/go.mod h1:hU6fqB3OJA6/ePheD47LQnxvjYk6br6PtQxs+Q9ojvk= +github.com/aws/aws-sdk-go-v2/service/sts v1.42.3 h1:ErklX/7uhSbkAAeyQD/Y1OoQ9hO3SJXQNEgksORW3Js= +github.com/aws/aws-sdk-go-v2/service/sts v1.42.3/go.mod h1:ULe4HCzfKPiR6R3HEurE3b1upEkuk8AkMrOKtaOxKO8= +github.com/aws/smithy-go v1.26.0 h1:9ouqbi+NyKP7fV3Te7UElCwdAb6Y8uk7LGwPE5tVe/s= +github.com/aws/smithy-go v1.26.0/go.mod h1:YE2RhdIuDbA5E5bTdciG9KrW3+TiEONeUWCqxX9i1Fc= +github.com/bazelbuild/remote-apis v0.0.0-20260331222004-becdd8f9ff81 h1:vAHLeMHi+CywqDw5V/s5mHj1ahkhYMRtRFqWe18F0kc= +github.com/bazelbuild/remote-apis v0.0.0-20260331222004-becdd8f9ff81/go.mod h1:7Tyi5f5+hG+6LwC0X/G/EjCQS4ZYJUcpY0geSsU2NAw= +github.com/bazelbuild/remote-apis-sdks v0.0.0-20260610142741-7ffd493e6686 h1:u0Z7+bxKIg71P2lDGhuCqIFqEjv73KwCbpPUyujHK1Y= +github.com/bazelbuild/remote-apis-sdks v0.0.0-20260610142741-7ffd493e6686/go.mod h1:TJlbnIaiJQr3pgZ+EBscj/bpu9wBawCHcqd+YAgumOs= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= -github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= -github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= -github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= -github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= -github.com/cncf/xds/go v0.0.0-20251210132809-ee656c7534f5 h1:6xNmx7iTtyBRev0+D/Tv1FZd4SCg8axKApyNyRsAt/w= -github.com/cncf/xds/go v0.0.0-20251210132809-ee656c7534f5/go.mod h1:KdCmV+x/BuvyMxRnYBlmVaq4OLiKW6iRQfvC62cvdkI= +github.com/cncf/xds/go v0.0.0-20260202195803-dba9d589def2 h1:aBangftG7EVZoUb69Os8IaYg++6uMOdKK83QtkkvJik= +github.com/cncf/xds/go v0.0.0-20260202195803-dba9d589def2/go.mod h1:qwXFYgsP6T7XnJtbKlf1HP8AjxZZyzxMmc+Lq5GjlU4= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/dgraph-io/ristretto v0.1.1 h1:6CWw5tJNgpegArSHpNHJKldNeq03FQCwYvfMVWajOK8= -github.com/dgraph-io/ristretto v0.1.1/go.mod h1:S1GPSBCYCIhmVNfcth17y2zZtQT6wzkzgwUve0VDWWA= -github.com/dgryski/go-farm v0.0.0-20190423205320-6a90982ecee2 h1:tdlZCpZ/P9DhczCTSixgIKmwPv6+wP5DGjqLYw5SUiA= -github.com/dgryski/go-farm v0.0.0-20190423205320-6a90982ecee2/go.mod h1:SqUrOPUnsFjfmXRMNPybcSiG0BgUW2AuFH8PAnS2iTw= +github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM= +github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/dgraph-io/ristretto v0.2.0 h1:XAfl+7cmoUDWW/2Lx8TGZQjjxIQ2Ley9DSf52dru4WE= +github.com/dgraph-io/ristretto v0.2.0/go.mod h1:8uBHCU/PBV4Ag0CJrP47b9Ofby5dqWNh4FicAdoqFNU= +github.com/dgryski/go-farm v0.0.0-20200201041132-a6ae2369ad13 h1:fAjc9m62+UWV/WAFKLNi6ZS0675eEUC9y3AlwSbQu1Y= +github.com/dgryski/go-farm v0.0.0-20200201041132-a6ae2369ad13/go.mod h1:SqUrOPUnsFjfmXRMNPybcSiG0BgUW2AuFH8PAnS2iTw= github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f h1:lO4WD4F/rVNCu3HqELle0jiPLLBs70cWOduZpkS1E78= github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f/go.mod h1:cuUVRXasLTGF7a8hSLbxyZXjz+1KgoB3wDUb6vlszIc= github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= github.com/dustin/go-humanize v1.0.1 h1:GzkhY7T5VNhEkwH0PVJgjz+fX1rhBrR7pRT3mDkpeCY= github.com/dustin/go-humanize v1.0.1/go.mod h1:Mu1zIs6XwVuF/gI1OepvI0qD18qycQx+mFykh5fBlto= -github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= -github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= -github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= -github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= -github.com/envoyproxy/go-control-plane v0.9.9-0.20210217033140-668b12f5399d/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= github.com/envoyproxy/go-control-plane v0.14.0 h1:hbG2kr4RuFj222B6+7T83thSPqLjwBIfQawTkC++2HA= -github.com/envoyproxy/go-control-plane/envoy v1.36.0 h1:yg/JjO5E7ubRyKX3m07GF3reDNEnfOboJ0QySbH736g= -github.com/envoyproxy/go-control-plane/envoy v1.36.0/go.mod h1:ty89S1YCCVruQAm9OtKeEkQLTb+Lkz0k8v9W0Oxsv98= -github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= -github.com/envoyproxy/protoc-gen-validate v1.3.0 h1:TvGH1wof4H33rezVKWSpqKz5NXWg5VPuZ0uONDT6eb4= -github.com/envoyproxy/protoc-gen-validate v1.3.0/go.mod h1:HvYl7zwPa5mffgyeTUHA9zHIH36nmrm7oCbo4YKoSWA= +github.com/envoyproxy/go-control-plane v0.14.0/go.mod h1:NcS5X47pLl/hfqxU70yPwL9ZMkUlwlKxtAohpi2wBEU= +github.com/envoyproxy/go-control-plane/envoy v1.37.0 h1:u3riX6BoYRfF4Dr7dwSOroNfdSbEPe9Yyl09/B6wBrQ= +github.com/envoyproxy/go-control-plane/envoy v1.37.0/go.mod h1:DReE9MMrmecPy+YvQOAOHNYMALuowAnbjjEMkkWOi6A= +github.com/envoyproxy/go-control-plane/ratelimit v0.1.0 h1:/G9QYbddjL25KvtKTv3an9lx6VBE2cnb8wp1vEGNYGI= +github.com/envoyproxy/go-control-plane/ratelimit v0.1.0/go.mod h1:Wk+tMFAFbCXaJPzVVHnPgRKdUdwW/KdbRt94AzgRee4= +github.com/envoyproxy/protoc-gen-validate v1.3.3 h1:MVQghNeW+LZcmXe7SY1V36Z+WFMDjpqGAGacLe2T0ds= +github.com/envoyproxy/protoc-gen-validate v1.3.3/go.mod h1:TsndJ/ngyIdQRhMcVVGDDHINPLWB7C82oDArY51KfB0= github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= github.com/fatih/color v1.16.0/go.mod h1:fL2Sau1YI5c0pdGEVCbKQbLXB6edEj1ZgiY4NijnWvE= -github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= -github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= -github.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nosvA= -github.com/fsnotify/fsnotify v1.7.0/go.mod h1:40Bi/Hjc2AVfZrqy+aj+yEI+/bRxZnMJyTJwOpGvigM= +github.com/felixge/httpsnoop v1.1.0 h1:3YtUj32ZZkqZtt3sZZsClsymw/QDuVfpNhoA31zeORc= +github.com/felixge/httpsnoop v1.1.0/go.mod h1:Zqxgdd+1Rkcz8euOqdr7lqgCRJztwr5hp9vDSi5UZCE= +github.com/fsnotify/fsnotify v1.9.0 h1:2Ml+OJNzbYCTzsxtv8vKSFD9PbJjmhYF14k/jKC7S9k= +github.com/fsnotify/fsnotify v1.9.0/go.mod h1:8jBTzvmWwFyi3Pb8djgCCO5IBqzKJ/Jwo8TRcHyHii0= +github.com/go-jose/go-jose/v4 v4.1.4 h1:moDMcTHmvE6Groj34emNPLs/qtYXRVcd6S7NHbHz3kA= +github.com/go-jose/go-jose/v4 v4.1.4/go.mod h1:x4oUasVrzR7071A4TnHLGSPpNOm2a21K9Kf04k1rs08= github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= github.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= @@ -118,68 +134,45 @@ github.com/go-redis/redis/v8 v8.11.5 h1:AcZZR7igkdvfVmQTPnu9WE37LRrO/YrBH5zWyjDC github.com/go-redis/redis/v8 v8.11.5/go.mod h1:gREzHqY1hg6oD9ngVRbLStwAWKhA0FEgq8Jd4h5lpwo= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= -github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= github.com/golang/glog v1.2.5 h1:DrW6hGnjIhtvhOIiAKT6Psh/Kd/ldepEa81DKeiRJ5I= github.com/golang/glog v1.2.5/go.mod h1:6AhwSGph0fcJtXVM/PEHPqZlFeoLxhs7/t5UDAwmO+w= -github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= -github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da h1:oI5xCqsCo564l8iNU+DwB5epxmsaqB+rhGL0m5jtYqE= -github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= -github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= -github.com/golang/mock v1.6.0 h1:ErTB+efbowRARo13NNdxyJji2egdxLGQhRaY+DUumQc= -github.com/golang/mock v1.6.0/go.mod h1:p6yTPP+5HYm5mzsMV8JkE6ZKdX+/wYM6Hr+LicevLPs= +github.com/golang/mock v1.7.0-rc.1 h1:YojYx61/OLFsiv6Rw1Z96LpldJIy31o+UHmwAUMJ6/U= +github.com/golang/mock v1.7.0-rc.1/go.mod h1:s42URUywIqd+OcERslBJvOjepvNymP31m3q8d/GkuRs= github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= -github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8= -github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA= -github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs= -github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod h1:WU3c8KckQ9AFe+yFwt9sWVRKCVIyN9cPHBJSNnbL67w= -github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0= -github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QDs8UjoX8= -github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= -github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= -github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= -github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek= github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps= -github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= -github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.3/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8= github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU= -github.com/google/go-replayers/grpcreplay v1.1.0 h1:S5+I3zYyZ+GQz68OfbURDdt/+cSMqCK1wrvNx7WBzTE= -github.com/google/go-replayers/grpcreplay v1.1.0/go.mod h1:qzAvJ8/wi57zq7gWqaE6AwLM6miiXUQwP1S+I9icmhk= +github.com/google/go-replayers/grpcreplay v1.3.0 h1:1Keyy0m1sIpqstQmgz307zhiJ1pV4uIlFds5weTmxbo= +github.com/google/go-replayers/grpcreplay v1.3.0/go.mod h1:v6NgKtkijC0d3e3RW8il6Sy5sqRVUwoQa4mHOGEy8DI= github.com/google/go-replayers/httpreplay v1.2.0 h1:VM1wEyyjaoU53BwrOnaf9VhAyQQEEioJvFYxYcLRKzk= github.com/google/go-replayers/httpreplay v1.2.0/go.mod h1:WahEFFZZ7a1P4VM1qEeHy+tME4bwyqPcwWbNlUI1Mcg= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= -github.com/google/martian/v3 v3.3.2 h1:IqNFLAmvJOgVlpdEBiQbDc2EwKW77amAycfTuWKdfvw= -github.com/google/martian/v3 v3.3.2/go.mod h1:oBOf6HBosgwRXnUGWUB05QECsc6uvmMiJ3+6W4l/CUk= -github.com/google/pprof v0.0.0-20231229205709-960ae82b1e42 h1:dHLYa5D8/Ta0aLR2XcPsrkpAgGeFs6thhMcQK0oQ0n8= -github.com/google/pprof v0.0.0-20231229205709-960ae82b1e42/go.mod h1:czg5+yv1E0ZGTi6S6vVK1mke0fV+FaUhNGcd6VRS9Ik= -github.com/google/s2a-go v0.1.7 h1:60BLSyTrOV4/haCDW4zb1guZItoSq8foHCXrAnjBo/o= -github.com/google/s2a-go v0.1.7/go.mod h1:50CgR4k1jNlWBu4UfS4AcfhVe1r6pdZPygJ3R8F0Qdw= -github.com/google/subcommands v1.0.1/go.mod h1:ZjhPrFU+Olkh9WazFPsl27BQ4UPiG37m3yTrtFlrHVk= -github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/martian/v3 v3.3.3 h1:DIhPTQrbPkgs2yJYdXU/eNACCG5DVQjySNRNlflZ9Fc= +github.com/google/martian/v3 v3.3.3/go.mod h1:iEPrYcgCF7jA9OtScMFQyAlZZ4YXTKEtJ1E6RWzmBA0= +github.com/google/pprof v0.0.0-20260709232956-b9395ee17fa0 h1:du0WGc8xSKq/++e0cglxhS/mXVqsR7+c7jLEi5Vqduw= +github.com/google/pprof v0.0.0-20260709232956-b9395ee17fa0/go.mod h1:MxpfABSjhmINe3F1It9d+8exIHFvUqtLIRCdOGNXqiI= +github.com/google/s2a-go v0.1.9 h1:LGD7gtMgezd8a/Xak7mEWL0PjoTQFvpRudN895yqKW0= +github.com/google/s2a-go v0.1.9/go.mod h1:YA0Ei2ZQL3acow2O62kdp9UlnvMmU7kA6Eutn0dXayM= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/google/wire v0.5.0 h1:I7ELFeVBr3yfPIcc8+MWvrjk+3VjbcSzoXm3JVa+jD8= -github.com/google/wire v0.5.0/go.mod h1:ngWDr9Qvq3yZA10YrxfyGELY/AFWGVpy9c1LTRi1EoU= -github.com/googleapis/enterprise-certificate-proxy v0.3.2 h1:Vie5ybvEvT75RniqhfFxPRy3Bf7vr3h0cechB90XaQs= -github.com/googleapis/enterprise-certificate-proxy v0.3.2/go.mod h1:VLSiSSBs/ksPL8kq3OBOQ6WRI2QnaFynd1DCjZ62+V0= -github.com/googleapis/gax-go/v2 v2.12.0 h1:A+gCJKdRfqXkr+BIRGtZLibNXf0m1f9E4HG56etFpas= -github.com/googleapis/gax-go/v2 v2.12.0/go.mod h1:y+aIqrI5eb1YGMVJfuV3185Ts/D7qKpsEkdD5+I6QGU= +github.com/google/wire v0.7.0 h1:JxUKI6+CVBgCO2WToKy/nQk0sS+amI9z9EjVmdaocj4= +github.com/google/wire v0.7.0/go.mod h1:n6YbUQD9cPKTnHXEBN2DXlOp/mVADhVErcMFb0v3J18= +github.com/googleapis/enterprise-certificate-proxy v0.3.18 h1:hvVi34VucdrV1IIsiWuqYM8kutw/92MxNEFxCJZEh0k= +github.com/googleapis/enterprise-certificate-proxy v0.3.18/go.mod h1:rSEsBUemEBZEexP2y6jPp16LUmUbjmSbcPMQizR0o4k= +github.com/googleapis/gax-go/v2 v2.23.0 h1:Tchl7qkvE7Ip3y+ztvNufYFvkfqTe7NfLTYGIdJRLuE= +github.com/googleapis/gax-go/v2 v2.23.0/go.mod h1:rBQKOVJCdb8IFEzg+FCwlt1LP/xMDGuqUXhUG+XMXEg= github.com/gorilla/mux v1.7.4/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So= github.com/gorilla/mux v1.8.1 h1:TuBL49tXwgrFYWhqrNgrUNEY92u81SPhu7sTdzQEiWY= github.com/gorilla/mux v1.8.1/go.mod h1:AKf9I4AEqPTmMytcMc0KkNouC66V3BtZ4qD5fmWSiMQ= -github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus v1.0.0 h1:f4tggROQKKcnh4eItay6z/HbHLqghBxS8g7pyMhmDio= -github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus v1.0.0/go.mod h1:hKAkSgNkL0FII46ZkJcpVEAai4KV+swlIWCKfekd1pA= -github.com/grpc-ecosystem/go-grpc-middleware/v2 v2.0.1 h1:HcUWd006luQPljE73d5sk+/VgYPGUReEVz2y1/qylwY= -github.com/grpc-ecosystem/go-grpc-middleware/v2 v2.0.1/go.mod h1:w9Y7gY31krpLmrVU5ZPG9H7l9fZuRu5/3R3S3FMtVQ4= +github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus v1.1.0 h1:QGLs/O40yoNK9vmy4rhUGBVyMf1lISBGtXRpsu/Qu/o= +github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus v1.1.0/go.mod h1:hM2alZsMUni80N33RBe6J0e423LB+odMj7d3EMP9l20= +github.com/grpc-ecosystem/go-grpc-middleware/v2 v2.3.3 h1:B+8ClL/kCQkRiU82d9xajRPKYMrB7E0MbtzWVi1K4ns= +github.com/grpc-ecosystem/go-grpc-middleware/v2 v2.3.3/go.mod h1:NbCUVmiS4foBGBHOYlCT25+YmGpJ32dZPi75pGEUpj4= github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I= github.com/hashicorp/errwrap v1.1.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= @@ -189,16 +182,14 @@ github.com/hashicorp/go-hclog v1.6.3 h1:Qr2kF+eVWjTiYmU7Y31tYlP1h0q/X3Nl3tPGdaB1 github.com/hashicorp/go-hclog v1.6.3/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M= github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo= github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM= -github.com/hashicorp/go-retryablehttp v0.7.7 h1:C8hUCYzor8PIfXHa4UrZkU4VvK8o9ISHxT2Q8+VepXU= -github.com/hashicorp/go-retryablehttp v0.7.7/go.mod h1:pkQpWZeYWskR+D1tR2O5OcBFOxfA7DoAO6xtkuQnHTk= +github.com/hashicorp/go-retryablehttp v0.7.8 h1:ylXZWnqa7Lhqpk0L1P1LzDtGcCR0rPVUrx/c8Unxc48= +github.com/hashicorp/go-retryablehttp v0.7.8/go.mod h1:rjiScheydd+CxvumBsIrFKlx3iS0jrZ7LvzFGFmuKbw= github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= -github.com/jmespath/go-jmespath v0.4.0 h1:BEgLn5cpjn8UN1mAw4NjwDrS35OdebyEtFe+9YPoQUg= -github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo= github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= github.com/json-iterator/go v1.1.9/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= -github.com/klauspost/compress v1.17.4 h1:Ej5ixsIri7BrIjBkRZLTo6ghwrEtHFk7ijlczPW4fZ4= -github.com/klauspost/compress v1.17.4/go.mod h1:/dCuZOvVtNoHsyb+cuJD3itjs3NbnF6KH9zAO4BDxPM= +github.com/klauspost/compress v1.19.0 h1:sXLILfc9jV2QYWkzFOPWStmcUVH2RHEB1JCdY2oVvCQ= +github.com/klauspost/compress v1.19.0/go.mod h1:cwPg85FWrGar70rWktvGQj8/hthj3wpl0PGDogxkrSQ= github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= @@ -208,21 +199,21 @@ github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= +github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc= +github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw= github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA= github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg= github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= -github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 h1:jWpvCLoY8Z/e3VKvlsiIGKtc+UG6U5vzxaoagmhXfyg= -github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0/go.mod h1:QUyp042oQthUoa9bqDv0ER0wrtXnBruoNd7aNjkbP+k= github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/mostynb/go-grpc-compression v1.2.2 h1:XaDbnRvt2+1vgr0b/l0qh4mJAfIxE0bKXtz2Znl3GGI= -github.com/mostynb/go-grpc-compression v1.2.2/go.mod h1:GOCr2KBxXcblCuczg3YdLQlcin1/NfyDA348ckuCH6w= -github.com/mostynb/zstdpool-syncpool v0.0.13 h1:AIzAvQ9hNum4Fh5jYXyfZTd2aDi1leq7grKDkVZX4+s= -github.com/mostynb/zstdpool-syncpool v0.0.13/go.mod h1:pbt8qOdq6wX5jrUsRI9UmBvAnjToEgVQC3H1pwJwktM= +github.com/mostynb/go-grpc-compression v1.2.3 h1:42/BKWMy0KEJGSdWvzqIyOZ95YcR9mLPqKctH7Uo//I= +github.com/mostynb/go-grpc-compression v1.2.3/go.mod h1:AghIxF3P57umzqM9yz795+y1Vjs47Km/Y2FE6ouQ7Lg= +github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= +github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= github.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+AU= @@ -230,8 +221,6 @@ github.com/onsi/ginkgo v1.16.5 h1:8xi0RTUf59SOSfEtZMvwTvXYMzG4gV23XVHOZiXNtnE= github.com/onsi/ginkgo v1.16.5/go.mod h1:+E8gABHa3K6zRBolWtd+ROzc/U5bkGt0FwiG042wbpU= github.com/onsi/gomega v1.18.1 h1:M1GfJqGRrBrrGGsbxzV5dqM2U2ApXefZCQpkukxYRLE= github.com/onsi/gomega v1.18.1/go.mod h1:0q+aL8jAiMXy9hbwj2mr5GziHiwhAIQpFmmtT5hitRs= -github.com/pborman/uuid v1.2.1 h1:+ZZIw58t/ozdjRaXh/3awHfmWRbzYxJoAdNJxe/3pvw= -github.com/pborman/uuid v1.2.1/go.mod h1:X/NO0urCmaxf9VXbdlT7C2Yzkj2IKimNn4k+gtPdI/k= github.com/peterebden/go-cli-init v1.3.1-0.20200329085717-d04cad1849c3/go.mod h1:r5Y+QR+hIBbN/5wpBqyzlUFf5oB7RgMKw0FaXLJj0D0= github.com/peterebden/go-cli-init/v4 v4.0.2 h1:55ixVScQBS8LaND+C5h5/8x1B/OWYqlGhJvoNzzOzg0= github.com/peterebden/go-cli-init/v4 v4.0.2/go.mod h1:/IxPVIqMNfdW6QXCapCvM5S87yqWC0v2r0zV60pzp28= @@ -239,136 +228,113 @@ github.com/peterebden/go-copyfile v0.0.0-20200424115000-bc0baf74909c h1:nfjG02IJ github.com/peterebden/go-copyfile v0.0.0-20200424115000-bc0baf74909c/go.mod h1:HRIMlnGKKev+xk7cb/nfjbV0nuB2gcfTpRRRQBa6Tew= github.com/peterebden/go-sri v1.1.1 h1:KK8yZ5/NX8YzWUY9QvhrP220QsvEKANLLAgvw35AkyU= github.com/peterebden/go-sri v1.1.1/go.mod h1:KIRxtog35NfDWec5LV/iBqqfOEPcMpePZLc7EPE6goQ= -github.com/peterebden/remote-apis-sdks v0.0.0-20230519151942-2a9420921957 h1:0bVOFvzOMhUkJJKNqYvdQroaXWKqROy/cSIGVxeQbhI= -github.com/peterebden/remote-apis-sdks v0.0.0-20230519151942-2a9420921957/go.mod h1:fUQHOmdjqFNgE7CGmwwqcM0a4f/8/oy23iDvdvELExY= github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= -github.com/pkg/xattr v0.4.9 h1:5883YPCtkSd8LFbs13nXplj9g9tlrwoJRjgpgMu1/fE= -github.com/pkg/xattr v0.4.9/go.mod h1:di8WF84zAKk8jzR1UBTEWh9AUlIZZ7M/JNt8e9B6ktU= +github.com/pkg/xattr v0.4.12 h1:rRTkSyFNTRElv6pkA3zpjHpQ90p/OdHQC1GmGh1aTjM= +github.com/pkg/xattr v0.4.12/go.mod h1:di8WF84zAKk8jzR1UBTEWh9AUlIZZ7M/JNt8e9B6ktU= github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10 h1:GFCKgmp0tecUJ0sJuv4pzYCqS9+RGSn52M3FUwPs+uo= github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10/go.mod h1:t/avpk3KcrXxUnYOhZhMXJlSEyie6gQbtLq5NM3loB8= -github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= +github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/prashantv/gostub v1.1.0 h1:BTyx3RfQjRHnUWaGF9oQos79AlQ5k8WNktv7VGvVH4g= github.com/prashantv/gostub v1.1.0/go.mod h1:A5zLQHz7ieHGG7is6LLXLz7I8+3LZzsrV0P1IAHhP5U= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.5.1/go.mod h1:e9GMxYsXl05ICDXkRhurwBS4Q3OK1iX/F2sw+iXX5zU= -github.com/prometheus/client_golang v1.18.0 h1:HzFfmkOzH5Q8L8G+kSJKUx5dtG87sewO+FoDDqP5Tbk= -github.com/prometheus/client_golang v1.18.0/go.mod h1:T+GXkCk5wSJyOqMIzVgvvjFDlkOQntgjkJWKrN5txjA= +github.com/prometheus/client_golang v1.23.2 h1:Je96obch5RDVy3FDMndoUsjAhG5Edi49h0RJWRi/o0o= +github.com/prometheus/client_golang v1.23.2/go.mod h1:Tb1a6LWHB3/SPIzCoaDXI4I8UHKeFTEQ1YCr+0Gyqmg= github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= -github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/prometheus/client_model v0.2.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= -github.com/prometheus/client_model v0.5.0 h1:VQw1hfvPvk3Uv6Qf29VrPF32JB6rtbgI6cYPYQjL0Qw= -github.com/prometheus/client_model v0.5.0/go.mod h1:dTiFglRmd66nLR9Pv9f0mZi7B7fk5Pm3gvsjB5tr+kI= +github.com/prometheus/client_model v0.6.2 h1:oBsgwpGs7iVziMvrGhE53c/GrLUsZdHnqNwqPLxwZyk= +github.com/prometheus/client_model v0.6.2/go.mod h1:y3m2F6Gdpfy6Ut/GBsUqTWZqCUvMVzSfMLjcu6wAwpE= github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= github.com/prometheus/common v0.9.1/go.mod h1:yhUN8i9wzaXS3w1O07YhxHEBxD+W35wd8bs7vj7HSQ4= -github.com/prometheus/common v0.45.0 h1:2BGz0eBc2hdMDLnO/8n0jeB3oPrt2D08CekT0lneoxM= -github.com/prometheus/common v0.45.0/go.mod h1:YJmSTw9BoKxJplESWWxlbyttQR4uaEcGyv9MZjVOJsY= +github.com/prometheus/common v0.70.0 h1:bcpru3tWPVnxGnETLgOV5jbp/JRXgYEyv65CuBLAMMI= +github.com/prometheus/common v0.70.0/go.mod h1:S/SFasQmgGiYH6C81LKCtYa8QACgthGg5zxL2udV7SY= github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= github.com/prometheus/procfs v0.0.8/go.mod h1:7Qr8sr6344vo1JqZ6HhLceV9o3AJ1Ff+GxbHq6oeK9A= -github.com/prometheus/procfs v0.12.0 h1:jluTpSng7V9hY0O2R9DzzJHYb2xULk9VTR1V1R/k6Bo= -github.com/prometheus/procfs v0.12.0/go.mod h1:pcuDEFsWDnvcgNzo4EEweacyhjeA9Zk3cnaOZAZEfOo= +github.com/prometheus/procfs v0.21.1 h1:GljZCt+zSTS+NZq88cyQ1LjZ+RCHp3uVuabBWA5+OJI= +github.com/prometheus/procfs v0.21.1/go.mod h1:aB55Cww9pdSJVHk0hUf0inxWyyjPogFIjmHKYgMKmtY= github.com/rogpeppe/go-internal v1.14.1 h1:UQB4HGPB6osV0SQTLymcB4TgvyWu6ZyliaW0tI/otEQ= github.com/rogpeppe/go-internal v1.14.1/go.mod h1:MaRKkUm5W0goXpeCfT7UZI6fk/L7L7so1lCWt35ZSgc= github.com/shirou/gopsutil v3.21.11+incompatible h1:+1+c1VGhc88SSonWP6foOcLhvnKlUeu/erjjvaPEYiI= github.com/shirou/gopsutil v3.21.11+incompatible/go.mod h1:5b4v6he4MtMOwMlS0TUMTu2PcXUg8+E1lC7eC3UO/RA= github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= -github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= -github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= +github.com/sirupsen/logrus v1.9.4 h1:TsZE7l11zFCLZnZ+teH4Umoq5BhEIfIzfRDZ1Uzql2w= +github.com/sirupsen/logrus v1.9.4/go.mod h1:ftWc9WdOfJ0a92nsE2jF5u5ZwH8Bv2zdeOC42RjbV2g= +github.com/spiffe/go-spiffe/v2 v2.8.1 h1:eXZMLsu+3MLEPJyGJkolqtVrteZfQdUpOWj6LTiDl/E= +github.com/spiffe/go-spiffe/v2 v2.8.1/go.mod h1:47Q0Q9/AqGha8QLHp+kxpH4Wca7X7EnOtlIJy3mxZ3U= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= -github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= -github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= -github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= -github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U= github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U= github.com/thought-machine/go-flags v1.5.0/go.mod h1:+r2g8uGwgGM7IGZzmMS97mKBFLDbW6vgFO1jxp0rDmg= -github.com/thought-machine/go-flags v1.6.3 h1:AGA+iy7EP7ia/e46jzrmJV3oJhznESq7kNEILunmP8w= -github.com/thought-machine/go-flags v1.6.3/go.mod h1:+r2g8uGwgGM7IGZzmMS97mKBFLDbW6vgFO1jxp0rDmg= +github.com/thought-machine/go-flags v1.7.0 h1:BcZvT1pH6UQTythJ8s+k0K31N3ScHPOLIaREnAemZH8= +github.com/thought-machine/go-flags v1.7.0/go.mod h1:+r2g8uGwgGM7IGZzmMS97mKBFLDbW6vgFO1jxp0rDmg= github.com/thought-machine/http-admin v1.1.1 h1:3e0giKthGixjpFywkMoT5v91M//iUxODnXrBFyQG83c= github.com/thought-machine/http-admin v1.1.1/go.mod h1:p3vUnstLmgqHM3Mxvu4SqbHCZ3cj5xK6ur8lNspB80U= -github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -github.com/yusufpapurcu/wmi v1.2.3 h1:E1ctvB7uKFMOJw3fdOW32DwGE9I7t++CRUEMKvFoFiw= -github.com/yusufpapurcu/wmi v1.2.3/go.mod h1:SBZ9tNy3G9/m5Oi98Zks0QjeHVDvuK0qfxQmPyzfmi0= -go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= -go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= +github.com/yusufpapurcu/wmi v1.2.4 h1:zFUKzehAFReQwLys1b/iSMl+JQGSCSjtVqQn9bBrPo0= +github.com/yusufpapurcu/wmi v1.2.4/go.mod h1:SBZ9tNy3G9/m5Oi98Zks0QjeHVDvuK0qfxQmPyzfmi0= go.opentelemetry.io/auto/sdk v1.2.1 h1:jXsnJ4Lmnqd11kwkBV2LgLoFMZKizbCi5fNZ/ipaZ64= go.opentelemetry.io/auto/sdk v1.2.1/go.mod h1:KRTj+aOaElaLi+wW1kO/DZRXwkF4C5xPbEe3ZiIhN7Y= -go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.46.1 h1:SpGay3w+nEwMpfVnbqOLH5gY52/foP8RE8UzTZ1pdSE= -go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.46.1/go.mod h1:4UoMYEZOC0yN/sPGH76KPkkU7zgiEWYWL9vwmbnTJPE= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.46.1 h1:aFJWCqJMNjENlcleuuOkGAPH82y0yULBScfXcIEdS24= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.46.1/go.mod h1:sEGXWArGqc3tVa+ekntsN65DmVbVeW+7lTKTjZF3/Fo= -go.opentelemetry.io/otel v1.39.0 h1:8yPrr/S0ND9QEfTfdP9V+SiwT4E0G7Y5MO7p85nis48= -go.opentelemetry.io/otel v1.39.0/go.mod h1:kLlFTywNWrFyEdH0oj2xK0bFYZtHRYUdv1NklR/tgc8= -go.opentelemetry.io/otel/metric v1.39.0 h1:d1UzonvEZriVfpNKEVmHXbdf909uGTOQjA0HF0Ls5Q0= -go.opentelemetry.io/otel/metric v1.39.0/go.mod h1:jrZSWL33sD7bBxg1xjrqyDjnuzTUB0x1nBERXd7Ftcs= -go.opentelemetry.io/otel/sdk v1.39.0 h1:nMLYcjVsvdui1B/4FRkwjzoRVsMK8uL/cj0OyhKzt18= -go.opentelemetry.io/otel/sdk v1.39.0/go.mod h1:vDojkC4/jsTJsE+kh+LXYQlbL8CgrEcwmt1ENZszdJE= -go.opentelemetry.io/otel/sdk/metric v1.39.0 h1:cXMVVFVgsIf2YL6QkRF4Urbr/aMInf+2WKg+sEJTtB8= -go.opentelemetry.io/otel/sdk/metric v1.39.0/go.mod h1:xq9HEVH7qeX69/JnwEfp6fVq5wosJsY1mt4lLfYdVew= -go.opentelemetry.io/otel/trace v1.39.0 h1:2d2vfpEDmCJ5zVYz7ijaJdOF59xLomrvj7bjt6/qCJI= -go.opentelemetry.io/otel/trace v1.39.0/go.mod h1:88w4/PnZSazkGzz/w84VHpQafiU4EtqqlVdxWy+rNOA= -go.uber.org/automaxprocs v1.5.3 h1:kWazyxZUrS3Gs4qUpbwo5kEIMGe/DAvi5Z4tl2NW4j8= -go.uber.org/automaxprocs v1.5.3/go.mod h1:eRbA25aqJrxAbsLO0xy5jVwPt7FQnRgjW+efnwa1WM0= -gocloud.dev v0.36.0 h1:q5zoXux4xkOZP473e1EZbG8Gq9f0vlg1VNH5Du/ybus= -gocloud.dev v0.36.0/go.mod h1:bLxah6JQVKBaIxzsr5BQLYB4IYdWHkMZdzCXlo6F0gg= +go.opentelemetry.io/contrib/detectors/gcp v1.44.0 h1:NmLfL734pJhM0JKaYd2Y28+nY9dPRWYAAbxhRCrKXPw= +go.opentelemetry.io/contrib/detectors/gcp v1.44.0/go.mod h1:tNAsgd8avTGke1+MndXlU5Cru4PQ9Ai/cCNWQv/ZJ/s= +go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.69.0 h1:2yEATaop1/a1I4psnSLgWVPLWwCzkqWakgJy7xTDVy0= +go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.69.0/go.mod h1:D7J12YRapIekYyPWgGPlA/23pRmpSEZC5xJC/TTLI9U= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.69.0 h1:8tvICD4vSTOOsNrsI4Ljf6C+6UKvpTEH5XY3JMoyPoo= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.69.0/go.mod h1:z9+yiacE0IHRqM4qFfkbt/JYlmYXgss8GY/jXoNuPJI= +go.opentelemetry.io/otel v1.44.0 h1:JjwHmHpA4iZ3wBxluu2fbbE7j4kqlE8jXyAyPXH7HqU= +go.opentelemetry.io/otel v1.44.0/go.mod h1:BMgjTHL9WPRlRjL2oZCBTL4whCGtXch2H4BhOPIAyYc= +go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.44.0 h1:hqxVTu/GtBF+vJ8d1fzW7fRxZFvgoDjWcxwwCaFDYpU= +go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.44.0/go.mod h1:z5fVEF4X5v0ESvlJqBrrFlBVoj5EQuefZpzsu7R+x5Q= +go.opentelemetry.io/otel/metric v1.44.0 h1:1w0gILTcHdr3YI+ixLyjemwrVnsMURbTZFrSYCdDdmc= +go.opentelemetry.io/otel/metric v1.44.0/go.mod h1:8O7hanEPBNgEMmybD3s2VBKcgWOCsA6tzHBPODAiquo= +go.opentelemetry.io/otel/metric/x v0.66.0 h1:YkCrx1zLOChi9ZcZ6euupOcsgzbVlec7D/xoEU1+cTA= +go.opentelemetry.io/otel/metric/x v0.66.0/go.mod h1:d1+BDj9t96do0/1LoU1ayfCv79ZgNE41qbhBvnMOBZk= +go.opentelemetry.io/otel/sdk v1.44.0 h1:nHYwb9lK+fJPU/dnT6s7W7Z8itMWyqrnVfbheVYrZ58= +go.opentelemetry.io/otel/sdk v1.44.0/go.mod h1:Osuydd3Se74nqjAKxid74N5eC+jfEqfTegHRnq58oK0= +go.opentelemetry.io/otel/sdk/metric v1.44.0 h1:3LlKgI+VjbVsjNRFZJZAJ30WjXC5VkNRks6si09iEfI= +go.opentelemetry.io/otel/sdk/metric v1.44.0/go.mod h1:5B5pMARnXxKhltooO4xUuCBorl65a4EpnTalObqOigA= +go.opentelemetry.io/otel/trace v1.44.0 h1:jxF5CsGYCe74MCRx2X4g7WsY/VBKRqqpNvXlX/6gtIk= +go.opentelemetry.io/otel/trace v1.44.0/go.mod h1:oLl1jrMQAVo6v3GAggN+1VH9VIz9iUSvW53sW1Q8PIE= +go.uber.org/automaxprocs v1.6.0 h1:O3y2/QNTOdbF+e/dpXNNW7Rx2hZ4sTIPyybbxyNqTUs= +go.uber.org/automaxprocs v1.6.0/go.mod h1:ifeIMSnPZuznNm6jmdzmU3/bfk01Fe2fotchwEFJ8r8= +go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= +go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= +go.yaml.in/yaml/v2 v2.4.4 h1:tuyd0P+2Ont/d6e2rl3be67goVK4R6deVxCUX5vyPaQ= +go.yaml.in/yaml/v2 v2.4.4/go.mod h1:gMZqIpDtDqOfM0uNfy0SkpRhvUryYH0Z6wdMYcacYXQ= +gocloud.dev v0.46.0 h1:niIuZwSjMtBx8K+ITB2s5kZullB13PGOS2ZoQPZxQ4Q= +gocloud.dev v0.46.0/go.mod h1:ACQe+2qO+hEO+pdcvvsM+RB63r8TyGD1W3ESCLFyzvM= golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20181203042331-505ab145d0a9/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= -golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200323165209-0ec3e9974c59/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.46.0 h1:cKRW/pmt1pKAfetfu+RCEvjvZkA9RimPbh7bhFjGVBU= -golang.org/x/crypto v0.46.0/go.mod h1:Evb/oLKmMraqjZ2iQTwDwvCtJkczlDuTmdJXoZVzqU0= -golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= -golang.org/x/exp v0.0.0-20240103183307-be819d1f06fc h1:ao2WRsKSzW6KuUY9IWPwWahcHCgR0s52IfwutMfEbdM= -golang.org/x/exp v0.0.0-20240103183307-be819d1f06fc/go.mod h1:iRJReGqOEeBhDZGkGbynYwcHlctCvnjTYIamk7uXpHI= -golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= -golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= -golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= -golang.org/x/lint v0.0.0-20201208152925-83fdc39ff7b5/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= -golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= -golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/crypto v0.54.0 h1:YLIA59K4fiNzHzjnZt2tUJQjQtUWfWbeHBqKtk3eScw= +golang.org/x/crypto v0.54.0/go.mod h1:KWL8ny2AZdGR2cWmzeHrp2azQPGogOv+HeQaVEXC2dk= +golang.org/x/exp v0.0.0-20260709172345-9ea1abe57597 h1:qLvzZeaANDgyVOA8pyHCOStGlXn0rseXma+GQjeuv2g= +golang.org/x/exp v0.0.0-20260709172345-9ea1abe57597/go.mod h1:EdfpwwqSu+0Li0mzskwHU6FWDV3t9Q+RZDo3QMUtL3Q= golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= -golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4/go.mod h1:RBQZq4jEuRlivfhVLdyRGr576XBO4/greRjx4P4O3yc= -golang.org/x/net v0.0.0-20210505214959-0714010a04ed/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.48.0 h1:zyQRTTrjc33Lhh0fBgT/H3oZq9WuvRR5gPC70xpDiQU= -golang.org/x/net v0.48.0/go.mod h1:+ndRgGjkh8FGtu1w1FGbEC31if4VrNVMuKTgcAAnQRY= -golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= -golang.org/x/oauth2 v0.34.0 h1:hqK/t4AKgbqWkdkcAeI8XLmbK+4m4G5YeQRrmiotGlw= -golang.org/x/oauth2 v0.34.0/go.mod h1:lzm5WQJQwKZ3nwavOZ3IS5Aulzxi68dUSgRHujetwEA= -golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/net v0.57.0 h1:K5+3DljvIuDG9/Jv9rvyMywYNFCQ9RSUY6OOTTkT+tE= +golang.org/x/net v0.57.0/go.mod h1:KpXc8iv+r3XplLAG/f7Jsf9RPszJzdR0f58q9vGOuEU= +golang.org/x/oauth2 v0.36.0 h1:peZ/1z27fi9hUOFCAZaHyrpWG5lwe0RJEEEeH0ThlIs= +golang.org/x/oauth2 v0.36.0/go.mod h1:YDBUJMTkDnJS+A4BP4eZBjCqtokkg1hODuPjwiGPO7Q= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.19.0 h1:vV+1eWNmZ5geRlYjzm2adRgW2/mcpevXNg50YZtPCE4= -golang.org/x/sync v0.19.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI= -golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sync v0.22.0 h1:SZjpbeLmrCk4xhRSZFNZW5gFUeCeFgjekvI/+gfScek= +golang.org/x/sync v0.22.0/go.mod h1:9xrNwdLfx4jkKbNva9FpL6vEN7evnE43NNNJQ2LF3+0= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181228144115-9a3f9b0469bb/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -379,86 +345,37 @@ golang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200122134326-e047566fdf82/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200327173247-9dae0f8f5775/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201207223542-d4d67f95c62d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210119212857-b64e53b001e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210315160823-c6e025ad8005/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210507014357-30e306a8bba5/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220408201424-a24fb2fb8a0f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20221010170243-090e33056c14/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.39.0 h1:CvCKL8MeisomCi6qNZ+wbb0DN9E5AATixKsvNtMoMFk= -golang.org/x/sys v0.39.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks= -golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= -golang.org/x/term v0.38.0 h1:PQ5pkm/rLO6HnxFR7N2lJHOZX6Kez5Y1gDSJla6jo7Q= -golang.org/x/term v0.38.0/go.mod h1:bSEAKrOT1W+VSu9TSCMtoGEOUcKxOKgl3LE5QEF/xVg= +golang.org/x/sys v0.47.0 h1:o7XGOvZQCADBQQ4Y7VNq2dRWQR7JmOUW8Kxx4ZsNgWs= +golang.org/x/sys v0.47.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= +golang.org/x/term v0.45.0 h1:NwWyBmoJCbfTHpxrWoZ9C6/VxOf7ic219I8xZZFdrf0= +golang.org/x/term v0.45.0/go.mod h1:9aqxs0blBcrm/n0L9QW0aRVD+ktan8ssZromtqJC43w= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= -golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.32.0 h1:ZD01bjUt1FQ9WJ0ClOL5vxgxOI/sVCNgX1YtKwcY0mU= -golang.org/x/text v0.32.0/go.mod h1:o/rUWzghvpD5TXrTIBuJU77MTaN0ljMWE47kxGJQ7jY= -golang.org/x/time v0.5.0 h1:o7cqy6amK/52YcAKIPlM3a+Fpj35zvRj2TP+e1xFSfk= -golang.org/x/time v0.5.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= -golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= -golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= -golang.org/x/tools v0.0.0-20190422233926-fe54fb35175b/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= -golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= -golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.1.0/go.mod h1:xkSsbof2nBLbhDlRMhhhyNLN/zl3eTqcnHD5viDpcZ0= -golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/text v0.40.0 h1:Ub2Z6/xjgF1WrYQz2nuITOEegKFtiIy+rieRJ5lHZKs= +golang.org/x/text v0.40.0/go.mod h1:hpnzDAfGV753zIKo+wk3u1bVKCGPbrnF7+7LBF/UHVY= +golang.org/x/time v0.15.0 h1:bbrp8t3bGUeFOx08pvsMYRTCVSMk89u4tKbNOZbp88U= +golang.org/x/time v0.15.0/go.mod h1:Y4YMaQmXwGQZoFaVFk4YpCt4FLQMYKZe9oeV/f4MSno= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 h1:+cNy6SZtPcJQH3LJVLOSmiC7MMxXNOb3PU/VUEz+EhU= -golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028/go.mod h1:NDW/Ps6MPRej6fsCIbMTohpP40sJ/P/vI1MoTEGwX90= -gonum.org/v1/gonum v0.16.0 h1:5+ul4Swaf3ESvrOnidPp4GZbzf0mxVQpDCYUQE7OJfk= -gonum.org/v1/gonum v0.16.0/go.mod h1:fef3am4MQ93R2HHpKnLk4/Tbh/s0+wqD5nfa6Pnwy4E= -google.golang.org/api v0.155.0 h1:vBmGhCYs0djJttDNynWo44zosHlPvHmA0XiN2zP2DtA= -google.golang.org/api v0.155.0/go.mod h1:GI5qK5f40kCpHfPn6+YzGAByIKWv8ujFnmoWm7Igduk= -google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= -google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= -google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= -google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= -google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo= -google.golang.org/genproto v0.0.0-20210506142907-4a47615972c2/go.mod h1:P3QM42oQyzQSnHPnZ/vqoCdDmzH28fzWByN9asMeM8A= -google.golang.org/genproto v0.0.0-20240102182953-50ed04b92917 h1:nz5NESFLZbJGPFxDT/HCn+V1mZ8JGNoY4nUpmW/Y2eg= -google.golang.org/genproto v0.0.0-20240102182953-50ed04b92917/go.mod h1:pZqR+glSb11aJ+JQcczCvgf47+duRuzNSKqE8YAQnV0= -google.golang.org/genproto/googleapis/api v0.0.0-20251202230838-ff82c1b0f217 h1:fCvbg86sFXwdrl5LgVcTEvNC+2txB5mgROGmRL5mrls= -google.golang.org/genproto/googleapis/api v0.0.0-20251202230838-ff82c1b0f217/go.mod h1:+rXWjjaukWZun3mLfjmVnQi18E1AsFbDN9QdJ5YXLto= -google.golang.org/genproto/googleapis/bytestream v0.0.0-20240102182953-50ed04b92917 h1:4yeEIQ/7XGddl84N75aFjr9sEFUObj1u7KXas6eEmC8= -google.golang.org/genproto/googleapis/bytestream v0.0.0-20240102182953-50ed04b92917/go.mod h1:O9TvT7A9NLgdqqF0JJXJ+axpaoYiEb8txGmkvy+AvLc= -google.golang.org/genproto/googleapis/rpc v0.0.0-20251202230838-ff82c1b0f217 h1:gRkg/vSppuSQoDjxyiGfN4Upv/h/DQmIR10ZU8dh4Ww= -google.golang.org/genproto/googleapis/rpc v0.0.0-20251202230838-ff82c1b0f217/go.mod h1:7i2o+ce6H/6BluujYR+kqX3GKH+dChPTQU19wjRPiGk= -google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= -google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= -google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= -google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= -google.golang.org/grpc v1.33.2/go.mod h1:JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv2fbc= -google.golang.org/grpc v1.36.1/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= -google.golang.org/grpc v1.37.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= -google.golang.org/grpc v1.79.3 h1:sybAEdRIEtvcD68Gx7dmnwjZKlyfuc61Dyo9pGXXkKE= -google.golang.org/grpc v1.79.3/go.mod h1:KmT0Kjez+0dde/v2j9vzwoAScgEPx/Bw1CYChhHLrHQ= -google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= -google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= -google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= -google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod h1:A+miEFZTKqfCUM6K7xSMQL9OKL/b6hQv+e19PK+JZNE= -google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo= -google.golang.org/protobuf v1.22.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= -google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= -google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= -google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= -google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= -google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= -google.golang.org/protobuf v1.36.10 h1:AYd7cD/uASjIL6Q9LiTjz8JLcrh/88q5UObnmY3aOOE= -google.golang.org/protobuf v1.36.10/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco= +golang.org/x/xerrors v0.0.0-20240903120638-7835f813f4da h1:noIWHXmPHxILtqtCOPIhSt0ABwskkZKjD3bXGnZGpNY= +golang.org/x/xerrors v0.0.0-20240903120638-7835f813f4da/go.mod h1:NDW/Ps6MPRej6fsCIbMTohpP40sJ/P/vI1MoTEGwX90= +gonum.org/v1/gonum v0.17.0 h1:VbpOemQlsSMrYmn7T2OUvQ4dqxQXU+ouZFQsZOx50z4= +gonum.org/v1/gonum v0.17.0/go.mod h1:El3tOrEuMpv2UdMrbNlKEh9vd86bmQ6vqIcDwxEOc1E= +google.golang.org/api v0.288.0 h1:glhO/J88obKP5I269W3hB73dvBKrjU56ZfmNlNXpgTU= +google.golang.org/api v0.288.0/go.mod h1:lM2kYRzYUCBY91P9h6VF1PYmvhxii3O5hji37qRvIcY= +google.golang.org/genproto v0.0.0-20260706201446-f0a921348800 h1:NDCaohnq5LRpt5soWpH6+U2tsRCpcgD0ftByMJAAAt4= +google.golang.org/genproto v0.0.0-20260706201446-f0a921348800/go.mod h1:J1jBkXm41jiQyoU7J/Q2o2jqrZZwyFYMOKcZwWCIzDM= +google.golang.org/genproto/googleapis/api v0.0.0-20260706201446-f0a921348800 h1:admdQBe8jR3VWhBsUrAOaF2Qw6K/+p5pSm1GN8+6Fw4= +google.golang.org/genproto/googleapis/api v0.0.0-20260706201446-f0a921348800/go.mod h1:FPk7EXUKMtImne7AmknoYjT4QXqKIzzRbeQIXzLk6fQ= +google.golang.org/genproto/googleapis/bytestream v0.0.0-20260706201446-f0a921348800 h1:tXWFc8O+xhefxC9I1MDGSGZeO0elYMgSUK1dg+xvgBA= +google.golang.org/genproto/googleapis/bytestream v0.0.0-20260706201446-f0a921348800/go.mod h1:MS5Wgu4uvm+nhCBwXzKEpYKPawaaNNUT7WfgpH44YVQ= +google.golang.org/genproto/googleapis/rpc v0.0.0-20260706201446-f0a921348800 h1:qEHAMpSaUhtD0p3NbEEI83HwNGFxEwaSJ1G9PLnCBZE= +google.golang.org/genproto/googleapis/rpc v0.0.0-20260706201446-f0a921348800/go.mod h1:4Hqkh8ycfw05ld/3BWL7rJOSfebL2Q+DVDeRgYgxUU8= +google.golang.org/grpc v1.82.0 h1:vguDnZUPjE26w09A63VoxZPnvPjB5Riyc0mkXPFmAIU= +google.golang.org/grpc v1.82.0/go.mod h1:yzTZ1TB1Z3SG+LIYaI+WiE8D5+PZ3ArnrSp8zF3+/ZA= +google.golang.org/protobuf v1.36.11 h1:fV6ZwhNocDyBLK0dj+fg8ektcVegBBuEolpbTQyBNVE= +google.golang.org/protobuf v1.36.11/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco= gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= @@ -474,8 +391,5 @@ gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= -gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= -honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= \ No newline at end of file diff --git a/plugins/BUILD b/plugins/BUILD index a68869d8..b99fe71c 100644 --- a/plugins/BUILD +++ b/plugins/BUILD @@ -1,7 +1,7 @@ plugin_repo( name = "go", plugin = "go-rules", - revision = "v1.21.2", + revision = "v1.31.1", ) plugin_repo( diff --git a/proto/.gitignore b/proto/.gitignore new file mode 100644 index 00000000..ee3c3dd7 --- /dev/null +++ b/proto/.gitignore @@ -0,0 +1,3 @@ + +# Entries below this point are managed by Please (DO NOT EDIT) +generate.sh diff --git a/proto/lucidity/lucidity.pb.go b/proto/lucidity/lucidity.pb.go deleted file mode 100644 index f9a47a76..00000000 --- a/proto/lucidity/lucidity.pb.go +++ /dev/null @@ -1,579 +0,0 @@ -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.33.0 -// protoc v3.11.4 -// source: proto/lucidity/lucidity.proto - -package lucidity - -import ( - protoreflect "google.golang.org/protobuf/reflect/protoreflect" - protoimpl "google.golang.org/protobuf/runtime/protoimpl" - reflect "reflect" - sync "sync" -) - -const ( - // Verify that this generated code is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) - // Verify that runtime/protoimpl is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) -) - -type Worker struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The name of this worker. - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - // The host name of the machine the worker is on - Hostname string `protobuf:"bytes,13,opt,name=hostname,proto3" json:"hostname,omitempty"` - // The version this worker is currently at - Version string `protobuf:"bytes,12,opt,name=version,proto3" json:"version,omitempty"` - // The time the worker started at (as a Unix timestamp) - StartTime int64 `protobuf:"varint,2,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"` - // The time the server is reporting in at (the server may overwrite this) - UpdateTime int64 `protobuf:"varint,3,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"` - // A human-readable string describing the current state of the server. - Status string `protobuf:"bytes,4,opt,name=status,proto3" json:"status,omitempty"` - // Whether the worker currently considers itself healthy. - Healthy bool `protobuf:"varint,5,opt,name=healthy,proto3" json:"healthy,omitempty"` - // Whether the worker was busy at the point it sent this request. - Busy bool `protobuf:"varint,6,opt,name=busy,proto3" json:"busy,omitempty"` - // Whether the worker is now alive or not (note that it is possible to be - // alive but unhealthy) - Alive bool `protobuf:"varint,7,opt,name=alive,proto3" json:"alive,omitempty"` - // A URL containing the last unit of work the server performed. - LastTask string `protobuf:"bytes,8,opt,name=last_task,json=lastTask,proto3" json:"last_task,omitempty"` - // Server-side only; indicates whether this server has been shut down. - Disabled bool `protobuf:"varint,9,opt,name=disabled,proto3" json:"disabled,omitempty"` - // ID of the currently executing task, if there is one. - CurrentTask string `protobuf:"bytes,10,opt,name=current_task,json=currentTask,proto3" json:"current_task,omitempty"` - // The time the current task was started at. - TaskStartTime int64 `protobuf:"varint,11,opt,name=task_start_time,json=taskStartTime,proto3" json:"task_start_time,omitempty"` -} - -func (x *Worker) Reset() { - *x = Worker{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_lucidity_lucidity_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Worker) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Worker) ProtoMessage() {} - -func (x *Worker) ProtoReflect() protoreflect.Message { - mi := &file_proto_lucidity_lucidity_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Worker.ProtoReflect.Descriptor instead. -func (*Worker) Descriptor() ([]byte, []int) { - return file_proto_lucidity_lucidity_proto_rawDescGZIP(), []int{0} -} - -func (x *Worker) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -func (x *Worker) GetHostname() string { - if x != nil { - return x.Hostname - } - return "" -} - -func (x *Worker) GetVersion() string { - if x != nil { - return x.Version - } - return "" -} - -func (x *Worker) GetStartTime() int64 { - if x != nil { - return x.StartTime - } - return 0 -} - -func (x *Worker) GetUpdateTime() int64 { - if x != nil { - return x.UpdateTime - } - return 0 -} - -func (x *Worker) GetStatus() string { - if x != nil { - return x.Status - } - return "" -} - -func (x *Worker) GetHealthy() bool { - if x != nil { - return x.Healthy - } - return false -} - -func (x *Worker) GetBusy() bool { - if x != nil { - return x.Busy - } - return false -} - -func (x *Worker) GetAlive() bool { - if x != nil { - return x.Alive - } - return false -} - -func (x *Worker) GetLastTask() string { - if x != nil { - return x.LastTask - } - return "" -} - -func (x *Worker) GetDisabled() bool { - if x != nil { - return x.Disabled - } - return false -} - -func (x *Worker) GetCurrentTask() string { - if x != nil { - return x.CurrentTask - } - return "" -} - -func (x *Worker) GetTaskStartTime() int64 { - if x != nil { - return x.TaskStartTime - } - return 0 -} - -type UpdateResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // True if the receiving server should become unavailable until it receives - // another response saying it's ok to come back to life again. - ShouldDisable bool `protobuf:"varint,1,opt,name=should_disable,json=shouldDisable,proto3" json:"should_disable,omitempty"` -} - -func (x *UpdateResponse) Reset() { - *x = UpdateResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_lucidity_lucidity_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UpdateResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UpdateResponse) ProtoMessage() {} - -func (x *UpdateResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_lucidity_lucidity_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use UpdateResponse.ProtoReflect.Descriptor instead. -func (*UpdateResponse) Descriptor() ([]byte, []int) { - return file_proto_lucidity_lucidity_proto_rawDescGZIP(), []int{1} -} - -func (x *UpdateResponse) GetShouldDisable() bool { - if x != nil { - return x.ShouldDisable - } - return false -} - -type ListWorkersRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The worker name to return - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - // The hostname to return workers for - Hostname string `protobuf:"bytes,2,opt,name=hostname,proto3" json:"hostname,omitempty"` -} - -func (x *ListWorkersRequest) Reset() { - *x = ListWorkersRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_lucidity_lucidity_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ListWorkersRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ListWorkersRequest) ProtoMessage() {} - -func (x *ListWorkersRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_lucidity_lucidity_proto_msgTypes[2] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ListWorkersRequest.ProtoReflect.Descriptor instead. -func (*ListWorkersRequest) Descriptor() ([]byte, []int) { - return file_proto_lucidity_lucidity_proto_rawDescGZIP(), []int{2} -} - -func (x *ListWorkersRequest) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -func (x *ListWorkersRequest) GetHostname() string { - if x != nil { - return x.Hostname - } - return "" -} - -type ListWorkersResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // List of all the currently known workers, optionally filtered on the - // request. - Workers []*Worker `protobuf:"bytes,1,rep,name=workers,proto3" json:"workers,omitempty"` -} - -func (x *ListWorkersResponse) Reset() { - *x = ListWorkersResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_lucidity_lucidity_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ListWorkersResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ListWorkersResponse) ProtoMessage() {} - -func (x *ListWorkersResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_lucidity_lucidity_proto_msgTypes[3] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ListWorkersResponse.ProtoReflect.Descriptor instead. -func (*ListWorkersResponse) Descriptor() ([]byte, []int) { - return file_proto_lucidity_lucidity_proto_rawDescGZIP(), []int{3} -} - -func (x *ListWorkersResponse) GetWorkers() []*Worker { - if x != nil { - return x.Workers - } - return nil -} - -// This is part of the HTTP API; the request to disable a worker. -type Disable struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Name of the worker to disable - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - // If true, worker is disabled; if false, it will become enabled. - Disable bool `protobuf:"varint,2,opt,name=disable,proto3" json:"disable,omitempty"` -} - -func (x *Disable) Reset() { - *x = Disable{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_lucidity_lucidity_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Disable) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Disable) ProtoMessage() {} - -func (x *Disable) ProtoReflect() protoreflect.Message { - mi := &file_proto_lucidity_lucidity_proto_msgTypes[4] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Disable.ProtoReflect.Descriptor instead. -func (*Disable) Descriptor() ([]byte, []int) { - return file_proto_lucidity_lucidity_proto_rawDescGZIP(), []int{4} -} - -func (x *Disable) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -func (x *Disable) GetDisable() bool { - if x != nil { - return x.Disable - } - return false -} - -var File_proto_lucidity_lucidity_proto protoreflect.FileDescriptor - -var file_proto_lucidity_lucidity_proto_rawDesc = []byte{ - 0x0a, 0x1d, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x64, 0x69, 0x74, 0x79, - 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x64, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, - 0x1c, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x2e, 0x70, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x2e, 0x72, 0x65, - 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x64, 0x69, 0x74, 0x79, 0x22, 0xf2, 0x02, - 0x0a, 0x06, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, - 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, - 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, - 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, - 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x68, 0x65, - 0x61, 0x6c, 0x74, 0x68, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x68, 0x65, 0x61, - 0x6c, 0x74, 0x68, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x75, 0x73, 0x79, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x04, 0x62, 0x75, 0x73, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x76, - 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x76, 0x65, 0x12, 0x1b, - 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x74, 0x61, 0x73, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x1a, 0x0a, 0x08, 0x64, - 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x64, - 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x75, 0x72, 0x72, 0x65, - 0x6e, 0x74, 0x5f, 0x74, 0x61, 0x73, 0x6b, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, - 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x61, - 0x73, 0x6b, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x0d, 0x74, 0x61, 0x73, 0x6b, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, - 0x6d, 0x65, 0x22, 0x37, 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x5f, 0x64, - 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x73, 0x68, - 0x6f, 0x75, 0x6c, 0x64, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x44, 0x0a, 0x12, 0x4c, - 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, - 0x65, 0x22, 0x55, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x07, 0x77, 0x6f, 0x72, 0x6b, - 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x62, 0x75, 0x69, 0x6c, - 0x64, 0x2e, 0x70, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, - 0x6c, 0x75, 0x63, 0x69, 0x64, 0x69, 0x74, 0x79, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x52, - 0x07, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x73, 0x22, 0x37, 0x0a, 0x07, 0x44, 0x69, 0x73, 0x61, - 0x62, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, - 0x65, 0x32, 0xdc, 0x01, 0x0a, 0x08, 0x4c, 0x75, 0x63, 0x69, 0x64, 0x69, 0x74, 0x79, 0x12, 0x5c, - 0x0a, 0x06, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x24, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, - 0x2e, 0x70, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x6c, - 0x75, 0x63, 0x69, 0x64, 0x69, 0x74, 0x79, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x1a, 0x2c, - 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x2e, 0x70, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x2e, 0x72, 0x65, - 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x64, 0x69, 0x74, 0x79, 0x2e, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x72, 0x0a, 0x0b, - 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x73, 0x12, 0x30, 0x2e, 0x62, 0x75, - 0x69, 0x6c, 0x64, 0x2e, 0x70, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, - 0x65, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x64, 0x69, 0x74, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x57, - 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, - 0x62, 0x75, 0x69, 0x6c, 0x64, 0x2e, 0x70, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x2e, 0x72, 0x65, 0x6d, - 0x6f, 0x74, 0x65, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x64, 0x69, 0x74, 0x79, 0x2e, 0x4c, 0x69, 0x73, - 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x42, 0x3a, 0x5a, 0x38, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x74, - 0x68, 0x6f, 0x75, 0x67, 0x68, 0x74, 0x2d, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x2f, 0x70, - 0x6c, 0x65, 0x61, 0x73, 0x65, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x2f, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x64, 0x69, 0x74, 0x79, 0x62, 0x06, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x33, -} - -var ( - file_proto_lucidity_lucidity_proto_rawDescOnce sync.Once - file_proto_lucidity_lucidity_proto_rawDescData = file_proto_lucidity_lucidity_proto_rawDesc -) - -func file_proto_lucidity_lucidity_proto_rawDescGZIP() []byte { - file_proto_lucidity_lucidity_proto_rawDescOnce.Do(func() { - file_proto_lucidity_lucidity_proto_rawDescData = protoimpl.X.CompressGZIP(file_proto_lucidity_lucidity_proto_rawDescData) - }) - return file_proto_lucidity_lucidity_proto_rawDescData -} - -var file_proto_lucidity_lucidity_proto_msgTypes = make([]protoimpl.MessageInfo, 5) -var file_proto_lucidity_lucidity_proto_goTypes = []interface{}{ - (*Worker)(nil), // 0: build.please.remote.lucidity.Worker - (*UpdateResponse)(nil), // 1: build.please.remote.lucidity.UpdateResponse - (*ListWorkersRequest)(nil), // 2: build.please.remote.lucidity.ListWorkersRequest - (*ListWorkersResponse)(nil), // 3: build.please.remote.lucidity.ListWorkersResponse - (*Disable)(nil), // 4: build.please.remote.lucidity.Disable -} -var file_proto_lucidity_lucidity_proto_depIdxs = []int32{ - 0, // 0: build.please.remote.lucidity.ListWorkersResponse.workers:type_name -> build.please.remote.lucidity.Worker - 0, // 1: build.please.remote.lucidity.Lucidity.Update:input_type -> build.please.remote.lucidity.Worker - 2, // 2: build.please.remote.lucidity.Lucidity.ListWorkers:input_type -> build.please.remote.lucidity.ListWorkersRequest - 1, // 3: build.please.remote.lucidity.Lucidity.Update:output_type -> build.please.remote.lucidity.UpdateResponse - 3, // 4: build.please.remote.lucidity.Lucidity.ListWorkers:output_type -> build.please.remote.lucidity.ListWorkersResponse - 3, // [3:5] is the sub-list for method output_type - 1, // [1:3] is the sub-list for method input_type - 1, // [1:1] is the sub-list for extension type_name - 1, // [1:1] is the sub-list for extension extendee - 0, // [0:1] is the sub-list for field type_name -} - -func init() { file_proto_lucidity_lucidity_proto_init() } -func file_proto_lucidity_lucidity_proto_init() { - if File_proto_lucidity_lucidity_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_proto_lucidity_lucidity_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Worker); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_lucidity_lucidity_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_lucidity_lucidity_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListWorkersRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_lucidity_lucidity_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListWorkersResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_lucidity_lucidity_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Disable); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } - type x struct{} - out := protoimpl.TypeBuilder{ - File: protoimpl.DescBuilder{ - GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_proto_lucidity_lucidity_proto_rawDesc, - NumEnums: 0, - NumMessages: 5, - NumExtensions: 0, - NumServices: 1, - }, - GoTypes: file_proto_lucidity_lucidity_proto_goTypes, - DependencyIndexes: file_proto_lucidity_lucidity_proto_depIdxs, - MessageInfos: file_proto_lucidity_lucidity_proto_msgTypes, - }.Build() - File_proto_lucidity_lucidity_proto = out.File - file_proto_lucidity_lucidity_proto_rawDesc = nil - file_proto_lucidity_lucidity_proto_goTypes = nil - file_proto_lucidity_lucidity_proto_depIdxs = nil -} diff --git a/proto/lucidity/lucidity_grpc.pb.go b/proto/lucidity/lucidity_grpc.pb.go deleted file mode 100644 index 8cc75515..00000000 --- a/proto/lucidity/lucidity_grpc.pb.go +++ /dev/null @@ -1,141 +0,0 @@ -// Code generated by protoc-gen-go-grpc. DO NOT EDIT. - -package lucidity - -import ( - context "context" - grpc "google.golang.org/grpc" - codes "google.golang.org/grpc/codes" - status "google.golang.org/grpc/status" -) - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -// Requires gRPC-Go v1.32.0 or later. -const _ = grpc.SupportPackageIsVersion7 - -// LucidityClient is the client API for Lucidity service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. -type LucidityClient interface { - // Update sends the server an update on the current state of a worker. - Update(ctx context.Context, in *Worker, opts ...grpc.CallOption) (*UpdateResponse, error) - // List the current set of workers - ListWorkers(ctx context.Context, in *ListWorkersRequest, opts ...grpc.CallOption) (*ListWorkersResponse, error) -} - -type lucidityClient struct { - cc grpc.ClientConnInterface -} - -func NewLucidityClient(cc grpc.ClientConnInterface) LucidityClient { - return &lucidityClient{cc} -} - -func (c *lucidityClient) Update(ctx context.Context, in *Worker, opts ...grpc.CallOption) (*UpdateResponse, error) { - out := new(UpdateResponse) - err := c.cc.Invoke(ctx, "/build.please.remote.lucidity.Lucidity/Update", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *lucidityClient) ListWorkers(ctx context.Context, in *ListWorkersRequest, opts ...grpc.CallOption) (*ListWorkersResponse, error) { - out := new(ListWorkersResponse) - err := c.cc.Invoke(ctx, "/build.please.remote.lucidity.Lucidity/ListWorkers", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// LucidityServer is the server API for Lucidity service. -// All implementations must embed UnimplementedLucidityServer -// for forward compatibility -type LucidityServer interface { - // Update sends the server an update on the current state of a worker. - Update(context.Context, *Worker) (*UpdateResponse, error) - // List the current set of workers - ListWorkers(context.Context, *ListWorkersRequest) (*ListWorkersResponse, error) - mustEmbedUnimplementedLucidityServer() -} - -// UnimplementedLucidityServer must be embedded to have forward compatible implementations. -type UnimplementedLucidityServer struct { -} - -func (UnimplementedLucidityServer) Update(context.Context, *Worker) (*UpdateResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Update not implemented") -} -func (UnimplementedLucidityServer) ListWorkers(context.Context, *ListWorkersRequest) (*ListWorkersResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ListWorkers not implemented") -} -func (UnimplementedLucidityServer) mustEmbedUnimplementedLucidityServer() {} - -// UnsafeLucidityServer may be embedded to opt out of forward compatibility for this service. -// Use of this interface is not recommended, as added methods to LucidityServer will -// result in compilation errors. -type UnsafeLucidityServer interface { - mustEmbedUnimplementedLucidityServer() -} - -func RegisterLucidityServer(s grpc.ServiceRegistrar, srv LucidityServer) { - s.RegisterService(&Lucidity_ServiceDesc, srv) -} - -func _Lucidity_Update_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(Worker) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(LucidityServer).Update(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/build.please.remote.lucidity.Lucidity/Update", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(LucidityServer).Update(ctx, req.(*Worker)) - } - return interceptor(ctx, in, info, handler) -} - -func _Lucidity_ListWorkers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ListWorkersRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(LucidityServer).ListWorkers(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/build.please.remote.lucidity.Lucidity/ListWorkers", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(LucidityServer).ListWorkers(ctx, req.(*ListWorkersRequest)) - } - return interceptor(ctx, in, info, handler) -} - -// Lucidity_ServiceDesc is the grpc.ServiceDesc for Lucidity service. -// It's only intended for direct use with grpc.RegisterService, -// and not to be introspected or modified (even as a copy) -var Lucidity_ServiceDesc = grpc.ServiceDesc{ - ServiceName: "build.please.remote.lucidity.Lucidity", - HandlerType: (*LucidityServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "Update", - Handler: _Lucidity_Update_Handler, - }, - { - MethodName: "ListWorkers", - Handler: _Lucidity_ListWorkers_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "proto/lucidity/lucidity.proto", -} diff --git a/proto/mettle/mettle.pb.go b/proto/mettle/mettle.pb.go deleted file mode 100644 index 7fcb07ea..00000000 --- a/proto/mettle/mettle.pb.go +++ /dev/null @@ -1,409 +0,0 @@ -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.25.0 -// protoc v3.11.4 -// source: proto/mettle/mettle.proto - -package build_please_remote_mettle - -import ( - context "context" - proto "github.com/golang/protobuf/proto" - grpc "google.golang.org/grpc" - codes "google.golang.org/grpc/codes" - status "google.golang.org/grpc/status" - protoreflect "google.golang.org/protobuf/reflect/protoreflect" - protoimpl "google.golang.org/protobuf/runtime/protoimpl" - reflect "reflect" - sync "sync" -) - -const ( - // Verify that this generated code is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) - // Verify that runtime/protoimpl is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) -) - -// This is a compile-time assertion that a sufficiently up-to-date version -// of the legacy proto package is being used. -const _ = proto.ProtoPackageIsVersion4 - -type Job struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ID string `protobuf:"bytes,1,opt,name=ID,proto3" json:"ID,omitempty"` - Current []byte `protobuf:"bytes,2,opt,name=Current,proto3" json:"Current,omitempty"` - LastUpdate int64 `protobuf:"varint,5,opt,name=LastUpdate,proto3" json:"LastUpdate,omitempty"` - SentFirst bool `protobuf:"varint,3,opt,name=SentFirst,proto3" json:"SentFirst,omitempty"` - Done bool `protobuf:"varint,4,opt,name=Done,proto3" json:"Done,omitempty"` - StartTime int64 `protobuf:"varint,6,opt,name=StartTime,proto3" json:"StartTime,omitempty"` -} - -func (x *Job) Reset() { - *x = Job{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_mettle_mettle_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Job) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Job) ProtoMessage() {} - -func (x *Job) ProtoReflect() protoreflect.Message { - mi := &file_proto_mettle_mettle_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Job.ProtoReflect.Descriptor instead. -func (*Job) Descriptor() ([]byte, []int) { - return file_proto_mettle_mettle_proto_rawDescGZIP(), []int{0} -} - -func (x *Job) GetID() string { - if x != nil { - return x.ID - } - return "" -} - -func (x *Job) GetCurrent() []byte { - if x != nil { - return x.Current - } - return nil -} - -func (x *Job) GetLastUpdate() int64 { - if x != nil { - return x.LastUpdate - } - return 0 -} - -func (x *Job) GetSentFirst() bool { - if x != nil { - return x.SentFirst - } - return false -} - -func (x *Job) GetDone() bool { - if x != nil { - return x.Done - } - return false -} - -func (x *Job) GetStartTime() int64 { - if x != nil { - return x.StartTime - } - return 0 -} - -type ServeExecutionsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *ServeExecutionsRequest) Reset() { - *x = ServeExecutionsRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_mettle_mettle_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ServeExecutionsRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ServeExecutionsRequest) ProtoMessage() {} - -func (x *ServeExecutionsRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mettle_mettle_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ServeExecutionsRequest.ProtoReflect.Descriptor instead. -func (*ServeExecutionsRequest) Descriptor() ([]byte, []int) { - return file_proto_mettle_mettle_proto_rawDescGZIP(), []int{1} -} - -type ServeExecutionsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Jobs []*Job `protobuf:"bytes,1,rep,name=jobs,proto3" json:"jobs,omitempty"` -} - -func (x *ServeExecutionsResponse) Reset() { - *x = ServeExecutionsResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_mettle_mettle_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ServeExecutionsResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ServeExecutionsResponse) ProtoMessage() {} - -func (x *ServeExecutionsResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mettle_mettle_proto_msgTypes[2] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ServeExecutionsResponse.ProtoReflect.Descriptor instead. -func (*ServeExecutionsResponse) Descriptor() ([]byte, []int) { - return file_proto_mettle_mettle_proto_rawDescGZIP(), []int{2} -} - -func (x *ServeExecutionsResponse) GetJobs() []*Job { - if x != nil { - return x.Jobs - } - return nil -} - -var File_proto_mettle_mettle_proto protoreflect.FileDescriptor - -var file_proto_mettle_mettle_proto_rawDesc = []byte{ - 0x0a, 0x19, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x6d, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x2f, 0x6d, - 0x65, 0x74, 0x74, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1a, 0x62, 0x75, 0x69, - 0x6c, 0x64, 0x2e, 0x70, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, - 0x2e, 0x6d, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x22, 0x9f, 0x01, 0x0a, 0x03, 0x4a, 0x6f, 0x62, 0x12, - 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x49, 0x44, 0x12, - 0x18, 0x0a, 0x07, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, - 0x52, 0x07, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x4c, 0x61, 0x73, - 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x4c, - 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x53, 0x65, 0x6e, - 0x74, 0x46, 0x69, 0x72, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x53, 0x65, - 0x6e, 0x74, 0x46, 0x69, 0x72, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x44, 0x6f, 0x6e, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x44, 0x6f, 0x6e, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x53, - 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, - 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x18, 0x0a, 0x16, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x22, 0x4e, 0x0a, 0x17, 0x53, 0x65, 0x72, 0x76, 0x65, 0x45, 0x78, 0x65, 0x63, - 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, - 0x0a, 0x04, 0x6a, 0x6f, 0x62, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x62, - 0x75, 0x69, 0x6c, 0x64, 0x2e, 0x70, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x2e, 0x72, 0x65, 0x6d, 0x6f, - 0x74, 0x65, 0x2e, 0x6d, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x2e, 0x4a, 0x6f, 0x62, 0x52, 0x04, 0x6a, - 0x6f, 0x62, 0x73, 0x32, 0x87, 0x01, 0x0a, 0x09, 0x42, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, - 0x70, 0x12, 0x7a, 0x0a, 0x0f, 0x53, 0x65, 0x72, 0x76, 0x65, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x32, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x2e, 0x70, 0x6c, 0x65, - 0x61, 0x73, 0x65, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x6d, 0x65, 0x74, 0x74, 0x6c, - 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, - 0x2e, 0x70, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x6d, - 0x65, 0x74, 0x74, 0x6c, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x45, 0x78, 0x65, 0x63, 0x75, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x62, 0x06, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x33, -} - -var ( - file_proto_mettle_mettle_proto_rawDescOnce sync.Once - file_proto_mettle_mettle_proto_rawDescData = file_proto_mettle_mettle_proto_rawDesc -) - -func file_proto_mettle_mettle_proto_rawDescGZIP() []byte { - file_proto_mettle_mettle_proto_rawDescOnce.Do(func() { - file_proto_mettle_mettle_proto_rawDescData = protoimpl.X.CompressGZIP(file_proto_mettle_mettle_proto_rawDescData) - }) - return file_proto_mettle_mettle_proto_rawDescData -} - -var file_proto_mettle_mettle_proto_msgTypes = make([]protoimpl.MessageInfo, 3) -var file_proto_mettle_mettle_proto_goTypes = []interface{}{ - (*Job)(nil), // 0: build.please.remote.mettle.Job - (*ServeExecutionsRequest)(nil), // 1: build.please.remote.mettle.ServeExecutionsRequest - (*ServeExecutionsResponse)(nil), // 2: build.please.remote.mettle.ServeExecutionsResponse -} -var file_proto_mettle_mettle_proto_depIdxs = []int32{ - 0, // 0: build.please.remote.mettle.ServeExecutionsResponse.jobs:type_name -> build.please.remote.mettle.Job - 1, // 1: build.please.remote.mettle.Bootstrap.ServeExecutions:input_type -> build.please.remote.mettle.ServeExecutionsRequest - 2, // 2: build.please.remote.mettle.Bootstrap.ServeExecutions:output_type -> build.please.remote.mettle.ServeExecutionsResponse - 2, // [2:3] is the sub-list for method output_type - 1, // [1:2] is the sub-list for method input_type - 1, // [1:1] is the sub-list for extension type_name - 1, // [1:1] is the sub-list for extension extendee - 0, // [0:1] is the sub-list for field type_name -} - -func init() { file_proto_mettle_mettle_proto_init() } -func file_proto_mettle_mettle_proto_init() { - if File_proto_mettle_mettle_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_proto_mettle_mettle_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Job); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_mettle_mettle_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ServeExecutionsRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_mettle_mettle_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ServeExecutionsResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } - type x struct{} - out := protoimpl.TypeBuilder{ - File: protoimpl.DescBuilder{ - GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_proto_mettle_mettle_proto_rawDesc, - NumEnums: 0, - NumMessages: 3, - NumExtensions: 0, - NumServices: 1, - }, - GoTypes: file_proto_mettle_mettle_proto_goTypes, - DependencyIndexes: file_proto_mettle_mettle_proto_depIdxs, - MessageInfos: file_proto_mettle_mettle_proto_msgTypes, - }.Build() - File_proto_mettle_mettle_proto = out.File - file_proto_mettle_mettle_proto_rawDesc = nil - file_proto_mettle_mettle_proto_goTypes = nil - file_proto_mettle_mettle_proto_depIdxs = nil -} - -// Reference imports to suppress errors if they are not otherwise used. -var _ context.Context -var _ grpc.ClientConnInterface - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -const _ = grpc.SupportPackageIsVersion6 - -// BootstrapClient is the client API for Bootstrap service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type BootstrapClient interface { - ServeExecutions(ctx context.Context, in *ServeExecutionsRequest, opts ...grpc.CallOption) (*ServeExecutionsResponse, error) -} - -type bootstrapClient struct { - cc grpc.ClientConnInterface -} - -func NewBootstrapClient(cc grpc.ClientConnInterface) BootstrapClient { - return &bootstrapClient{cc} -} - -func (c *bootstrapClient) ServeExecutions(ctx context.Context, in *ServeExecutionsRequest, opts ...grpc.CallOption) (*ServeExecutionsResponse, error) { - out := new(ServeExecutionsResponse) - err := c.cc.Invoke(ctx, "/build.please.remote.mettle.Bootstrap/ServeExecutions", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// BootstrapServer is the server API for Bootstrap service. -type BootstrapServer interface { - ServeExecutions(context.Context, *ServeExecutionsRequest) (*ServeExecutionsResponse, error) -} - -// UnimplementedBootstrapServer can be embedded to have forward compatible implementations. -type UnimplementedBootstrapServer struct { -} - -func (*UnimplementedBootstrapServer) ServeExecutions(context.Context, *ServeExecutionsRequest) (*ServeExecutionsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ServeExecutions not implemented") -} - -func RegisterBootstrapServer(s *grpc.Server, srv BootstrapServer) { - s.RegisterService(&_Bootstrap_serviceDesc, srv) -} - -func _Bootstrap_ServeExecutions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ServeExecutionsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(BootstrapServer).ServeExecutions(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/build.please.remote.mettle.Bootstrap/ServeExecutions", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(BootstrapServer).ServeExecutions(ctx, req.(*ServeExecutionsRequest)) - } - return interceptor(ctx, in, info, handler) -} - -var _Bootstrap_serviceDesc = grpc.ServiceDesc{ - ServiceName: "build.please.remote.mettle.Bootstrap", - HandlerType: (*BootstrapServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "ServeExecutions", - Handler: _Bootstrap_ServeExecutions_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "proto/mettle/mettle.proto", -} diff --git a/proto/purity/purity.pb.go b/proto/purity/purity.pb.go deleted file mode 100644 index d39e319d..00000000 --- a/proto/purity/purity.pb.go +++ /dev/null @@ -1,723 +0,0 @@ -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.25.0 -// protoc v3.11.4 -// source: proto/purity/purity.proto - -package build_please_remote_purity - -import ( - context "context" - proto "github.com/golang/protobuf/proto" - grpc "google.golang.org/grpc" - codes "google.golang.org/grpc/codes" - status "google.golang.org/grpc/status" - protoreflect "google.golang.org/protobuf/reflect/protoreflect" - protoimpl "google.golang.org/protobuf/runtime/protoimpl" - reflect "reflect" - sync "sync" -) - -const ( - // Verify that this generated code is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) - // Verify that runtime/protoimpl is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) -) - -// This is a compile-time assertion that a sufficiently up-to-date version -// of the legacy proto package is being used. -const _ = proto.ProtoPackageIsVersion4 - -type ListRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The prefix of blobs to list. Should be exactly two hex characters. - Prefix string `protobuf:"bytes,1,opt,name=prefix,proto3" json:"prefix,omitempty"` -} - -func (x *ListRequest) Reset() { - *x = ListRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_purity_purity_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ListRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ListRequest) ProtoMessage() {} - -func (x *ListRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_purity_purity_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ListRequest.ProtoReflect.Descriptor instead. -func (*ListRequest) Descriptor() ([]byte, []int) { - return file_proto_purity_purity_proto_rawDescGZIP(), []int{0} -} - -func (x *ListRequest) GetPrefix() string { - if x != nil { - return x.Prefix - } - return "" -} - -type ListResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // List of results in the AC on this server. - ActionResults []*ActionResult `protobuf:"bytes,1,rep,name=action_results,json=actionResults,proto3" json:"action_results,omitempty"` - // List of blobs this server stores. - Blobs []*Blob `protobuf:"bytes,2,rep,name=blobs,proto3" json:"blobs,omitempty"` -} - -func (x *ListResponse) Reset() { - *x = ListResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_purity_purity_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ListResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ListResponse) ProtoMessage() {} - -func (x *ListResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_purity_purity_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ListResponse.ProtoReflect.Descriptor instead. -func (*ListResponse) Descriptor() ([]byte, []int) { - return file_proto_purity_purity_proto_rawDescGZIP(), []int{1} -} - -func (x *ListResponse) GetActionResults() []*ActionResult { - if x != nil { - return x.ActionResults - } - return nil -} - -func (x *ListResponse) GetBlobs() []*Blob { - if x != nil { - return x.Blobs - } - return nil -} - -// An ActionResult is a reference to an action result with a little additional -// information. -type ActionResult struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Hash string `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"` - SizeBytes int64 `protobuf:"varint,2,opt,name=size_bytes,json=sizeBytes,proto3" json:"size_bytes,omitempty"` - LastAccessed int64 `protobuf:"varint,3,opt,name=last_accessed,json=lastAccessed,proto3" json:"last_accessed,omitempty"` - Replicas int32 `protobuf:"varint,4,opt,name=replicas,proto3" json:"replicas,omitempty"` - CachePrefix string `protobuf:"bytes,5,opt,name=cache_prefix,json=cachePrefix,proto3" json:"cache_prefix,omitempty"` -} - -func (x *ActionResult) Reset() { - *x = ActionResult{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_purity_purity_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ActionResult) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ActionResult) ProtoMessage() {} - -func (x *ActionResult) ProtoReflect() protoreflect.Message { - mi := &file_proto_purity_purity_proto_msgTypes[2] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ActionResult.ProtoReflect.Descriptor instead. -func (*ActionResult) Descriptor() ([]byte, []int) { - return file_proto_purity_purity_proto_rawDescGZIP(), []int{2} -} - -func (x *ActionResult) GetHash() string { - if x != nil { - return x.Hash - } - return "" -} - -func (x *ActionResult) GetSizeBytes() int64 { - if x != nil { - return x.SizeBytes - } - return 0 -} - -func (x *ActionResult) GetLastAccessed() int64 { - if x != nil { - return x.LastAccessed - } - return 0 -} - -func (x *ActionResult) GetReplicas() int32 { - if x != nil { - return x.Replicas - } - return 0 -} - -func (x *ActionResult) GetCachePrefix() string { - if x != nil { - return x.CachePrefix - } - return "" -} - -type Blob struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Hash string `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"` - SizeBytes int64 `protobuf:"varint,2,opt,name=size_bytes,json=sizeBytes,proto3" json:"size_bytes,omitempty"` - Replicas int32 `protobuf:"varint,4,opt,name=replicas,proto3" json:"replicas,omitempty"` - CachePrefix string `protobuf:"bytes,5,opt,name=cache_prefix,json=cachePrefix,proto3" json:"cache_prefix,omitempty"` -} - -func (x *Blob) Reset() { - *x = Blob{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_purity_purity_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Blob) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Blob) ProtoMessage() {} - -func (x *Blob) ProtoReflect() protoreflect.Message { - mi := &file_proto_purity_purity_proto_msgTypes[3] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Blob.ProtoReflect.Descriptor instead. -func (*Blob) Descriptor() ([]byte, []int) { - return file_proto_purity_purity_proto_rawDescGZIP(), []int{3} -} - -func (x *Blob) GetHash() string { - if x != nil { - return x.Hash - } - return "" -} - -func (x *Blob) GetSizeBytes() int64 { - if x != nil { - return x.SizeBytes - } - return 0 -} - -func (x *Blob) GetReplicas() int32 { - if x != nil { - return x.Replicas - } - return 0 -} - -func (x *Blob) GetCachePrefix() string { - if x != nil { - return x.CachePrefix - } - return "" -} - -type DeleteRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Prefix of blobs to delete. Should be exactly two hex characters. - Prefix string `protobuf:"bytes,3,opt,name=prefix,proto3" json:"prefix,omitempty"` - // Action results to delete. - ActionResults []*Blob `protobuf:"bytes,1,rep,name=action_results,json=actionResults,proto3" json:"action_results,omitempty"` - // CAS blobs to delete. - Blobs []*Blob `protobuf:"bytes,2,rep,name=blobs,proto3" json:"blobs,omitempty"` - // True to force a 'hard' delete. - // False gives the server an option to 'soft' delete them (however it may - // interpret that). - Hard bool `protobuf:"varint,4,opt,name=hard,proto3" json:"hard,omitempty"` -} - -func (x *DeleteRequest) Reset() { - *x = DeleteRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_purity_purity_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteRequest) ProtoMessage() {} - -func (x *DeleteRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_purity_purity_proto_msgTypes[4] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DeleteRequest.ProtoReflect.Descriptor instead. -func (*DeleteRequest) Descriptor() ([]byte, []int) { - return file_proto_purity_purity_proto_rawDescGZIP(), []int{4} -} - -func (x *DeleteRequest) GetPrefix() string { - if x != nil { - return x.Prefix - } - return "" -} - -func (x *DeleteRequest) GetActionResults() []*Blob { - if x != nil { - return x.ActionResults - } - return nil -} - -func (x *DeleteRequest) GetBlobs() []*Blob { - if x != nil { - return x.Blobs - } - return nil -} - -func (x *DeleteRequest) GetHard() bool { - if x != nil { - return x.Hard - } - return false -} - -type DeleteResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *DeleteResponse) Reset() { - *x = DeleteResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_purity_purity_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteResponse) ProtoMessage() {} - -func (x *DeleteResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_purity_purity_proto_msgTypes[5] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DeleteResponse.ProtoReflect.Descriptor instead. -func (*DeleteResponse) Descriptor() ([]byte, []int) { - return file_proto_purity_purity_proto_rawDescGZIP(), []int{5} -} - -var File_proto_purity_purity_proto protoreflect.FileDescriptor - -var file_proto_purity_purity_proto_rawDesc = []byte{ - 0x0a, 0x19, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x70, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2f, 0x70, - 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1a, 0x62, 0x75, 0x69, - 0x6c, 0x64, 0x2e, 0x70, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, - 0x2e, 0x70, 0x75, 0x72, 0x69, 0x74, 0x79, 0x22, 0x25, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x22, 0x97, - 0x01, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x4f, 0x0a, 0x0e, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x2e, - 0x70, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x70, 0x75, - 0x72, 0x69, 0x74, 0x79, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x52, 0x0d, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, - 0x12, 0x36, 0x0a, 0x05, 0x62, 0x6c, 0x6f, 0x62, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x20, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x2e, 0x70, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x2e, 0x72, - 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x70, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x42, 0x6c, 0x6f, - 0x62, 0x52, 0x05, 0x62, 0x6c, 0x6f, 0x62, 0x73, 0x22, 0xa5, 0x01, 0x0a, 0x0c, 0x41, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, - 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x1d, 0x0a, - 0x0a, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x09, 0x73, 0x69, 0x7a, 0x65, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, - 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x65, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6c, 0x61, 0x73, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x65, - 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x12, 0x21, 0x0a, - 0x0c, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x61, 0x63, 0x68, 0x65, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, - 0x22, 0x78, 0x0a, 0x04, 0x42, 0x6c, 0x6f, 0x62, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x1d, 0x0a, 0x0a, - 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x09, 0x73, 0x69, 0x7a, 0x65, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x72, - 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x72, - 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x61, 0x63, 0x68, 0x65, - 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, - 0x61, 0x63, 0x68, 0x65, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x22, 0xbc, 0x01, 0x0a, 0x0d, 0x44, - 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, - 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, - 0x65, 0x66, 0x69, 0x78, 0x12, 0x47, 0x0a, 0x0e, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x62, - 0x75, 0x69, 0x6c, 0x64, 0x2e, 0x70, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x2e, 0x72, 0x65, 0x6d, 0x6f, - 0x74, 0x65, 0x2e, 0x70, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x42, 0x6c, 0x6f, 0x62, 0x52, 0x0d, - 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x36, 0x0a, - 0x05, 0x62, 0x6c, 0x6f, 0x62, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x62, - 0x75, 0x69, 0x6c, 0x64, 0x2e, 0x70, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x2e, 0x72, 0x65, 0x6d, 0x6f, - 0x74, 0x65, 0x2e, 0x70, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x42, 0x6c, 0x6f, 0x62, 0x52, 0x05, - 0x62, 0x6c, 0x6f, 0x62, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x72, 0x64, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x04, 0x68, 0x61, 0x72, 0x64, 0x22, 0x10, 0x0a, 0x0e, 0x44, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0xc0, 0x01, 0x0a, 0x02, - 0x47, 0x43, 0x12, 0x59, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x27, 0x2e, 0x62, 0x75, 0x69, - 0x6c, 0x64, 0x2e, 0x70, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, - 0x2e, 0x70, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x2e, 0x70, 0x6c, 0x65, 0x61, - 0x73, 0x65, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x70, 0x75, 0x72, 0x69, 0x74, 0x79, - 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, - 0x06, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x29, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x2e, - 0x70, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x70, 0x75, - 0x72, 0x69, 0x74, 0x79, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x2e, 0x70, 0x6c, 0x65, 0x61, 0x73, - 0x65, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x70, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x62, 0x06, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, -} - -var ( - file_proto_purity_purity_proto_rawDescOnce sync.Once - file_proto_purity_purity_proto_rawDescData = file_proto_purity_purity_proto_rawDesc -) - -func file_proto_purity_purity_proto_rawDescGZIP() []byte { - file_proto_purity_purity_proto_rawDescOnce.Do(func() { - file_proto_purity_purity_proto_rawDescData = protoimpl.X.CompressGZIP(file_proto_purity_purity_proto_rawDescData) - }) - return file_proto_purity_purity_proto_rawDescData -} - -var file_proto_purity_purity_proto_msgTypes = make([]protoimpl.MessageInfo, 6) -var file_proto_purity_purity_proto_goTypes = []interface{}{ - (*ListRequest)(nil), // 0: build.please.remote.purity.ListRequest - (*ListResponse)(nil), // 1: build.please.remote.purity.ListResponse - (*ActionResult)(nil), // 2: build.please.remote.purity.ActionResult - (*Blob)(nil), // 3: build.please.remote.purity.Blob - (*DeleteRequest)(nil), // 4: build.please.remote.purity.DeleteRequest - (*DeleteResponse)(nil), // 5: build.please.remote.purity.DeleteResponse -} -var file_proto_purity_purity_proto_depIdxs = []int32{ - 2, // 0: build.please.remote.purity.ListResponse.action_results:type_name -> build.please.remote.purity.ActionResult - 3, // 1: build.please.remote.purity.ListResponse.blobs:type_name -> build.please.remote.purity.Blob - 3, // 2: build.please.remote.purity.DeleteRequest.action_results:type_name -> build.please.remote.purity.Blob - 3, // 3: build.please.remote.purity.DeleteRequest.blobs:type_name -> build.please.remote.purity.Blob - 0, // 4: build.please.remote.purity.GC.List:input_type -> build.please.remote.purity.ListRequest - 4, // 5: build.please.remote.purity.GC.Delete:input_type -> build.please.remote.purity.DeleteRequest - 1, // 6: build.please.remote.purity.GC.List:output_type -> build.please.remote.purity.ListResponse - 5, // 7: build.please.remote.purity.GC.Delete:output_type -> build.please.remote.purity.DeleteResponse - 6, // [6:8] is the sub-list for method output_type - 4, // [4:6] is the sub-list for method input_type - 4, // [4:4] is the sub-list for extension type_name - 4, // [4:4] is the sub-list for extension extendee - 0, // [0:4] is the sub-list for field type_name -} - -func init() { file_proto_purity_purity_proto_init() } -func file_proto_purity_purity_proto_init() { - if File_proto_purity_purity_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_proto_purity_purity_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_purity_purity_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_purity_purity_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ActionResult); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_purity_purity_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Blob); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_purity_purity_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_purity_purity_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } - type x struct{} - out := protoimpl.TypeBuilder{ - File: protoimpl.DescBuilder{ - GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_proto_purity_purity_proto_rawDesc, - NumEnums: 0, - NumMessages: 6, - NumExtensions: 0, - NumServices: 1, - }, - GoTypes: file_proto_purity_purity_proto_goTypes, - DependencyIndexes: file_proto_purity_purity_proto_depIdxs, - MessageInfos: file_proto_purity_purity_proto_msgTypes, - }.Build() - File_proto_purity_purity_proto = out.File - file_proto_purity_purity_proto_rawDesc = nil - file_proto_purity_purity_proto_goTypes = nil - file_proto_purity_purity_proto_depIdxs = nil -} - -// Reference imports to suppress errors if they are not otherwise used. -var _ context.Context -var _ grpc.ClientConnInterface - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -const _ = grpc.SupportPackageIsVersion6 - -// GCClient is the client API for GC service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type GCClient interface { - // List provides a listing of currently stored items in the AC / CAS. - List(ctx context.Context, in *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) - // Delete removes some items from the server. - Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*DeleteResponse, error) -} - -type gCClient struct { - cc grpc.ClientConnInterface -} - -func NewGCClient(cc grpc.ClientConnInterface) GCClient { - return &gCClient{cc} -} - -func (c *gCClient) List(ctx context.Context, in *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) { - out := new(ListResponse) - err := c.cc.Invoke(ctx, "/build.please.remote.purity.GC/List", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *gCClient) Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*DeleteResponse, error) { - out := new(DeleteResponse) - err := c.cc.Invoke(ctx, "/build.please.remote.purity.GC/Delete", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// GCServer is the server API for GC service. -type GCServer interface { - // List provides a listing of currently stored items in the AC / CAS. - List(context.Context, *ListRequest) (*ListResponse, error) - // Delete removes some items from the server. - Delete(context.Context, *DeleteRequest) (*DeleteResponse, error) -} - -// UnimplementedGCServer can be embedded to have forward compatible implementations. -type UnimplementedGCServer struct { -} - -func (*UnimplementedGCServer) List(context.Context, *ListRequest) (*ListResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method List not implemented") -} -func (*UnimplementedGCServer) Delete(context.Context, *DeleteRequest) (*DeleteResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Delete not implemented") -} - -func RegisterGCServer(s *grpc.Server, srv GCServer) { - s.RegisterService(&_GC_serviceDesc, srv) -} - -func _GC_List_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ListRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GCServer).List(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/build.please.remote.purity.GC/List", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GCServer).List(ctx, req.(*ListRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _GC_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(DeleteRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GCServer).Delete(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/build.please.remote.purity.GC/Delete", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GCServer).Delete(ctx, req.(*DeleteRequest)) - } - return interceptor(ctx, in, info, handler) -} - -var _GC_serviceDesc = grpc.ServiceDesc{ - ServiceName: "build.please.remote.purity.GC", - HandlerType: (*GCServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "List", - Handler: _GC_List_Handler, - }, - { - MethodName: "Delete", - Handler: _GC_Delete_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "proto/purity/purity.proto", -} diff --git a/third_party/binary/BUILD b/third_party/binary/BUILD index 51e073a8..1ef24578 100644 --- a/third_party/binary/BUILD +++ b/third_party/binary/BUILD @@ -1,4 +1,4 @@ -PUKU_VERSION = "1.16.0" +PUKU_VERSION = "1.17.1" remote_file( name = "puku", diff --git a/third_party/go/BUILD b/third_party/go/BUILD index 9222349e..4f1eb827 100644 --- a/third_party/go/BUILD +++ b/third_party/go/BUILD @@ -5,7 +5,7 @@ package(default_visibility = ["PUBLIC"]) go_toolchain( name = "toolchain", install_std = False, - version = "1.24.0", + version = "1.26.5", ) go_stdlib( @@ -145,7 +145,7 @@ go_repo( name = "golang-protobuf", install = ["..."], module = "google.golang.org/protobuf", - version = "v1.36.10", + version = "v1.36.11", ) go_repo( @@ -170,7 +170,7 @@ go_repo( go_repo( module = "google.golang.org/genproto/googleapis/rpc", - version = "v0.0.0-20251202230838-ff82c1b0f217", + version = "v0.0.0-20260706201446-f0a921348800", ) go_repo( @@ -235,12 +235,12 @@ go_repo( go_repo( module = "google.golang.org/api", - version = "v0.155.0", + version = "v0.288.0", ) go_repo( module = "github.com/pmezard/go-difflib", - version = "v1.0.0", + version = "v1.0.1-0.20181226105442-5d4384ee4fb2", ) go_repo( @@ -300,7 +300,7 @@ go_repo( go_repo( module = "cloud.google.com/go", - version = "v0.111.0", + version = "v0.123.0", ) go_repo( @@ -430,7 +430,7 @@ go_repo( go_repo( module = "golang.org/x/net", - version = "v0.48.0", + version = "v0.57.0", ) go_repo( @@ -465,7 +465,7 @@ go_repo( go_repo( module = "go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp", - version = "v0.46.1", + version = "v0.69.0", ) go_repo( @@ -515,7 +515,7 @@ go_repo( go_repo( module = "golang.org/x/text", - version = "v0.32.0", + version = "v0.40.0", ) go_repo( @@ -655,7 +655,7 @@ go_repo( go_repo( module = "golang.org/x/sys", - version = "v0.39.0", + version = "v0.47.0", ) go_repo( @@ -800,7 +800,7 @@ go_repo( go_repo( module = "golang.org/x/xerrors", - version = "v0.0.0-20231012003039-104605ab7028", + version = "v0.0.0-20240903120638-7835f813f4da", ) go_repo( @@ -820,7 +820,7 @@ go_repo( go_repo( module = "github.com/envoyproxy/protoc-gen-validate", - version = "v0.10.0", + version = "v1.3.3", ) go_repo( @@ -830,7 +830,7 @@ go_repo( go_repo( module = "github.com/mostynb/go-grpc-compression", - version = "v1.2.2", + version = "v1.2.3", ) go_repo( @@ -850,7 +850,7 @@ go_repo( go_repo( module = "github.com/googleapis/gax-go/v2", - version = "v2.12.0", + version = "v2.23.0", ) go_repo( @@ -915,7 +915,7 @@ go_repo( go_repo( module = "golang.org/x/term", - version = "v0.38.0", + version = "v0.45.0", ) go_repo( @@ -925,7 +925,7 @@ go_repo( go_repo( module = "go.opentelemetry.io/otel/sdk", - version = "v1.11.2", + version = "v1.44.0", ) go_repo( @@ -1185,7 +1185,7 @@ go_repo( go_repo( module = "github.com/google/pprof", - version = "v0.0.0-20231229205709-960ae82b1e42", + version = "v0.0.0-20260709232956-b9395ee17fa0", ) go_repo( @@ -1230,7 +1230,7 @@ go_repo( go_repo( module = "github.com/googleapis/enterprise-certificate-proxy", - version = "v0.3.2", + version = "v0.3.18", ) go_repo( @@ -1365,7 +1365,7 @@ go_repo( go_repo( module = "github.com/bazelbuild/remote-apis", - version = "v0.0.0-20230411132548-35aee1c4a425", + version = "v0.0.0-20260331222004-becdd8f9ff81", ) go_repo( @@ -1395,7 +1395,7 @@ go_repo( go_repo( module = "cloud.google.com/go/pubsub", - version = "v1.33.0", + version = "v1.50.4", ) go_repo( @@ -1640,7 +1640,7 @@ go_repo( go_repo( module = "gocloud.dev", - version = "v0.36.0", + version = "v0.46.0", ) go_repo( @@ -1710,7 +1710,7 @@ go_repo( go_repo( module = "github.com/prometheus/common", - version = "v0.45.0", + version = "v0.70.0", ) go_repo( @@ -1745,7 +1745,7 @@ go_repo( go_repo( module = "go.uber.org/automaxprocs", - version = "v1.5.3", + version = "v1.6.0", ) go_repo( @@ -1810,7 +1810,7 @@ go_repo( go_repo( module = "github.com/pkg/xattr", - version = "v0.4.9", + version = "v0.4.12", ) go_repo( @@ -1875,7 +1875,7 @@ go_repo( go_repo( module = "github.com/thought-machine/go-flags", - version = "v1.6.3", + version = "v1.7.0", ) go_repo( @@ -1900,7 +1900,7 @@ go_repo( go_repo( module = "github.com/dgraph-io/ristretto", - version = "v0.1.1", + version = "v0.2.0", ) go_repo( @@ -1970,7 +1970,7 @@ go_repo( go_repo( module = "google.golang.org/genproto/googleapis/api", - version = "v0.0.0-20251202230838-ff82c1b0f217", + version = "v0.0.0-20260706201446-f0a921348800", ) go_repo( @@ -2045,7 +2045,7 @@ go_repo( go_repo( module = "github.com/prometheus/client_model", - version = "v0.5.0", + version = "v0.6.2", ) go_repo( @@ -2105,7 +2105,7 @@ go_repo( go_repo( module = "github.com/felixge/httpsnoop", - version = "v1.0.4", + version = "v1.1.0", ) go_repo( @@ -2240,7 +2240,7 @@ go_repo( go_repo( module = "google.golang.org/genproto/googleapis/bytestream", - version = "v0.0.0-20240102182953-50ed04b92917", + version = "v0.0.0-20260706201446-f0a921348800", ) go_repo( @@ -2265,7 +2265,7 @@ go_repo( go_repo( module = "github.com/prometheus/client_golang", - version = "v1.18.0", + version = "v1.23.2", ) go_repo( @@ -2310,7 +2310,7 @@ go_repo( go_repo( module = "golang.org/x/oauth2", - version = "v0.34.0", + version = "v0.36.0", ) go_repo( @@ -2395,7 +2395,7 @@ go_repo( go_repo( module = "go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc", - version = "v0.46.1", + version = "v0.69.0", ) go_repo( @@ -2450,7 +2450,7 @@ go_repo( go_repo( module = "github.com/grpc-ecosystem/go-grpc-middleware/v2", - version = "v2.0.1", + version = "v2.3.3", ) go_repo( @@ -2475,7 +2475,7 @@ go_repo( go_repo( module = "cloud.google.com/go/monitoring", - version = "v1.13.0", + version = "v1.29.0", ) go_repo( @@ -2505,7 +2505,7 @@ go_repo( go_repo( module = "cloud.google.com/go/longrunning", - version = "v0.5.4", + version = "v1.2.0", ) go_repo( @@ -2530,7 +2530,7 @@ go_repo( go_repo( module = "cloud.google.com/go/iam", - version = "v1.1.5", + version = "v1.11.0", ) go_repo( @@ -2615,7 +2615,7 @@ go_repo( go_repo( module = "github.com/google/s2a-go", - version = "v0.1.7", + version = "v0.1.9", ) go_repo( @@ -2750,12 +2750,12 @@ go_repo( go_repo( module = "github.com/davecgh/go-spew", - version = "v1.1.1", + version = "v1.1.2-0.20180830191138-d8f796af33cc", ) go_repo( module = "github.com/prometheus/procfs", - version = "v0.12.0", + version = "v0.21.1", ) go_repo( @@ -2795,7 +2795,7 @@ go_repo( go_repo( module = "golang.org/x/crypto", - version = "v0.46.0", + version = "v0.54.0", ) go_repo( @@ -2825,7 +2825,7 @@ go_repo( go_repo( module = "golang.org/x/sync", - version = "v0.19.0", + version = "v0.22.0", ) go_repo( @@ -2891,7 +2891,7 @@ go_repo( go_repo( module = "go.opentelemetry.io/otel", - version = "v1.39.0", + version = "v1.44.0", ) go_repo( @@ -2991,7 +2991,7 @@ go_repo( go_repo( module = "github.com/sirupsen/logrus", - version = "v1.9.3", + version = "v1.9.4", ) go_repo( @@ -3011,7 +3011,7 @@ go_repo( go_repo( module = "github.com/klauspost/compress", - version = "v1.17.4", + version = "v1.19.0", ) go_repo( @@ -3022,7 +3022,7 @@ go_repo( "status", ], module = "google.golang.org/grpc", - version = "v1.79.3", + version = "v1.82.0", ) go_repo( @@ -3152,7 +3152,7 @@ go_repo( go_repo( module = "google.golang.org/genproto", - version = "v0.0.0-20240102182953-50ed04b92917", + version = "v0.0.0-20260706201446-f0a921348800", ) go_repo( @@ -3187,7 +3187,7 @@ go_repo( go_repo( module = "github.com/hashicorp/go-retryablehttp", - version = "v0.7.7", + version = "v0.7.8", ) go_repo( @@ -3212,7 +3212,7 @@ go_repo( go_repo( module = "golang.org/x/exp", - version = "v0.0.0-20240103183307-be819d1f06fc", + version = "v0.0.0-20260709172345-9ea1abe57597", ) go_repo( @@ -3362,7 +3362,7 @@ go_repo( go_repo( module = "cloud.google.com/go/storage", - version = "v1.36.0", + version = "v1.63.0", ) go_repo( @@ -3597,7 +3597,7 @@ go_repo( go_repo( module = "go.opentelemetry.io/otel/sdk/metric", - version = "v0.20.0", + version = "v1.44.0", ) go_repo( @@ -3697,7 +3697,7 @@ go_repo( go_repo( module = "github.com/cncf/xds/go", - version = "v0.0.0-20230310173818-32f1caf87195", + version = "v0.0.0-20260202195803-dba9d589def2", ) go_repo( @@ -3742,7 +3742,7 @@ go_repo( go_repo( module = "github.com/google/wire", - version = "v0.5.0", + version = "v0.7.0", ) go_repo( @@ -3757,7 +3757,7 @@ go_repo( go_repo( module = "go.opentelemetry.io/otel/trace", - version = "v1.39.0", + version = "v1.44.0", ) go_repo( @@ -3777,7 +3777,7 @@ go_repo( go_repo( module = "go.opentelemetry.io/otel/metric", - version = "v1.39.0", + version = "v1.44.0", ) go_repo( @@ -3787,7 +3787,7 @@ go_repo( go_repo( module = "github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus", - version = "v1.0.0", + version = "v1.1.0", ) go_repo( @@ -3797,7 +3797,7 @@ go_repo( go_repo( module = "golang.org/x/time", - version = "v0.5.0", + version = "v0.15.0", ) go_repo( @@ -3850,7 +3850,7 @@ go_repo( go_repo( licences = ["Apache-2.0"], module = "cloud.google.com/go/profiler", - version = "v0.4.0", + version = "v0.6.0", ) go_repo( @@ -3885,7 +3885,7 @@ go_repo( go_repo( licences = ["MIT"], module = "github.com/yusufpapurcu/wmi", - version = "v1.2.3", + version = "v1.2.4", ) go_repo( @@ -3893,3 +3893,75 @@ go_repo( module = "go.opentelemetry.io/auto/sdk", version = "v1.2.1", ) + +go_repo( + licences = ["Apache-2.0"], + module = "cel.dev/expr", + version = "v0.25.2", +) + +go_repo( + licences = ["Apache-2.0"], + module = "cloud.google.com/go/auth", + version = "v0.21.0", +) + +go_repo( + licences = ["Apache-2.0"], + module = "cloud.google.com/go/auth/oauth2adapt", + version = "v0.2.8", +) + +go_repo( + licences = ["Apache-2.0"], + module = "cloud.google.com/go/pubsub/v2", + version = "v2.6.1", +) + +go_repo( + module = "github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp", + version = "v1.34.0", +) + +go_repo( + module = "github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric", + version = "v0.58.0", +) + +go_repo( + module = "github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping", + version = "v0.58.0", +) + +go_repo( + licences = ["Apache-2.0"], + module = "github.com/envoyproxy/go-control-plane/envoy", + version = "v1.37.0", +) + +go_repo( + licences = ["Apache-2.0"], + module = "github.com/go-jose/go-jose/v4", + version = "v4.1.4", +) + +go_repo( + licences = ["BSD-3-Clause"], + module = "github.com/planetscale/vtprotobuf", + version = "v0.6.1-0.20240319094008-0393e58bdf10", +) + +go_repo( + licences = ["Apache-2.0"], + module = "github.com/spiffe/go-spiffe/v2", + version = "v2.8.1", +) + +go_repo( + licences = [ + "Apache-2.0", + "BSD-3-Clause", + ], + module = "go.opentelemetry.io/contrib/detectors/gcp", + version = "v1.44.0", +) diff --git a/third_party/proto/cas/.gitignore b/third_party/proto/cas/.gitignore new file mode 100644 index 00000000..d9cabb4d --- /dev/null +++ b/third_party/proto/cas/.gitignore @@ -0,0 +1 @@ +!cas.pb.go diff --git a/third_party/proto/resourceusage/resourceusage.pb.go b/third_party/proto/resourceusage/resourceusage.pb.go deleted file mode 100644 index 5a1c7fbf..00000000 --- a/third_party/proto/resourceusage/resourceusage.pb.go +++ /dev/null @@ -1,682 +0,0 @@ -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.25.0 -// protoc v3.11.4 -// source: third_party/proto/resourceusage.proto - -package resourceusage - -import ( - proto "github.com/golang/protobuf/proto" - protoreflect "google.golang.org/protobuf/reflect/protoreflect" - protoimpl "google.golang.org/protobuf/runtime/protoimpl" - reflect "reflect" - sync "sync" -) - -const ( - // Verify that this generated code is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) - // Verify that runtime/protoimpl is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) -) - -// This is a compile-time assertion that a sufficiently up-to-date version -// of the legacy proto package is being used. -const _ = proto.ProtoPackageIsVersion4 - -// File pool resource usage statistics. File pools are used by bb_worker -// to allocate temporary files that are created by build actions. -type FilePoolResourceUsage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Total number of files created. - FilesCreated uint64 `protobuf:"varint,1,opt,name=files_created,json=filesCreated,proto3" json:"files_created,omitempty"` - // Maximum number of files that existed at some point in time. - FilesCountPeak uint64 `protobuf:"varint,2,opt,name=files_count_peak,json=filesCountPeak,proto3" json:"files_count_peak,omitempty"` - // Maximum total size of all files at some point in time. - FilesSizeBytesPeak uint64 `protobuf:"varint,3,opt,name=files_size_bytes_peak,json=filesSizeBytesPeak,proto3" json:"files_size_bytes_peak,omitempty"` - // Total number of ReadAt() calls performed. - ReadsCount uint64 `protobuf:"varint,4,opt,name=reads_count,json=readsCount,proto3" json:"reads_count,omitempty"` - // Total amount of data returned by all ReadAt() calls. - ReadsSizeBytes uint64 `protobuf:"varint,5,opt,name=reads_size_bytes,json=readsSizeBytes,proto3" json:"reads_size_bytes,omitempty"` - // Total number of WriteAt() calls performed. - WritesCount uint64 `protobuf:"varint,6,opt,name=writes_count,json=writesCount,proto3" json:"writes_count,omitempty"` - // Total amount of data processed by all WriteAt() calls. - WritesSizeBytes uint64 `protobuf:"varint,7,opt,name=writes_size_bytes,json=writesSizeBytes,proto3" json:"writes_size_bytes,omitempty"` - // Total number of Truncate() calls performed. - TruncatesCount uint64 `protobuf:"varint,8,opt,name=truncates_count,json=truncatesCount,proto3" json:"truncates_count,omitempty"` -} - -func (x *FilePoolResourceUsage) Reset() { - *x = FilePoolResourceUsage{} - if protoimpl.UnsafeEnabled { - mi := &file_third_party_proto_resourceusage_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FilePoolResourceUsage) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FilePoolResourceUsage) ProtoMessage() {} - -func (x *FilePoolResourceUsage) ProtoReflect() protoreflect.Message { - mi := &file_third_party_proto_resourceusage_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use FilePoolResourceUsage.ProtoReflect.Descriptor instead. -func (*FilePoolResourceUsage) Descriptor() ([]byte, []int) { - return file_third_party_proto_resourceusage_proto_rawDescGZIP(), []int{0} -} - -func (x *FilePoolResourceUsage) GetFilesCreated() uint64 { - if x != nil { - return x.FilesCreated - } - return 0 -} - -func (x *FilePoolResourceUsage) GetFilesCountPeak() uint64 { - if x != nil { - return x.FilesCountPeak - } - return 0 -} - -func (x *FilePoolResourceUsage) GetFilesSizeBytesPeak() uint64 { - if x != nil { - return x.FilesSizeBytesPeak - } - return 0 -} - -func (x *FilePoolResourceUsage) GetReadsCount() uint64 { - if x != nil { - return x.ReadsCount - } - return 0 -} - -func (x *FilePoolResourceUsage) GetReadsSizeBytes() uint64 { - if x != nil { - return x.ReadsSizeBytes - } - return 0 -} - -func (x *FilePoolResourceUsage) GetWritesCount() uint64 { - if x != nil { - return x.WritesCount - } - return 0 -} - -func (x *FilePoolResourceUsage) GetWritesSizeBytes() uint64 { - if x != nil { - return x.WritesSizeBytes - } - return 0 -} - -func (x *FilePoolResourceUsage) GetTruncatesCount() uint64 { - if x != nil { - return x.TruncatesCount - } - return 0 -} - -// The equivalent of 'struct rusage' in POSIX, generally returned by -// getrusage(2) or wait4(2). -type POSIXResourceUsage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // ru_utime: Amount of CPU time in seconds spent in userspace. - UserTime *Duration `protobuf:"bytes,1,opt,name=user_time,json=userTime,proto3" json:"user_time,omitempty"` - // ru_stime: Amount of CPU time in seconds spent in kernelspace. - SystemTime *Duration `protobuf:"bytes,2,opt,name=system_time,json=systemTime,proto3" json:"system_time,omitempty"` - // ru_maxrss: Maximum amount of resident memory in bytes. - MaximumResidentSetSize int64 `protobuf:"varint,3,opt,name=maximum_resident_set_size,json=maximumResidentSetSize,proto3" json:"maximum_resident_set_size,omitempty"` - // ru_minflt: Page reclaims. - PageReclaims int64 `protobuf:"varint,7,opt,name=page_reclaims,json=pageReclaims,proto3" json:"page_reclaims,omitempty"` - // ru_majflt: Page faults. - PageFaults int64 `protobuf:"varint,8,opt,name=page_faults,json=pageFaults,proto3" json:"page_faults,omitempty"` - // ru_nswap: Number of swaps. - Swaps int64 `protobuf:"varint,9,opt,name=swaps,proto3" json:"swaps,omitempty"` - // ru_inblock: Block input operations. - BlockInputOperations int64 `protobuf:"varint,10,opt,name=block_input_operations,json=blockInputOperations,proto3" json:"block_input_operations,omitempty"` - // ru_oublock: Block output operations. - BlockOutputOperations int64 `protobuf:"varint,11,opt,name=block_output_operations,json=blockOutputOperations,proto3" json:"block_output_operations,omitempty"` - // ru_msgsnd: Messages sent. - MessagesSent int64 `protobuf:"varint,12,opt,name=messages_sent,json=messagesSent,proto3" json:"messages_sent,omitempty"` - // ru_msgrcv: Messages received. - MessagesReceived int64 `protobuf:"varint,13,opt,name=messages_received,json=messagesReceived,proto3" json:"messages_received,omitempty"` - // ru_nsignals: Signals received. - SignalsReceived int64 `protobuf:"varint,14,opt,name=signals_received,json=signalsReceived,proto3" json:"signals_received,omitempty"` - // ru_nvcsw: Voluntary context switches. - VoluntaryContextSwitches int64 `protobuf:"varint,15,opt,name=voluntary_context_switches,json=voluntaryContextSwitches,proto3" json:"voluntary_context_switches,omitempty"` - // ru_nivcsw: Involuntary context switches. - InvoluntaryContextSwitches int64 `protobuf:"varint,16,opt,name=involuntary_context_switches,json=involuntaryContextSwitches,proto3" json:"involuntary_context_switches,omitempty"` -} - -func (x *POSIXResourceUsage) Reset() { - *x = POSIXResourceUsage{} - if protoimpl.UnsafeEnabled { - mi := &file_third_party_proto_resourceusage_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *POSIXResourceUsage) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*POSIXResourceUsage) ProtoMessage() {} - -func (x *POSIXResourceUsage) ProtoReflect() protoreflect.Message { - mi := &file_third_party_proto_resourceusage_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use POSIXResourceUsage.ProtoReflect.Descriptor instead. -func (*POSIXResourceUsage) Descriptor() ([]byte, []int) { - return file_third_party_proto_resourceusage_proto_rawDescGZIP(), []int{1} -} - -func (x *POSIXResourceUsage) GetUserTime() *Duration { - if x != nil { - return x.UserTime - } - return nil -} - -func (x *POSIXResourceUsage) GetSystemTime() *Duration { - if x != nil { - return x.SystemTime - } - return nil -} - -func (x *POSIXResourceUsage) GetMaximumResidentSetSize() int64 { - if x != nil { - return x.MaximumResidentSetSize - } - return 0 -} - -func (x *POSIXResourceUsage) GetPageReclaims() int64 { - if x != nil { - return x.PageReclaims - } - return 0 -} - -func (x *POSIXResourceUsage) GetPageFaults() int64 { - if x != nil { - return x.PageFaults - } - return 0 -} - -func (x *POSIXResourceUsage) GetSwaps() int64 { - if x != nil { - return x.Swaps - } - return 0 -} - -func (x *POSIXResourceUsage) GetBlockInputOperations() int64 { - if x != nil { - return x.BlockInputOperations - } - return 0 -} - -func (x *POSIXResourceUsage) GetBlockOutputOperations() int64 { - if x != nil { - return x.BlockOutputOperations - } - return 0 -} - -func (x *POSIXResourceUsage) GetMessagesSent() int64 { - if x != nil { - return x.MessagesSent - } - return 0 -} - -func (x *POSIXResourceUsage) GetMessagesReceived() int64 { - if x != nil { - return x.MessagesReceived - } - return 0 -} - -func (x *POSIXResourceUsage) GetSignalsReceived() int64 { - if x != nil { - return x.SignalsReceived - } - return 0 -} - -func (x *POSIXResourceUsage) GetVoluntaryContextSwitches() int64 { - if x != nil { - return x.VoluntaryContextSwitches - } - return 0 -} - -func (x *POSIXResourceUsage) GetInvoluntaryContextSwitches() int64 { - if x != nil { - return x.InvoluntaryContextSwitches - } - return 0 -} - -// Equivalent to the standard duration proto. -type Duration struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Seconds int64 `protobuf:"varint,1,opt,name=seconds,proto3" json:"seconds,omitempty"` - Nanos int32 `protobuf:"varint,2,opt,name=nanos,proto3" json:"nanos,omitempty"` -} - -func (x *Duration) Reset() { - *x = Duration{} - if protoimpl.UnsafeEnabled { - mi := &file_third_party_proto_resourceusage_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Duration) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Duration) ProtoMessage() {} - -func (x *Duration) ProtoReflect() protoreflect.Message { - mi := &file_third_party_proto_resourceusage_proto_msgTypes[2] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Duration.ProtoReflect.Descriptor instead. -func (*Duration) Descriptor() ([]byte, []int) { - return file_third_party_proto_resourceusage_proto_rawDescGZIP(), []int{2} -} - -func (x *Duration) GetSeconds() int64 { - if x != nil { - return x.Seconds - } - return 0 -} - -func (x *Duration) GetNanos() int32 { - if x != nil { - return x.Nanos - } - return 0 -} - -// A representation of unique factors that may be aggregated to -// compute a given build action's total price. -type MonetaryResourceUsage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // A mapping of expense categories to their respective costs. - Expenses map[string]*MonetaryResourceUsage_Expense `protobuf:"bytes,1,rep,name=expenses,proto3" json:"expenses,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` -} - -func (x *MonetaryResourceUsage) Reset() { - *x = MonetaryResourceUsage{} - if protoimpl.UnsafeEnabled { - mi := &file_third_party_proto_resourceusage_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MonetaryResourceUsage) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MonetaryResourceUsage) ProtoMessage() {} - -func (x *MonetaryResourceUsage) ProtoReflect() protoreflect.Message { - mi := &file_third_party_proto_resourceusage_proto_msgTypes[3] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use MonetaryResourceUsage.ProtoReflect.Descriptor instead. -func (*MonetaryResourceUsage) Descriptor() ([]byte, []int) { - return file_third_party_proto_resourceusage_proto_rawDescGZIP(), []int{3} -} - -func (x *MonetaryResourceUsage) GetExpenses() map[string]*MonetaryResourceUsage_Expense { - if x != nil { - return x.Expenses - } - return nil -} - -type MonetaryResourceUsage_Expense struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The type of currency the cost is measured in. Required to be in - // ISO 4217 format: https://en.wikipedia.org/wiki/ISO_4217#Active_codes - Currency string `protobuf:"bytes,1,opt,name=currency,proto3" json:"currency,omitempty"` - // The value of a specific expense for a build action. - Cost float64 `protobuf:"fixed64,2,opt,name=cost,proto3" json:"cost,omitempty"` -} - -func (x *MonetaryResourceUsage_Expense) Reset() { - *x = MonetaryResourceUsage_Expense{} - if protoimpl.UnsafeEnabled { - mi := &file_third_party_proto_resourceusage_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MonetaryResourceUsage_Expense) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MonetaryResourceUsage_Expense) ProtoMessage() {} - -func (x *MonetaryResourceUsage_Expense) ProtoReflect() protoreflect.Message { - mi := &file_third_party_proto_resourceusage_proto_msgTypes[4] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use MonetaryResourceUsage_Expense.ProtoReflect.Descriptor instead. -func (*MonetaryResourceUsage_Expense) Descriptor() ([]byte, []int) { - return file_third_party_proto_resourceusage_proto_rawDescGZIP(), []int{3, 0} -} - -func (x *MonetaryResourceUsage_Expense) GetCurrency() string { - if x != nil { - return x.Currency - } - return "" -} - -func (x *MonetaryResourceUsage_Expense) GetCost() float64 { - if x != nil { - return x.Cost - } - return 0 -} - -var File_third_party_proto_resourceusage_proto protoreflect.FileDescriptor - -var file_third_party_proto_resourceusage_proto_rawDesc = []byte{ - 0x0a, 0x25, 0x74, 0x68, 0x69, 0x72, 0x64, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x79, 0x2f, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x75, 0x73, 0x61, 0x67, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x17, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x61, - 0x72, 0x6e, 0x2e, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, - 0x22, 0xdc, 0x02, 0x0a, 0x15, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x6f, 0x6f, 0x6c, 0x52, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x69, - 0x6c, 0x65, 0x73, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x0c, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, - 0x28, 0x0a, 0x10, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x70, - 0x65, 0x61, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x66, 0x69, 0x6c, 0x65, 0x73, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x50, 0x65, 0x61, 0x6b, 0x12, 0x31, 0x0a, 0x15, 0x66, 0x69, 0x6c, - 0x65, 0x73, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, 0x70, 0x65, - 0x61, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x12, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x53, - 0x69, 0x7a, 0x65, 0x42, 0x79, 0x74, 0x65, 0x73, 0x50, 0x65, 0x61, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, - 0x72, 0x65, 0x61, 0x64, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x0a, 0x72, 0x65, 0x61, 0x64, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x28, 0x0a, - 0x10, 0x72, 0x65, 0x61, 0x64, 0x73, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x62, 0x79, 0x74, 0x65, - 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x72, 0x65, 0x61, 0x64, 0x73, 0x53, 0x69, - 0x7a, 0x65, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x72, 0x69, 0x74, 0x65, - 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x77, - 0x72, 0x69, 0x74, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x77, 0x72, - 0x69, 0x74, 0x65, 0x73, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x77, 0x72, 0x69, 0x74, 0x65, 0x73, 0x53, 0x69, 0x7a, - 0x65, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, - 0x74, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x0e, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, - 0xac, 0x05, 0x0a, 0x12, 0x50, 0x4f, 0x53, 0x49, 0x58, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x3e, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x74, - 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x62, 0x75, 0x69, 0x6c, - 0x64, 0x62, 0x61, 0x72, 0x6e, 0x2e, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x75, 0x73, - 0x61, 0x67, 0x65, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x75, 0x73, - 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x42, 0x0a, 0x0b, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, - 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x62, 0x75, - 0x69, 0x6c, 0x64, 0x62, 0x61, 0x72, 0x6e, 0x2e, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x75, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, - 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x19, 0x6d, 0x61, - 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x72, 0x65, 0x73, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x5f, 0x73, - 0x65, 0x74, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x16, 0x6d, - 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x52, 0x65, 0x73, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x53, 0x65, - 0x74, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x72, 0x65, - 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x70, 0x61, - 0x67, 0x65, 0x52, 0x65, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x61, - 0x67, 0x65, 0x5f, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x0a, 0x70, 0x61, 0x67, 0x65, 0x46, 0x61, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x73, - 0x77, 0x61, 0x70, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x73, 0x77, 0x61, 0x70, - 0x73, 0x12, 0x34, 0x0a, 0x16, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, - 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x14, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x4f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x36, 0x0a, 0x17, 0x62, 0x6c, 0x6f, 0x63, 0x6b, - 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x15, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4f, - 0x75, 0x74, 0x70, 0x75, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, - 0x23, 0x0a, 0x0d, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5f, 0x73, 0x65, 0x6e, 0x74, - 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, - 0x53, 0x65, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, - 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x10, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, - 0x64, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x73, 0x5f, 0x72, 0x65, 0x63, - 0x65, 0x69, 0x76, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x73, 0x69, 0x67, - 0x6e, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x12, 0x3c, 0x0a, 0x1a, - 0x76, 0x6f, 0x6c, 0x75, 0x6e, 0x74, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, - 0x74, 0x5f, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x65, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x18, 0x76, 0x6f, 0x6c, 0x75, 0x6e, 0x74, 0x61, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, - 0x78, 0x74, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x65, 0x73, 0x12, 0x40, 0x0a, 0x1c, 0x69, 0x6e, - 0x76, 0x6f, 0x6c, 0x75, 0x6e, 0x74, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, - 0x74, 0x5f, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x65, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x1a, 0x69, 0x6e, 0x76, 0x6f, 0x6c, 0x75, 0x6e, 0x74, 0x61, 0x72, 0x79, 0x43, 0x6f, 0x6e, - 0x74, 0x65, 0x78, 0x74, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x65, 0x73, 0x4a, 0x04, 0x08, 0x04, - 0x10, 0x05, 0x4a, 0x04, 0x08, 0x05, 0x10, 0x06, 0x4a, 0x04, 0x08, 0x06, 0x10, 0x07, 0x22, 0x3a, - 0x0a, 0x08, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x65, - 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x73, 0x65, 0x63, - 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x61, 0x6e, 0x6f, 0x73, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x05, 0x6e, 0x61, 0x6e, 0x6f, 0x73, 0x22, 0xa1, 0x02, 0x0a, 0x15, 0x4d, - 0x6f, 0x6e, 0x65, 0x74, 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x55, - 0x73, 0x61, 0x67, 0x65, 0x12, 0x58, 0x0a, 0x08, 0x65, 0x78, 0x70, 0x65, 0x6e, 0x73, 0x65, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x61, - 0x72, 0x6e, 0x2e, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x75, 0x73, 0x61, 0x67, 0x65, - 0x2e, 0x4d, 0x6f, 0x6e, 0x65, 0x74, 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x55, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x45, 0x78, 0x70, 0x65, 0x6e, 0x73, 0x65, 0x73, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x65, 0x78, 0x70, 0x65, 0x6e, 0x73, 0x65, 0x73, 0x1a, 0x39, - 0x0a, 0x07, 0x45, 0x78, 0x70, 0x65, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x75, 0x72, - 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x75, 0x72, - 0x72, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x01, 0x52, 0x04, 0x63, 0x6f, 0x73, 0x74, 0x1a, 0x73, 0x0a, 0x0d, 0x45, 0x78, 0x70, - 0x65, 0x6e, 0x73, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, - 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x4c, 0x0a, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x62, 0x75, - 0x69, 0x6c, 0x64, 0x62, 0x61, 0x72, 0x6e, 0x2e, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x75, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x4d, 0x6f, 0x6e, 0x65, 0x74, 0x61, 0x72, 0x79, 0x52, 0x65, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x55, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x45, 0x78, 0x70, 0x65, - 0x6e, 0x73, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x42, - 0x5a, 0x40, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x62, 0x75, 0x69, - 0x6c, 0x64, 0x62, 0x61, 0x72, 0x6e, 0x2f, 0x62, 0x62, 0x2d, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, - 0x2d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x75, 0x73, 0x61, - 0x67, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, -} - -var ( - file_third_party_proto_resourceusage_proto_rawDescOnce sync.Once - file_third_party_proto_resourceusage_proto_rawDescData = file_third_party_proto_resourceusage_proto_rawDesc -) - -func file_third_party_proto_resourceusage_proto_rawDescGZIP() []byte { - file_third_party_proto_resourceusage_proto_rawDescOnce.Do(func() { - file_third_party_proto_resourceusage_proto_rawDescData = protoimpl.X.CompressGZIP(file_third_party_proto_resourceusage_proto_rawDescData) - }) - return file_third_party_proto_resourceusage_proto_rawDescData -} - -var file_third_party_proto_resourceusage_proto_msgTypes = make([]protoimpl.MessageInfo, 6) -var file_third_party_proto_resourceusage_proto_goTypes = []interface{}{ - (*FilePoolResourceUsage)(nil), // 0: buildbarn.resourceusage.FilePoolResourceUsage - (*POSIXResourceUsage)(nil), // 1: buildbarn.resourceusage.POSIXResourceUsage - (*Duration)(nil), // 2: buildbarn.resourceusage.Duration - (*MonetaryResourceUsage)(nil), // 3: buildbarn.resourceusage.MonetaryResourceUsage - (*MonetaryResourceUsage_Expense)(nil), // 4: buildbarn.resourceusage.MonetaryResourceUsage.Expense - nil, // 5: buildbarn.resourceusage.MonetaryResourceUsage.ExpensesEntry -} -var file_third_party_proto_resourceusage_proto_depIdxs = []int32{ - 2, // 0: buildbarn.resourceusage.POSIXResourceUsage.user_time:type_name -> buildbarn.resourceusage.Duration - 2, // 1: buildbarn.resourceusage.POSIXResourceUsage.system_time:type_name -> buildbarn.resourceusage.Duration - 5, // 2: buildbarn.resourceusage.MonetaryResourceUsage.expenses:type_name -> buildbarn.resourceusage.MonetaryResourceUsage.ExpensesEntry - 4, // 3: buildbarn.resourceusage.MonetaryResourceUsage.ExpensesEntry.value:type_name -> buildbarn.resourceusage.MonetaryResourceUsage.Expense - 4, // [4:4] is the sub-list for method output_type - 4, // [4:4] is the sub-list for method input_type - 4, // [4:4] is the sub-list for extension type_name - 4, // [4:4] is the sub-list for extension extendee - 0, // [0:4] is the sub-list for field type_name -} - -func init() { file_third_party_proto_resourceusage_proto_init() } -func file_third_party_proto_resourceusage_proto_init() { - if File_third_party_proto_resourceusage_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_third_party_proto_resourceusage_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FilePoolResourceUsage); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_third_party_proto_resourceusage_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*POSIXResourceUsage); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_third_party_proto_resourceusage_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Duration); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_third_party_proto_resourceusage_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MonetaryResourceUsage); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_third_party_proto_resourceusage_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MonetaryResourceUsage_Expense); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } - type x struct{} - out := protoimpl.TypeBuilder{ - File: protoimpl.DescBuilder{ - GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_third_party_proto_resourceusage_proto_rawDesc, - NumEnums: 0, - NumMessages: 6, - NumExtensions: 0, - NumServices: 0, - }, - GoTypes: file_third_party_proto_resourceusage_proto_goTypes, - DependencyIndexes: file_third_party_proto_resourceusage_proto_depIdxs, - MessageInfos: file_third_party_proto_resourceusage_proto_msgTypes, - }.Build() - File_third_party_proto_resourceusage_proto = out.File - file_third_party_proto_resourceusage_proto_rawDesc = nil - file_third_party_proto_resourceusage_proto_goTypes = nil - file_third_party_proto_resourceusage_proto_depIdxs = nil -} From bda2ec71ec29d140bcc509a68acfb7846ba8fde6 Mon Sep 17 00:00:00 2001 From: Samuel Littley Date: Fri, 10 Jul 2026 18:12:57 +0100 Subject: [PATCH 2/3] Fix the builds? --- .gitignore | 2 - .plzconfig | 5 +- proto/.gitignore | 2 - proto/lucidity/lucidity.pb.go | 470 +++++++++++++++ proto/lucidity/lucidity_grpc.pb.go | 141 +++++ proto/mettle/mettle.pb.go | 259 +++++++++ proto/mettle/mettle_grpc.pb.go | 101 ++++ proto/purity/purity.pb.go | 471 +++++++++++++++ proto/purity/purity_grpc.pb.go | 141 +++++ third_party/proto/cas/.gitignore | 1 - .../proto/resourceusage/resourceusage.pb.go | 543 ++++++++++++++++++ 11 files changed, 2127 insertions(+), 9 deletions(-) create mode 100644 proto/lucidity/lucidity.pb.go create mode 100644 proto/lucidity/lucidity_grpc.pb.go create mode 100644 proto/mettle/mettle.pb.go create mode 100644 proto/mettle/mettle_grpc.pb.go create mode 100644 proto/purity/purity.pb.go create mode 100644 proto/purity/purity_grpc.pb.go delete mode 100644 third_party/proto/cas/.gitignore create mode 100644 third_party/proto/resourceusage/resourceusage.pb.go diff --git a/.gitignore b/.gitignore index 9652d1f3..8f9e08ee 100644 --- a/.gitignore +++ b/.gitignore @@ -3,5 +3,3 @@ plz-out .plzconfig.local .idea *.sw? - -*.pb.go diff --git a/.plzconfig b/.plzconfig index e8526da3..83982017 100644 --- a/.plzconfig +++ b/.plzconfig @@ -1,11 +1,8 @@ [please] -version = >=17.0.0 +version = >=17.21.0 [build] path = /usr/local/go/bin:/usr/local/bin:/usr/bin:/bin -LinkGeneratedSources = true -DownloadLinkable = true -UpdateGitignore = true [buildconfig] local-host = 127.0.0.1 diff --git a/proto/.gitignore b/proto/.gitignore index ee3c3dd7..b093d7e7 100644 --- a/proto/.gitignore +++ b/proto/.gitignore @@ -1,3 +1 @@ - -# Entries below this point are managed by Please (DO NOT EDIT) generate.sh diff --git a/proto/lucidity/lucidity.pb.go b/proto/lucidity/lucidity.pb.go new file mode 100644 index 00000000..dcf0f255 --- /dev/null +++ b/proto/lucidity/lucidity.pb.go @@ -0,0 +1,470 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.36.11 +// protoc v3.21.12 +// source: proto/lucidity/lucidity.proto + +package lucidity + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" + unsafe "unsafe" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type Worker struct { + state protoimpl.MessageState `protogen:"open.v1"` + // The name of this worker. + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + // The host name of the machine the worker is on + Hostname string `protobuf:"bytes,13,opt,name=hostname,proto3" json:"hostname,omitempty"` + // The version this worker is currently at + Version string `protobuf:"bytes,12,opt,name=version,proto3" json:"version,omitempty"` + // The time the worker started at (as a Unix timestamp) + StartTime int64 `protobuf:"varint,2,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"` + // The time the server is reporting in at (the server may overwrite this) + UpdateTime int64 `protobuf:"varint,3,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"` + // A human-readable string describing the current state of the server. + Status string `protobuf:"bytes,4,opt,name=status,proto3" json:"status,omitempty"` + // Whether the worker currently considers itself healthy. + Healthy bool `protobuf:"varint,5,opt,name=healthy,proto3" json:"healthy,omitempty"` + // Whether the worker was busy at the point it sent this request. + Busy bool `protobuf:"varint,6,opt,name=busy,proto3" json:"busy,omitempty"` + // Whether the worker is now alive or not (note that it is possible to be + // alive but unhealthy) + Alive bool `protobuf:"varint,7,opt,name=alive,proto3" json:"alive,omitempty"` + // A URL containing the last unit of work the server performed. + LastTask string `protobuf:"bytes,8,opt,name=last_task,json=lastTask,proto3" json:"last_task,omitempty"` + // Server-side only; indicates whether this server has been shut down. + Disabled bool `protobuf:"varint,9,opt,name=disabled,proto3" json:"disabled,omitempty"` + // ID of the currently executing task, if there is one. + CurrentTask string `protobuf:"bytes,10,opt,name=current_task,json=currentTask,proto3" json:"current_task,omitempty"` + // The time the current task was started at. + TaskStartTime int64 `protobuf:"varint,11,opt,name=task_start_time,json=taskStartTime,proto3" json:"task_start_time,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *Worker) Reset() { + *x = Worker{} + mi := &file_proto_lucidity_lucidity_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *Worker) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Worker) ProtoMessage() {} + +func (x *Worker) ProtoReflect() protoreflect.Message { + mi := &file_proto_lucidity_lucidity_proto_msgTypes[0] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Worker.ProtoReflect.Descriptor instead. +func (*Worker) Descriptor() ([]byte, []int) { + return file_proto_lucidity_lucidity_proto_rawDescGZIP(), []int{0} +} + +func (x *Worker) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *Worker) GetHostname() string { + if x != nil { + return x.Hostname + } + return "" +} + +func (x *Worker) GetVersion() string { + if x != nil { + return x.Version + } + return "" +} + +func (x *Worker) GetStartTime() int64 { + if x != nil { + return x.StartTime + } + return 0 +} + +func (x *Worker) GetUpdateTime() int64 { + if x != nil { + return x.UpdateTime + } + return 0 +} + +func (x *Worker) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *Worker) GetHealthy() bool { + if x != nil { + return x.Healthy + } + return false +} + +func (x *Worker) GetBusy() bool { + if x != nil { + return x.Busy + } + return false +} + +func (x *Worker) GetAlive() bool { + if x != nil { + return x.Alive + } + return false +} + +func (x *Worker) GetLastTask() string { + if x != nil { + return x.LastTask + } + return "" +} + +func (x *Worker) GetDisabled() bool { + if x != nil { + return x.Disabled + } + return false +} + +func (x *Worker) GetCurrentTask() string { + if x != nil { + return x.CurrentTask + } + return "" +} + +func (x *Worker) GetTaskStartTime() int64 { + if x != nil { + return x.TaskStartTime + } + return 0 +} + +type UpdateResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + // True if the receiving server should become unavailable until it receives + // another response saying it's ok to come back to life again. + ShouldDisable bool `protobuf:"varint,1,opt,name=should_disable,json=shouldDisable,proto3" json:"should_disable,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *UpdateResponse) Reset() { + *x = UpdateResponse{} + mi := &file_proto_lucidity_lucidity_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *UpdateResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateResponse) ProtoMessage() {} + +func (x *UpdateResponse) ProtoReflect() protoreflect.Message { + mi := &file_proto_lucidity_lucidity_proto_msgTypes[1] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UpdateResponse.ProtoReflect.Descriptor instead. +func (*UpdateResponse) Descriptor() ([]byte, []int) { + return file_proto_lucidity_lucidity_proto_rawDescGZIP(), []int{1} +} + +func (x *UpdateResponse) GetShouldDisable() bool { + if x != nil { + return x.ShouldDisable + } + return false +} + +type ListWorkersRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` + // The worker name to return + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + // The hostname to return workers for + Hostname string `protobuf:"bytes,2,opt,name=hostname,proto3" json:"hostname,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ListWorkersRequest) Reset() { + *x = ListWorkersRequest{} + mi := &file_proto_lucidity_lucidity_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ListWorkersRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListWorkersRequest) ProtoMessage() {} + +func (x *ListWorkersRequest) ProtoReflect() protoreflect.Message { + mi := &file_proto_lucidity_lucidity_proto_msgTypes[2] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ListWorkersRequest.ProtoReflect.Descriptor instead. +func (*ListWorkersRequest) Descriptor() ([]byte, []int) { + return file_proto_lucidity_lucidity_proto_rawDescGZIP(), []int{2} +} + +func (x *ListWorkersRequest) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *ListWorkersRequest) GetHostname() string { + if x != nil { + return x.Hostname + } + return "" +} + +type ListWorkersResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + // List of all the currently known workers, optionally filtered on the + // request. + Workers []*Worker `protobuf:"bytes,1,rep,name=workers,proto3" json:"workers,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ListWorkersResponse) Reset() { + *x = ListWorkersResponse{} + mi := &file_proto_lucidity_lucidity_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ListWorkersResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListWorkersResponse) ProtoMessage() {} + +func (x *ListWorkersResponse) ProtoReflect() protoreflect.Message { + mi := &file_proto_lucidity_lucidity_proto_msgTypes[3] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ListWorkersResponse.ProtoReflect.Descriptor instead. +func (*ListWorkersResponse) Descriptor() ([]byte, []int) { + return file_proto_lucidity_lucidity_proto_rawDescGZIP(), []int{3} +} + +func (x *ListWorkersResponse) GetWorkers() []*Worker { + if x != nil { + return x.Workers + } + return nil +} + +// This is part of the HTTP API; the request to disable a worker. +type Disable struct { + state protoimpl.MessageState `protogen:"open.v1"` + // Name of the worker to disable + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + // If true, worker is disabled; if false, it will become enabled. + Disable bool `protobuf:"varint,2,opt,name=disable,proto3" json:"disable,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *Disable) Reset() { + *x = Disable{} + mi := &file_proto_lucidity_lucidity_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *Disable) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Disable) ProtoMessage() {} + +func (x *Disable) ProtoReflect() protoreflect.Message { + mi := &file_proto_lucidity_lucidity_proto_msgTypes[4] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Disable.ProtoReflect.Descriptor instead. +func (*Disable) Descriptor() ([]byte, []int) { + return file_proto_lucidity_lucidity_proto_rawDescGZIP(), []int{4} +} + +func (x *Disable) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *Disable) GetDisable() bool { + if x != nil { + return x.Disable + } + return false +} + +var File_proto_lucidity_lucidity_proto protoreflect.FileDescriptor + +const file_proto_lucidity_lucidity_proto_rawDesc = "" + + "\n" + + "\x1dproto/lucidity/lucidity.proto\x12\x1cbuild.please.remote.lucidity\"\xf2\x02\n" + + "\x06Worker\x12\x12\n" + + "\x04name\x18\x01 \x01(\tR\x04name\x12\x1a\n" + + "\bhostname\x18\r \x01(\tR\bhostname\x12\x18\n" + + "\aversion\x18\f \x01(\tR\aversion\x12\x1d\n" + + "\n" + + "start_time\x18\x02 \x01(\x03R\tstartTime\x12\x1f\n" + + "\vupdate_time\x18\x03 \x01(\x03R\n" + + "updateTime\x12\x16\n" + + "\x06status\x18\x04 \x01(\tR\x06status\x12\x18\n" + + "\ahealthy\x18\x05 \x01(\bR\ahealthy\x12\x12\n" + + "\x04busy\x18\x06 \x01(\bR\x04busy\x12\x14\n" + + "\x05alive\x18\a \x01(\bR\x05alive\x12\x1b\n" + + "\tlast_task\x18\b \x01(\tR\blastTask\x12\x1a\n" + + "\bdisabled\x18\t \x01(\bR\bdisabled\x12!\n" + + "\fcurrent_task\x18\n" + + " \x01(\tR\vcurrentTask\x12&\n" + + "\x0ftask_start_time\x18\v \x01(\x03R\rtaskStartTime\"7\n" + + "\x0eUpdateResponse\x12%\n" + + "\x0eshould_disable\x18\x01 \x01(\bR\rshouldDisable\"D\n" + + "\x12ListWorkersRequest\x12\x12\n" + + "\x04name\x18\x01 \x01(\tR\x04name\x12\x1a\n" + + "\bhostname\x18\x02 \x01(\tR\bhostname\"U\n" + + "\x13ListWorkersResponse\x12>\n" + + "\aworkers\x18\x01 \x03(\v2$.build.please.remote.lucidity.WorkerR\aworkers\"7\n" + + "\aDisable\x12\x12\n" + + "\x04name\x18\x01 \x01(\tR\x04name\x12\x18\n" + + "\adisable\x18\x02 \x01(\bR\adisable2\xdc\x01\n" + + "\bLucidity\x12\\\n" + + "\x06Update\x12$.build.please.remote.lucidity.Worker\x1a,.build.please.remote.lucidity.UpdateResponse\x12r\n" + + "\vListWorkers\x120.build.please.remote.lucidity.ListWorkersRequest\x1a1.build.please.remote.lucidity.ListWorkersResponseB:Z8github.com/thought-machine/please-servers/proto/lucidityb\x06proto3" + +var ( + file_proto_lucidity_lucidity_proto_rawDescOnce sync.Once + file_proto_lucidity_lucidity_proto_rawDescData []byte +) + +func file_proto_lucidity_lucidity_proto_rawDescGZIP() []byte { + file_proto_lucidity_lucidity_proto_rawDescOnce.Do(func() { + file_proto_lucidity_lucidity_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_proto_lucidity_lucidity_proto_rawDesc), len(file_proto_lucidity_lucidity_proto_rawDesc))) + }) + return file_proto_lucidity_lucidity_proto_rawDescData +} + +var file_proto_lucidity_lucidity_proto_msgTypes = make([]protoimpl.MessageInfo, 5) +var file_proto_lucidity_lucidity_proto_goTypes = []any{ + (*Worker)(nil), // 0: build.please.remote.lucidity.Worker + (*UpdateResponse)(nil), // 1: build.please.remote.lucidity.UpdateResponse + (*ListWorkersRequest)(nil), // 2: build.please.remote.lucidity.ListWorkersRequest + (*ListWorkersResponse)(nil), // 3: build.please.remote.lucidity.ListWorkersResponse + (*Disable)(nil), // 4: build.please.remote.lucidity.Disable +} +var file_proto_lucidity_lucidity_proto_depIdxs = []int32{ + 0, // 0: build.please.remote.lucidity.ListWorkersResponse.workers:type_name -> build.please.remote.lucidity.Worker + 0, // 1: build.please.remote.lucidity.Lucidity.Update:input_type -> build.please.remote.lucidity.Worker + 2, // 2: build.please.remote.lucidity.Lucidity.ListWorkers:input_type -> build.please.remote.lucidity.ListWorkersRequest + 1, // 3: build.please.remote.lucidity.Lucidity.Update:output_type -> build.please.remote.lucidity.UpdateResponse + 3, // 4: build.please.remote.lucidity.Lucidity.ListWorkers:output_type -> build.please.remote.lucidity.ListWorkersResponse + 3, // [3:5] is the sub-list for method output_type + 1, // [1:3] is the sub-list for method input_type + 1, // [1:1] is the sub-list for extension type_name + 1, // [1:1] is the sub-list for extension extendee + 0, // [0:1] is the sub-list for field type_name +} + +func init() { file_proto_lucidity_lucidity_proto_init() } +func file_proto_lucidity_lucidity_proto_init() { + if File_proto_lucidity_lucidity_proto != nil { + return + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: unsafe.Slice(unsafe.StringData(file_proto_lucidity_lucidity_proto_rawDesc), len(file_proto_lucidity_lucidity_proto_rawDesc)), + NumEnums: 0, + NumMessages: 5, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_proto_lucidity_lucidity_proto_goTypes, + DependencyIndexes: file_proto_lucidity_lucidity_proto_depIdxs, + MessageInfos: file_proto_lucidity_lucidity_proto_msgTypes, + }.Build() + File_proto_lucidity_lucidity_proto = out.File + file_proto_lucidity_lucidity_proto_goTypes = nil + file_proto_lucidity_lucidity_proto_depIdxs = nil +} diff --git a/proto/lucidity/lucidity_grpc.pb.go b/proto/lucidity/lucidity_grpc.pb.go new file mode 100644 index 00000000..8cc75515 --- /dev/null +++ b/proto/lucidity/lucidity_grpc.pb.go @@ -0,0 +1,141 @@ +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. + +package lucidity + +import ( + context "context" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.32.0 or later. +const _ = grpc.SupportPackageIsVersion7 + +// LucidityClient is the client API for Lucidity service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type LucidityClient interface { + // Update sends the server an update on the current state of a worker. + Update(ctx context.Context, in *Worker, opts ...grpc.CallOption) (*UpdateResponse, error) + // List the current set of workers + ListWorkers(ctx context.Context, in *ListWorkersRequest, opts ...grpc.CallOption) (*ListWorkersResponse, error) +} + +type lucidityClient struct { + cc grpc.ClientConnInterface +} + +func NewLucidityClient(cc grpc.ClientConnInterface) LucidityClient { + return &lucidityClient{cc} +} + +func (c *lucidityClient) Update(ctx context.Context, in *Worker, opts ...grpc.CallOption) (*UpdateResponse, error) { + out := new(UpdateResponse) + err := c.cc.Invoke(ctx, "/build.please.remote.lucidity.Lucidity/Update", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *lucidityClient) ListWorkers(ctx context.Context, in *ListWorkersRequest, opts ...grpc.CallOption) (*ListWorkersResponse, error) { + out := new(ListWorkersResponse) + err := c.cc.Invoke(ctx, "/build.please.remote.lucidity.Lucidity/ListWorkers", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// LucidityServer is the server API for Lucidity service. +// All implementations must embed UnimplementedLucidityServer +// for forward compatibility +type LucidityServer interface { + // Update sends the server an update on the current state of a worker. + Update(context.Context, *Worker) (*UpdateResponse, error) + // List the current set of workers + ListWorkers(context.Context, *ListWorkersRequest) (*ListWorkersResponse, error) + mustEmbedUnimplementedLucidityServer() +} + +// UnimplementedLucidityServer must be embedded to have forward compatible implementations. +type UnimplementedLucidityServer struct { +} + +func (UnimplementedLucidityServer) Update(context.Context, *Worker) (*UpdateResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Update not implemented") +} +func (UnimplementedLucidityServer) ListWorkers(context.Context, *ListWorkersRequest) (*ListWorkersResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ListWorkers not implemented") +} +func (UnimplementedLucidityServer) mustEmbedUnimplementedLucidityServer() {} + +// UnsafeLucidityServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to LucidityServer will +// result in compilation errors. +type UnsafeLucidityServer interface { + mustEmbedUnimplementedLucidityServer() +} + +func RegisterLucidityServer(s grpc.ServiceRegistrar, srv LucidityServer) { + s.RegisterService(&Lucidity_ServiceDesc, srv) +} + +func _Lucidity_Update_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(Worker) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(LucidityServer).Update(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/build.please.remote.lucidity.Lucidity/Update", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(LucidityServer).Update(ctx, req.(*Worker)) + } + return interceptor(ctx, in, info, handler) +} + +func _Lucidity_ListWorkers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ListWorkersRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(LucidityServer).ListWorkers(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/build.please.remote.lucidity.Lucidity/ListWorkers", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(LucidityServer).ListWorkers(ctx, req.(*ListWorkersRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// Lucidity_ServiceDesc is the grpc.ServiceDesc for Lucidity service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var Lucidity_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "build.please.remote.lucidity.Lucidity", + HandlerType: (*LucidityServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Update", + Handler: _Lucidity_Update_Handler, + }, + { + MethodName: "ListWorkers", + Handler: _Lucidity_ListWorkers_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "proto/lucidity/lucidity.proto", +} diff --git a/proto/mettle/mettle.pb.go b/proto/mettle/mettle.pb.go new file mode 100644 index 00000000..2425e4c6 --- /dev/null +++ b/proto/mettle/mettle.pb.go @@ -0,0 +1,259 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.36.11 +// protoc v3.21.12 +// source: proto/mettle/mettle.proto + +package mettle + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" + unsafe "unsafe" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type Job struct { + state protoimpl.MessageState `protogen:"open.v1"` + ID string `protobuf:"bytes,1,opt,name=ID,proto3" json:"ID,omitempty"` + Current []byte `protobuf:"bytes,2,opt,name=Current,proto3" json:"Current,omitempty"` + LastUpdate int64 `protobuf:"varint,5,opt,name=LastUpdate,proto3" json:"LastUpdate,omitempty"` + SentFirst bool `protobuf:"varint,3,opt,name=SentFirst,proto3" json:"SentFirst,omitempty"` + Done bool `protobuf:"varint,4,opt,name=Done,proto3" json:"Done,omitempty"` + StartTime int64 `protobuf:"varint,6,opt,name=StartTime,proto3" json:"StartTime,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *Job) Reset() { + *x = Job{} + mi := &file_proto_mettle_mettle_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *Job) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Job) ProtoMessage() {} + +func (x *Job) ProtoReflect() protoreflect.Message { + mi := &file_proto_mettle_mettle_proto_msgTypes[0] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Job.ProtoReflect.Descriptor instead. +func (*Job) Descriptor() ([]byte, []int) { + return file_proto_mettle_mettle_proto_rawDescGZIP(), []int{0} +} + +func (x *Job) GetID() string { + if x != nil { + return x.ID + } + return "" +} + +func (x *Job) GetCurrent() []byte { + if x != nil { + return x.Current + } + return nil +} + +func (x *Job) GetLastUpdate() int64 { + if x != nil { + return x.LastUpdate + } + return 0 +} + +func (x *Job) GetSentFirst() bool { + if x != nil { + return x.SentFirst + } + return false +} + +func (x *Job) GetDone() bool { + if x != nil { + return x.Done + } + return false +} + +func (x *Job) GetStartTime() int64 { + if x != nil { + return x.StartTime + } + return 0 +} + +type ServeExecutionsRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ServeExecutionsRequest) Reset() { + *x = ServeExecutionsRequest{} + mi := &file_proto_mettle_mettle_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ServeExecutionsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ServeExecutionsRequest) ProtoMessage() {} + +func (x *ServeExecutionsRequest) ProtoReflect() protoreflect.Message { + mi := &file_proto_mettle_mettle_proto_msgTypes[1] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ServeExecutionsRequest.ProtoReflect.Descriptor instead. +func (*ServeExecutionsRequest) Descriptor() ([]byte, []int) { + return file_proto_mettle_mettle_proto_rawDescGZIP(), []int{1} +} + +type ServeExecutionsResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + Jobs []*Job `protobuf:"bytes,1,rep,name=jobs,proto3" json:"jobs,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ServeExecutionsResponse) Reset() { + *x = ServeExecutionsResponse{} + mi := &file_proto_mettle_mettle_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ServeExecutionsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ServeExecutionsResponse) ProtoMessage() {} + +func (x *ServeExecutionsResponse) ProtoReflect() protoreflect.Message { + mi := &file_proto_mettle_mettle_proto_msgTypes[2] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ServeExecutionsResponse.ProtoReflect.Descriptor instead. +func (*ServeExecutionsResponse) Descriptor() ([]byte, []int) { + return file_proto_mettle_mettle_proto_rawDescGZIP(), []int{2} +} + +func (x *ServeExecutionsResponse) GetJobs() []*Job { + if x != nil { + return x.Jobs + } + return nil +} + +var File_proto_mettle_mettle_proto protoreflect.FileDescriptor + +const file_proto_mettle_mettle_proto_rawDesc = "" + + "\n" + + "\x19proto/mettle/mettle.proto\x12\x1abuild.please.remote.mettle\"\x9f\x01\n" + + "\x03Job\x12\x0e\n" + + "\x02ID\x18\x01 \x01(\tR\x02ID\x12\x18\n" + + "\aCurrent\x18\x02 \x01(\fR\aCurrent\x12\x1e\n" + + "\n" + + "LastUpdate\x18\x05 \x01(\x03R\n" + + "LastUpdate\x12\x1c\n" + + "\tSentFirst\x18\x03 \x01(\bR\tSentFirst\x12\x12\n" + + "\x04Done\x18\x04 \x01(\bR\x04Done\x12\x1c\n" + + "\tStartTime\x18\x06 \x01(\x03R\tStartTime\"\x18\n" + + "\x16ServeExecutionsRequest\"N\n" + + "\x17ServeExecutionsResponse\x123\n" + + "\x04jobs\x18\x01 \x03(\v2\x1f.build.please.remote.mettle.JobR\x04jobs2\x87\x01\n" + + "\tBootstrap\x12z\n" + + "\x0fServeExecutions\x122.build.please.remote.mettle.ServeExecutionsRequest\x1a3.build.please.remote.mettle.ServeExecutionsResponseB8Z6github.com/thought-machine/please-servers/proto/mettleb\x06proto3" + +var ( + file_proto_mettle_mettle_proto_rawDescOnce sync.Once + file_proto_mettle_mettle_proto_rawDescData []byte +) + +func file_proto_mettle_mettle_proto_rawDescGZIP() []byte { + file_proto_mettle_mettle_proto_rawDescOnce.Do(func() { + file_proto_mettle_mettle_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_proto_mettle_mettle_proto_rawDesc), len(file_proto_mettle_mettle_proto_rawDesc))) + }) + return file_proto_mettle_mettle_proto_rawDescData +} + +var file_proto_mettle_mettle_proto_msgTypes = make([]protoimpl.MessageInfo, 3) +var file_proto_mettle_mettle_proto_goTypes = []any{ + (*Job)(nil), // 0: build.please.remote.mettle.Job + (*ServeExecutionsRequest)(nil), // 1: build.please.remote.mettle.ServeExecutionsRequest + (*ServeExecutionsResponse)(nil), // 2: build.please.remote.mettle.ServeExecutionsResponse +} +var file_proto_mettle_mettle_proto_depIdxs = []int32{ + 0, // 0: build.please.remote.mettle.ServeExecutionsResponse.jobs:type_name -> build.please.remote.mettle.Job + 1, // 1: build.please.remote.mettle.Bootstrap.ServeExecutions:input_type -> build.please.remote.mettle.ServeExecutionsRequest + 2, // 2: build.please.remote.mettle.Bootstrap.ServeExecutions:output_type -> build.please.remote.mettle.ServeExecutionsResponse + 2, // [2:3] is the sub-list for method output_type + 1, // [1:2] is the sub-list for method input_type + 1, // [1:1] is the sub-list for extension type_name + 1, // [1:1] is the sub-list for extension extendee + 0, // [0:1] is the sub-list for field type_name +} + +func init() { file_proto_mettle_mettle_proto_init() } +func file_proto_mettle_mettle_proto_init() { + if File_proto_mettle_mettle_proto != nil { + return + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: unsafe.Slice(unsafe.StringData(file_proto_mettle_mettle_proto_rawDesc), len(file_proto_mettle_mettle_proto_rawDesc)), + NumEnums: 0, + NumMessages: 3, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_proto_mettle_mettle_proto_goTypes, + DependencyIndexes: file_proto_mettle_mettle_proto_depIdxs, + MessageInfos: file_proto_mettle_mettle_proto_msgTypes, + }.Build() + File_proto_mettle_mettle_proto = out.File + file_proto_mettle_mettle_proto_goTypes = nil + file_proto_mettle_mettle_proto_depIdxs = nil +} diff --git a/proto/mettle/mettle_grpc.pb.go b/proto/mettle/mettle_grpc.pb.go new file mode 100644 index 00000000..f047bd0c --- /dev/null +++ b/proto/mettle/mettle_grpc.pb.go @@ -0,0 +1,101 @@ +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. + +package mettle + +import ( + context "context" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.32.0 or later. +const _ = grpc.SupportPackageIsVersion7 + +// BootstrapClient is the client API for Bootstrap service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type BootstrapClient interface { + ServeExecutions(ctx context.Context, in *ServeExecutionsRequest, opts ...grpc.CallOption) (*ServeExecutionsResponse, error) +} + +type bootstrapClient struct { + cc grpc.ClientConnInterface +} + +func NewBootstrapClient(cc grpc.ClientConnInterface) BootstrapClient { + return &bootstrapClient{cc} +} + +func (c *bootstrapClient) ServeExecutions(ctx context.Context, in *ServeExecutionsRequest, opts ...grpc.CallOption) (*ServeExecutionsResponse, error) { + out := new(ServeExecutionsResponse) + err := c.cc.Invoke(ctx, "/build.please.remote.mettle.Bootstrap/ServeExecutions", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// BootstrapServer is the server API for Bootstrap service. +// All implementations must embed UnimplementedBootstrapServer +// for forward compatibility +type BootstrapServer interface { + ServeExecutions(context.Context, *ServeExecutionsRequest) (*ServeExecutionsResponse, error) + mustEmbedUnimplementedBootstrapServer() +} + +// UnimplementedBootstrapServer must be embedded to have forward compatible implementations. +type UnimplementedBootstrapServer struct { +} + +func (UnimplementedBootstrapServer) ServeExecutions(context.Context, *ServeExecutionsRequest) (*ServeExecutionsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ServeExecutions not implemented") +} +func (UnimplementedBootstrapServer) mustEmbedUnimplementedBootstrapServer() {} + +// UnsafeBootstrapServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to BootstrapServer will +// result in compilation errors. +type UnsafeBootstrapServer interface { + mustEmbedUnimplementedBootstrapServer() +} + +func RegisterBootstrapServer(s grpc.ServiceRegistrar, srv BootstrapServer) { + s.RegisterService(&Bootstrap_ServiceDesc, srv) +} + +func _Bootstrap_ServeExecutions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ServeExecutionsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(BootstrapServer).ServeExecutions(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/build.please.remote.mettle.Bootstrap/ServeExecutions", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(BootstrapServer).ServeExecutions(ctx, req.(*ServeExecutionsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// Bootstrap_ServiceDesc is the grpc.ServiceDesc for Bootstrap service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var Bootstrap_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "build.please.remote.mettle.Bootstrap", + HandlerType: (*BootstrapServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "ServeExecutions", + Handler: _Bootstrap_ServeExecutions_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "proto/mettle/mettle.proto", +} diff --git a/proto/purity/purity.pb.go b/proto/purity/purity.pb.go new file mode 100644 index 00000000..8abaf59c --- /dev/null +++ b/proto/purity/purity.pb.go @@ -0,0 +1,471 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.36.11 +// protoc v3.21.12 +// source: proto/purity/purity.proto + +package purity + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" + unsafe "unsafe" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type ListRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` + // The prefix of blobs to list. Should be exactly two hex characters. + Prefix string `protobuf:"bytes,1,opt,name=prefix,proto3" json:"prefix,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ListRequest) Reset() { + *x = ListRequest{} + mi := &file_proto_purity_purity_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ListRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListRequest) ProtoMessage() {} + +func (x *ListRequest) ProtoReflect() protoreflect.Message { + mi := &file_proto_purity_purity_proto_msgTypes[0] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ListRequest.ProtoReflect.Descriptor instead. +func (*ListRequest) Descriptor() ([]byte, []int) { + return file_proto_purity_purity_proto_rawDescGZIP(), []int{0} +} + +func (x *ListRequest) GetPrefix() string { + if x != nil { + return x.Prefix + } + return "" +} + +type ListResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + // List of results in the AC on this server. + ActionResults []*ActionResult `protobuf:"bytes,1,rep,name=action_results,json=actionResults,proto3" json:"action_results,omitempty"` + // List of blobs this server stores. + Blobs []*Blob `protobuf:"bytes,2,rep,name=blobs,proto3" json:"blobs,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ListResponse) Reset() { + *x = ListResponse{} + mi := &file_proto_purity_purity_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ListResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListResponse) ProtoMessage() {} + +func (x *ListResponse) ProtoReflect() protoreflect.Message { + mi := &file_proto_purity_purity_proto_msgTypes[1] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ListResponse.ProtoReflect.Descriptor instead. +func (*ListResponse) Descriptor() ([]byte, []int) { + return file_proto_purity_purity_proto_rawDescGZIP(), []int{1} +} + +func (x *ListResponse) GetActionResults() []*ActionResult { + if x != nil { + return x.ActionResults + } + return nil +} + +func (x *ListResponse) GetBlobs() []*Blob { + if x != nil { + return x.Blobs + } + return nil +} + +// An ActionResult is a reference to an action result with a little additional +// information. +type ActionResult struct { + state protoimpl.MessageState `protogen:"open.v1"` + Hash string `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"` + SizeBytes int64 `protobuf:"varint,2,opt,name=size_bytes,json=sizeBytes,proto3" json:"size_bytes,omitempty"` + LastAccessed int64 `protobuf:"varint,3,opt,name=last_accessed,json=lastAccessed,proto3" json:"last_accessed,omitempty"` + Replicas int32 `protobuf:"varint,4,opt,name=replicas,proto3" json:"replicas,omitempty"` + CachePrefix string `protobuf:"bytes,5,opt,name=cache_prefix,json=cachePrefix,proto3" json:"cache_prefix,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ActionResult) Reset() { + *x = ActionResult{} + mi := &file_proto_purity_purity_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ActionResult) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ActionResult) ProtoMessage() {} + +func (x *ActionResult) ProtoReflect() protoreflect.Message { + mi := &file_proto_purity_purity_proto_msgTypes[2] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ActionResult.ProtoReflect.Descriptor instead. +func (*ActionResult) Descriptor() ([]byte, []int) { + return file_proto_purity_purity_proto_rawDescGZIP(), []int{2} +} + +func (x *ActionResult) GetHash() string { + if x != nil { + return x.Hash + } + return "" +} + +func (x *ActionResult) GetSizeBytes() int64 { + if x != nil { + return x.SizeBytes + } + return 0 +} + +func (x *ActionResult) GetLastAccessed() int64 { + if x != nil { + return x.LastAccessed + } + return 0 +} + +func (x *ActionResult) GetReplicas() int32 { + if x != nil { + return x.Replicas + } + return 0 +} + +func (x *ActionResult) GetCachePrefix() string { + if x != nil { + return x.CachePrefix + } + return "" +} + +type Blob struct { + state protoimpl.MessageState `protogen:"open.v1"` + Hash string `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"` + SizeBytes int64 `protobuf:"varint,2,opt,name=size_bytes,json=sizeBytes,proto3" json:"size_bytes,omitempty"` + Replicas int32 `protobuf:"varint,4,opt,name=replicas,proto3" json:"replicas,omitempty"` + CachePrefix string `protobuf:"bytes,5,opt,name=cache_prefix,json=cachePrefix,proto3" json:"cache_prefix,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *Blob) Reset() { + *x = Blob{} + mi := &file_proto_purity_purity_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *Blob) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Blob) ProtoMessage() {} + +func (x *Blob) ProtoReflect() protoreflect.Message { + mi := &file_proto_purity_purity_proto_msgTypes[3] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Blob.ProtoReflect.Descriptor instead. +func (*Blob) Descriptor() ([]byte, []int) { + return file_proto_purity_purity_proto_rawDescGZIP(), []int{3} +} + +func (x *Blob) GetHash() string { + if x != nil { + return x.Hash + } + return "" +} + +func (x *Blob) GetSizeBytes() int64 { + if x != nil { + return x.SizeBytes + } + return 0 +} + +func (x *Blob) GetReplicas() int32 { + if x != nil { + return x.Replicas + } + return 0 +} + +func (x *Blob) GetCachePrefix() string { + if x != nil { + return x.CachePrefix + } + return "" +} + +type DeleteRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` + // Prefix of blobs to delete. Should be exactly two hex characters. + Prefix string `protobuf:"bytes,3,opt,name=prefix,proto3" json:"prefix,omitempty"` + // Action results to delete. + ActionResults []*Blob `protobuf:"bytes,1,rep,name=action_results,json=actionResults,proto3" json:"action_results,omitempty"` + // CAS blobs to delete. + Blobs []*Blob `protobuf:"bytes,2,rep,name=blobs,proto3" json:"blobs,omitempty"` + // True to force a 'hard' delete. + // False gives the server an option to 'soft' delete them (however it may + // interpret that). + Hard bool `protobuf:"varint,4,opt,name=hard,proto3" json:"hard,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *DeleteRequest) Reset() { + *x = DeleteRequest{} + mi := &file_proto_purity_purity_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *DeleteRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteRequest) ProtoMessage() {} + +func (x *DeleteRequest) ProtoReflect() protoreflect.Message { + mi := &file_proto_purity_purity_proto_msgTypes[4] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteRequest.ProtoReflect.Descriptor instead. +func (*DeleteRequest) Descriptor() ([]byte, []int) { + return file_proto_purity_purity_proto_rawDescGZIP(), []int{4} +} + +func (x *DeleteRequest) GetPrefix() string { + if x != nil { + return x.Prefix + } + return "" +} + +func (x *DeleteRequest) GetActionResults() []*Blob { + if x != nil { + return x.ActionResults + } + return nil +} + +func (x *DeleteRequest) GetBlobs() []*Blob { + if x != nil { + return x.Blobs + } + return nil +} + +func (x *DeleteRequest) GetHard() bool { + if x != nil { + return x.Hard + } + return false +} + +type DeleteResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *DeleteResponse) Reset() { + *x = DeleteResponse{} + mi := &file_proto_purity_purity_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *DeleteResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteResponse) ProtoMessage() {} + +func (x *DeleteResponse) ProtoReflect() protoreflect.Message { + mi := &file_proto_purity_purity_proto_msgTypes[5] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteResponse.ProtoReflect.Descriptor instead. +func (*DeleteResponse) Descriptor() ([]byte, []int) { + return file_proto_purity_purity_proto_rawDescGZIP(), []int{5} +} + +var File_proto_purity_purity_proto protoreflect.FileDescriptor + +const file_proto_purity_purity_proto_rawDesc = "" + + "\n" + + "\x19proto/purity/purity.proto\x12\x1abuild.please.remote.purity\"%\n" + + "\vListRequest\x12\x16\n" + + "\x06prefix\x18\x01 \x01(\tR\x06prefix\"\x97\x01\n" + + "\fListResponse\x12O\n" + + "\x0eaction_results\x18\x01 \x03(\v2(.build.please.remote.purity.ActionResultR\ractionResults\x126\n" + + "\x05blobs\x18\x02 \x03(\v2 .build.please.remote.purity.BlobR\x05blobs\"\xa5\x01\n" + + "\fActionResult\x12\x12\n" + + "\x04hash\x18\x01 \x01(\tR\x04hash\x12\x1d\n" + + "\n" + + "size_bytes\x18\x02 \x01(\x03R\tsizeBytes\x12#\n" + + "\rlast_accessed\x18\x03 \x01(\x03R\flastAccessed\x12\x1a\n" + + "\breplicas\x18\x04 \x01(\x05R\breplicas\x12!\n" + + "\fcache_prefix\x18\x05 \x01(\tR\vcachePrefix\"x\n" + + "\x04Blob\x12\x12\n" + + "\x04hash\x18\x01 \x01(\tR\x04hash\x12\x1d\n" + + "\n" + + "size_bytes\x18\x02 \x01(\x03R\tsizeBytes\x12\x1a\n" + + "\breplicas\x18\x04 \x01(\x05R\breplicas\x12!\n" + + "\fcache_prefix\x18\x05 \x01(\tR\vcachePrefix\"\xbc\x01\n" + + "\rDeleteRequest\x12\x16\n" + + "\x06prefix\x18\x03 \x01(\tR\x06prefix\x12G\n" + + "\x0eaction_results\x18\x01 \x03(\v2 .build.please.remote.purity.BlobR\ractionResults\x126\n" + + "\x05blobs\x18\x02 \x03(\v2 .build.please.remote.purity.BlobR\x05blobs\x12\x12\n" + + "\x04hard\x18\x04 \x01(\bR\x04hard\"\x10\n" + + "\x0eDeleteResponse2\xc0\x01\n" + + "\x02GC\x12Y\n" + + "\x04List\x12'.build.please.remote.purity.ListRequest\x1a(.build.please.remote.purity.ListResponse\x12_\n" + + "\x06Delete\x12).build.please.remote.purity.DeleteRequest\x1a*.build.please.remote.purity.DeleteResponseB8Z6github.com/thought-machine/please-servers/proto/purityb\x06proto3" + +var ( + file_proto_purity_purity_proto_rawDescOnce sync.Once + file_proto_purity_purity_proto_rawDescData []byte +) + +func file_proto_purity_purity_proto_rawDescGZIP() []byte { + file_proto_purity_purity_proto_rawDescOnce.Do(func() { + file_proto_purity_purity_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_proto_purity_purity_proto_rawDesc), len(file_proto_purity_purity_proto_rawDesc))) + }) + return file_proto_purity_purity_proto_rawDescData +} + +var file_proto_purity_purity_proto_msgTypes = make([]protoimpl.MessageInfo, 6) +var file_proto_purity_purity_proto_goTypes = []any{ + (*ListRequest)(nil), // 0: build.please.remote.purity.ListRequest + (*ListResponse)(nil), // 1: build.please.remote.purity.ListResponse + (*ActionResult)(nil), // 2: build.please.remote.purity.ActionResult + (*Blob)(nil), // 3: build.please.remote.purity.Blob + (*DeleteRequest)(nil), // 4: build.please.remote.purity.DeleteRequest + (*DeleteResponse)(nil), // 5: build.please.remote.purity.DeleteResponse +} +var file_proto_purity_purity_proto_depIdxs = []int32{ + 2, // 0: build.please.remote.purity.ListResponse.action_results:type_name -> build.please.remote.purity.ActionResult + 3, // 1: build.please.remote.purity.ListResponse.blobs:type_name -> build.please.remote.purity.Blob + 3, // 2: build.please.remote.purity.DeleteRequest.action_results:type_name -> build.please.remote.purity.Blob + 3, // 3: build.please.remote.purity.DeleteRequest.blobs:type_name -> build.please.remote.purity.Blob + 0, // 4: build.please.remote.purity.GC.List:input_type -> build.please.remote.purity.ListRequest + 4, // 5: build.please.remote.purity.GC.Delete:input_type -> build.please.remote.purity.DeleteRequest + 1, // 6: build.please.remote.purity.GC.List:output_type -> build.please.remote.purity.ListResponse + 5, // 7: build.please.remote.purity.GC.Delete:output_type -> build.please.remote.purity.DeleteResponse + 6, // [6:8] is the sub-list for method output_type + 4, // [4:6] is the sub-list for method input_type + 4, // [4:4] is the sub-list for extension type_name + 4, // [4:4] is the sub-list for extension extendee + 0, // [0:4] is the sub-list for field type_name +} + +func init() { file_proto_purity_purity_proto_init() } +func file_proto_purity_purity_proto_init() { + if File_proto_purity_purity_proto != nil { + return + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: unsafe.Slice(unsafe.StringData(file_proto_purity_purity_proto_rawDesc), len(file_proto_purity_purity_proto_rawDesc)), + NumEnums: 0, + NumMessages: 6, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_proto_purity_purity_proto_goTypes, + DependencyIndexes: file_proto_purity_purity_proto_depIdxs, + MessageInfos: file_proto_purity_purity_proto_msgTypes, + }.Build() + File_proto_purity_purity_proto = out.File + file_proto_purity_purity_proto_goTypes = nil + file_proto_purity_purity_proto_depIdxs = nil +} diff --git a/proto/purity/purity_grpc.pb.go b/proto/purity/purity_grpc.pb.go new file mode 100644 index 00000000..181163a1 --- /dev/null +++ b/proto/purity/purity_grpc.pb.go @@ -0,0 +1,141 @@ +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. + +package purity + +import ( + context "context" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.32.0 or later. +const _ = grpc.SupportPackageIsVersion7 + +// GCClient is the client API for GC service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type GCClient interface { + // List provides a listing of currently stored items in the AC / CAS. + List(ctx context.Context, in *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) + // Delete removes some items from the server. + Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*DeleteResponse, error) +} + +type gCClient struct { + cc grpc.ClientConnInterface +} + +func NewGCClient(cc grpc.ClientConnInterface) GCClient { + return &gCClient{cc} +} + +func (c *gCClient) List(ctx context.Context, in *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) { + out := new(ListResponse) + err := c.cc.Invoke(ctx, "/build.please.remote.purity.GC/List", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *gCClient) Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*DeleteResponse, error) { + out := new(DeleteResponse) + err := c.cc.Invoke(ctx, "/build.please.remote.purity.GC/Delete", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// GCServer is the server API for GC service. +// All implementations must embed UnimplementedGCServer +// for forward compatibility +type GCServer interface { + // List provides a listing of currently stored items in the AC / CAS. + List(context.Context, *ListRequest) (*ListResponse, error) + // Delete removes some items from the server. + Delete(context.Context, *DeleteRequest) (*DeleteResponse, error) + mustEmbedUnimplementedGCServer() +} + +// UnimplementedGCServer must be embedded to have forward compatible implementations. +type UnimplementedGCServer struct { +} + +func (UnimplementedGCServer) List(context.Context, *ListRequest) (*ListResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method List not implemented") +} +func (UnimplementedGCServer) Delete(context.Context, *DeleteRequest) (*DeleteResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Delete not implemented") +} +func (UnimplementedGCServer) mustEmbedUnimplementedGCServer() {} + +// UnsafeGCServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to GCServer will +// result in compilation errors. +type UnsafeGCServer interface { + mustEmbedUnimplementedGCServer() +} + +func RegisterGCServer(s grpc.ServiceRegistrar, srv GCServer) { + s.RegisterService(&GC_ServiceDesc, srv) +} + +func _GC_List_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ListRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(GCServer).List(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/build.please.remote.purity.GC/List", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(GCServer).List(ctx, req.(*ListRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _GC_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DeleteRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(GCServer).Delete(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/build.please.remote.purity.GC/Delete", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(GCServer).Delete(ctx, req.(*DeleteRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// GC_ServiceDesc is the grpc.ServiceDesc for GC service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var GC_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "build.please.remote.purity.GC", + HandlerType: (*GCServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "List", + Handler: _GC_List_Handler, + }, + { + MethodName: "Delete", + Handler: _GC_Delete_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "proto/purity/purity.proto", +} diff --git a/third_party/proto/cas/.gitignore b/third_party/proto/cas/.gitignore deleted file mode 100644 index d9cabb4d..00000000 --- a/third_party/proto/cas/.gitignore +++ /dev/null @@ -1 +0,0 @@ -!cas.pb.go diff --git a/third_party/proto/resourceusage/resourceusage.pb.go b/third_party/proto/resourceusage/resourceusage.pb.go new file mode 100644 index 00000000..44c5a621 --- /dev/null +++ b/third_party/proto/resourceusage/resourceusage.pb.go @@ -0,0 +1,543 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.36.11 +// protoc v3.21.12 +// source: third_party/proto/resourceusage/resourceusage.proto + +package resourceusage + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" + unsafe "unsafe" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +// File pool resource usage statistics. File pools are used by bb_worker +// to allocate temporary files that are created by build actions. +type FilePoolResourceUsage struct { + state protoimpl.MessageState `protogen:"open.v1"` + // Total number of files created. + FilesCreated uint64 `protobuf:"varint,1,opt,name=files_created,json=filesCreated,proto3" json:"files_created,omitempty"` + // Maximum number of files that existed at some point in time. + FilesCountPeak uint64 `protobuf:"varint,2,opt,name=files_count_peak,json=filesCountPeak,proto3" json:"files_count_peak,omitempty"` + // Maximum total size of all files at some point in time. + FilesSizeBytesPeak uint64 `protobuf:"varint,3,opt,name=files_size_bytes_peak,json=filesSizeBytesPeak,proto3" json:"files_size_bytes_peak,omitempty"` + // Total number of ReadAt() calls performed. + ReadsCount uint64 `protobuf:"varint,4,opt,name=reads_count,json=readsCount,proto3" json:"reads_count,omitempty"` + // Total amount of data returned by all ReadAt() calls. + ReadsSizeBytes uint64 `protobuf:"varint,5,opt,name=reads_size_bytes,json=readsSizeBytes,proto3" json:"reads_size_bytes,omitempty"` + // Total number of WriteAt() calls performed. + WritesCount uint64 `protobuf:"varint,6,opt,name=writes_count,json=writesCount,proto3" json:"writes_count,omitempty"` + // Total amount of data processed by all WriteAt() calls. + WritesSizeBytes uint64 `protobuf:"varint,7,opt,name=writes_size_bytes,json=writesSizeBytes,proto3" json:"writes_size_bytes,omitempty"` + // Total number of Truncate() calls performed. + TruncatesCount uint64 `protobuf:"varint,8,opt,name=truncates_count,json=truncatesCount,proto3" json:"truncates_count,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *FilePoolResourceUsage) Reset() { + *x = FilePoolResourceUsage{} + mi := &file_third_party_proto_resourceusage_resourceusage_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *FilePoolResourceUsage) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*FilePoolResourceUsage) ProtoMessage() {} + +func (x *FilePoolResourceUsage) ProtoReflect() protoreflect.Message { + mi := &file_third_party_proto_resourceusage_resourceusage_proto_msgTypes[0] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use FilePoolResourceUsage.ProtoReflect.Descriptor instead. +func (*FilePoolResourceUsage) Descriptor() ([]byte, []int) { + return file_third_party_proto_resourceusage_resourceusage_proto_rawDescGZIP(), []int{0} +} + +func (x *FilePoolResourceUsage) GetFilesCreated() uint64 { + if x != nil { + return x.FilesCreated + } + return 0 +} + +func (x *FilePoolResourceUsage) GetFilesCountPeak() uint64 { + if x != nil { + return x.FilesCountPeak + } + return 0 +} + +func (x *FilePoolResourceUsage) GetFilesSizeBytesPeak() uint64 { + if x != nil { + return x.FilesSizeBytesPeak + } + return 0 +} + +func (x *FilePoolResourceUsage) GetReadsCount() uint64 { + if x != nil { + return x.ReadsCount + } + return 0 +} + +func (x *FilePoolResourceUsage) GetReadsSizeBytes() uint64 { + if x != nil { + return x.ReadsSizeBytes + } + return 0 +} + +func (x *FilePoolResourceUsage) GetWritesCount() uint64 { + if x != nil { + return x.WritesCount + } + return 0 +} + +func (x *FilePoolResourceUsage) GetWritesSizeBytes() uint64 { + if x != nil { + return x.WritesSizeBytes + } + return 0 +} + +func (x *FilePoolResourceUsage) GetTruncatesCount() uint64 { + if x != nil { + return x.TruncatesCount + } + return 0 +} + +// The equivalent of 'struct rusage' in POSIX, generally returned by +// getrusage(2) or wait4(2). +type POSIXResourceUsage struct { + state protoimpl.MessageState `protogen:"open.v1"` + // ru_utime: Amount of CPU time in seconds spent in userspace. + UserTime *Duration `protobuf:"bytes,1,opt,name=user_time,json=userTime,proto3" json:"user_time,omitempty"` + // ru_stime: Amount of CPU time in seconds spent in kernelspace. + SystemTime *Duration `protobuf:"bytes,2,opt,name=system_time,json=systemTime,proto3" json:"system_time,omitempty"` + // ru_maxrss: Maximum amount of resident memory in bytes. + MaximumResidentSetSize int64 `protobuf:"varint,3,opt,name=maximum_resident_set_size,json=maximumResidentSetSize,proto3" json:"maximum_resident_set_size,omitempty"` + // ru_minflt: Page reclaims. + PageReclaims int64 `protobuf:"varint,7,opt,name=page_reclaims,json=pageReclaims,proto3" json:"page_reclaims,omitempty"` + // ru_majflt: Page faults. + PageFaults int64 `protobuf:"varint,8,opt,name=page_faults,json=pageFaults,proto3" json:"page_faults,omitempty"` + // ru_nswap: Number of swaps. + Swaps int64 `protobuf:"varint,9,opt,name=swaps,proto3" json:"swaps,omitempty"` + // ru_inblock: Block input operations. + BlockInputOperations int64 `protobuf:"varint,10,opt,name=block_input_operations,json=blockInputOperations,proto3" json:"block_input_operations,omitempty"` + // ru_oublock: Block output operations. + BlockOutputOperations int64 `protobuf:"varint,11,opt,name=block_output_operations,json=blockOutputOperations,proto3" json:"block_output_operations,omitempty"` + // ru_msgsnd: Messages sent. + MessagesSent int64 `protobuf:"varint,12,opt,name=messages_sent,json=messagesSent,proto3" json:"messages_sent,omitempty"` + // ru_msgrcv: Messages received. + MessagesReceived int64 `protobuf:"varint,13,opt,name=messages_received,json=messagesReceived,proto3" json:"messages_received,omitempty"` + // ru_nsignals: Signals received. + SignalsReceived int64 `protobuf:"varint,14,opt,name=signals_received,json=signalsReceived,proto3" json:"signals_received,omitempty"` + // ru_nvcsw: Voluntary context switches. + VoluntaryContextSwitches int64 `protobuf:"varint,15,opt,name=voluntary_context_switches,json=voluntaryContextSwitches,proto3" json:"voluntary_context_switches,omitempty"` + // ru_nivcsw: Involuntary context switches. + InvoluntaryContextSwitches int64 `protobuf:"varint,16,opt,name=involuntary_context_switches,json=involuntaryContextSwitches,proto3" json:"involuntary_context_switches,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *POSIXResourceUsage) Reset() { + *x = POSIXResourceUsage{} + mi := &file_third_party_proto_resourceusage_resourceusage_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *POSIXResourceUsage) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*POSIXResourceUsage) ProtoMessage() {} + +func (x *POSIXResourceUsage) ProtoReflect() protoreflect.Message { + mi := &file_third_party_proto_resourceusage_resourceusage_proto_msgTypes[1] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use POSIXResourceUsage.ProtoReflect.Descriptor instead. +func (*POSIXResourceUsage) Descriptor() ([]byte, []int) { + return file_third_party_proto_resourceusage_resourceusage_proto_rawDescGZIP(), []int{1} +} + +func (x *POSIXResourceUsage) GetUserTime() *Duration { + if x != nil { + return x.UserTime + } + return nil +} + +func (x *POSIXResourceUsage) GetSystemTime() *Duration { + if x != nil { + return x.SystemTime + } + return nil +} + +func (x *POSIXResourceUsage) GetMaximumResidentSetSize() int64 { + if x != nil { + return x.MaximumResidentSetSize + } + return 0 +} + +func (x *POSIXResourceUsage) GetPageReclaims() int64 { + if x != nil { + return x.PageReclaims + } + return 0 +} + +func (x *POSIXResourceUsage) GetPageFaults() int64 { + if x != nil { + return x.PageFaults + } + return 0 +} + +func (x *POSIXResourceUsage) GetSwaps() int64 { + if x != nil { + return x.Swaps + } + return 0 +} + +func (x *POSIXResourceUsage) GetBlockInputOperations() int64 { + if x != nil { + return x.BlockInputOperations + } + return 0 +} + +func (x *POSIXResourceUsage) GetBlockOutputOperations() int64 { + if x != nil { + return x.BlockOutputOperations + } + return 0 +} + +func (x *POSIXResourceUsage) GetMessagesSent() int64 { + if x != nil { + return x.MessagesSent + } + return 0 +} + +func (x *POSIXResourceUsage) GetMessagesReceived() int64 { + if x != nil { + return x.MessagesReceived + } + return 0 +} + +func (x *POSIXResourceUsage) GetSignalsReceived() int64 { + if x != nil { + return x.SignalsReceived + } + return 0 +} + +func (x *POSIXResourceUsage) GetVoluntaryContextSwitches() int64 { + if x != nil { + return x.VoluntaryContextSwitches + } + return 0 +} + +func (x *POSIXResourceUsage) GetInvoluntaryContextSwitches() int64 { + if x != nil { + return x.InvoluntaryContextSwitches + } + return 0 +} + +// Equivalent to the standard duration proto. +type Duration struct { + state protoimpl.MessageState `protogen:"open.v1"` + Seconds int64 `protobuf:"varint,1,opt,name=seconds,proto3" json:"seconds,omitempty"` + Nanos int32 `protobuf:"varint,2,opt,name=nanos,proto3" json:"nanos,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *Duration) Reset() { + *x = Duration{} + mi := &file_third_party_proto_resourceusage_resourceusage_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *Duration) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Duration) ProtoMessage() {} + +func (x *Duration) ProtoReflect() protoreflect.Message { + mi := &file_third_party_proto_resourceusage_resourceusage_proto_msgTypes[2] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Duration.ProtoReflect.Descriptor instead. +func (*Duration) Descriptor() ([]byte, []int) { + return file_third_party_proto_resourceusage_resourceusage_proto_rawDescGZIP(), []int{2} +} + +func (x *Duration) GetSeconds() int64 { + if x != nil { + return x.Seconds + } + return 0 +} + +func (x *Duration) GetNanos() int32 { + if x != nil { + return x.Nanos + } + return 0 +} + +// A representation of unique factors that may be aggregated to +// compute a given build action's total price. +type MonetaryResourceUsage struct { + state protoimpl.MessageState `protogen:"open.v1"` + // A mapping of expense categories to their respective costs. + Expenses map[string]*MonetaryResourceUsage_Expense `protobuf:"bytes,1,rep,name=expenses,proto3" json:"expenses,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *MonetaryResourceUsage) Reset() { + *x = MonetaryResourceUsage{} + mi := &file_third_party_proto_resourceusage_resourceusage_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *MonetaryResourceUsage) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MonetaryResourceUsage) ProtoMessage() {} + +func (x *MonetaryResourceUsage) ProtoReflect() protoreflect.Message { + mi := &file_third_party_proto_resourceusage_resourceusage_proto_msgTypes[3] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use MonetaryResourceUsage.ProtoReflect.Descriptor instead. +func (*MonetaryResourceUsage) Descriptor() ([]byte, []int) { + return file_third_party_proto_resourceusage_resourceusage_proto_rawDescGZIP(), []int{3} +} + +func (x *MonetaryResourceUsage) GetExpenses() map[string]*MonetaryResourceUsage_Expense { + if x != nil { + return x.Expenses + } + return nil +} + +type MonetaryResourceUsage_Expense struct { + state protoimpl.MessageState `protogen:"open.v1"` + // The type of currency the cost is measured in. Required to be in + // ISO 4217 format: https://en.wikipedia.org/wiki/ISO_4217#Active_codes + Currency string `protobuf:"bytes,1,opt,name=currency,proto3" json:"currency,omitempty"` + // The value of a specific expense for a build action. + Cost float64 `protobuf:"fixed64,2,opt,name=cost,proto3" json:"cost,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *MonetaryResourceUsage_Expense) Reset() { + *x = MonetaryResourceUsage_Expense{} + mi := &file_third_party_proto_resourceusage_resourceusage_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *MonetaryResourceUsage_Expense) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MonetaryResourceUsage_Expense) ProtoMessage() {} + +func (x *MonetaryResourceUsage_Expense) ProtoReflect() protoreflect.Message { + mi := &file_third_party_proto_resourceusage_resourceusage_proto_msgTypes[4] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use MonetaryResourceUsage_Expense.ProtoReflect.Descriptor instead. +func (*MonetaryResourceUsage_Expense) Descriptor() ([]byte, []int) { + return file_third_party_proto_resourceusage_resourceusage_proto_rawDescGZIP(), []int{3, 0} +} + +func (x *MonetaryResourceUsage_Expense) GetCurrency() string { + if x != nil { + return x.Currency + } + return "" +} + +func (x *MonetaryResourceUsage_Expense) GetCost() float64 { + if x != nil { + return x.Cost + } + return 0 +} + +var File_third_party_proto_resourceusage_resourceusage_proto protoreflect.FileDescriptor + +const file_third_party_proto_resourceusage_resourceusage_proto_rawDesc = "" + + "\n" + + "3third_party/proto/resourceusage/resourceusage.proto\x12\x17buildbarn.resourceusage\"\xdc\x02\n" + + "\x15FilePoolResourceUsage\x12#\n" + + "\rfiles_created\x18\x01 \x01(\x04R\ffilesCreated\x12(\n" + + "\x10files_count_peak\x18\x02 \x01(\x04R\x0efilesCountPeak\x121\n" + + "\x15files_size_bytes_peak\x18\x03 \x01(\x04R\x12filesSizeBytesPeak\x12\x1f\n" + + "\vreads_count\x18\x04 \x01(\x04R\n" + + "readsCount\x12(\n" + + "\x10reads_size_bytes\x18\x05 \x01(\x04R\x0ereadsSizeBytes\x12!\n" + + "\fwrites_count\x18\x06 \x01(\x04R\vwritesCount\x12*\n" + + "\x11writes_size_bytes\x18\a \x01(\x04R\x0fwritesSizeBytes\x12'\n" + + "\x0ftruncates_count\x18\b \x01(\x04R\x0etruncatesCount\"\xac\x05\n" + + "\x12POSIXResourceUsage\x12>\n" + + "\tuser_time\x18\x01 \x01(\v2!.buildbarn.resourceusage.DurationR\buserTime\x12B\n" + + "\vsystem_time\x18\x02 \x01(\v2!.buildbarn.resourceusage.DurationR\n" + + "systemTime\x129\n" + + "\x19maximum_resident_set_size\x18\x03 \x01(\x03R\x16maximumResidentSetSize\x12#\n" + + "\rpage_reclaims\x18\a \x01(\x03R\fpageReclaims\x12\x1f\n" + + "\vpage_faults\x18\b \x01(\x03R\n" + + "pageFaults\x12\x14\n" + + "\x05swaps\x18\t \x01(\x03R\x05swaps\x124\n" + + "\x16block_input_operations\x18\n" + + " \x01(\x03R\x14blockInputOperations\x126\n" + + "\x17block_output_operations\x18\v \x01(\x03R\x15blockOutputOperations\x12#\n" + + "\rmessages_sent\x18\f \x01(\x03R\fmessagesSent\x12+\n" + + "\x11messages_received\x18\r \x01(\x03R\x10messagesReceived\x12)\n" + + "\x10signals_received\x18\x0e \x01(\x03R\x0fsignalsReceived\x12<\n" + + "\x1avoluntary_context_switches\x18\x0f \x01(\x03R\x18voluntaryContextSwitches\x12@\n" + + "\x1cinvoluntary_context_switches\x18\x10 \x01(\x03R\x1ainvoluntaryContextSwitchesJ\x04\b\x04\x10\x05J\x04\b\x05\x10\x06J\x04\b\x06\x10\a\":\n" + + "\bDuration\x12\x18\n" + + "\aseconds\x18\x01 \x01(\x03R\aseconds\x12\x14\n" + + "\x05nanos\x18\x02 \x01(\x05R\x05nanos\"\xa1\x02\n" + + "\x15MonetaryResourceUsage\x12X\n" + + "\bexpenses\x18\x01 \x03(\v2<.buildbarn.resourceusage.MonetaryResourceUsage.ExpensesEntryR\bexpenses\x1a9\n" + + "\aExpense\x12\x1a\n" + + "\bcurrency\x18\x01 \x01(\tR\bcurrency\x12\x12\n" + + "\x04cost\x18\x02 \x01(\x01R\x04cost\x1as\n" + + "\rExpensesEntry\x12\x10\n" + + "\x03key\x18\x01 \x01(\tR\x03key\x12L\n" + + "\x05value\x18\x02 \x01(\v26.buildbarn.resourceusage.MonetaryResourceUsage.ExpenseR\x05value:\x028\x01BBZ@github.com/buildbarn/bb-remote-execution/pkg/proto/resourceusageb\x06proto3" + +var ( + file_third_party_proto_resourceusage_resourceusage_proto_rawDescOnce sync.Once + file_third_party_proto_resourceusage_resourceusage_proto_rawDescData []byte +) + +func file_third_party_proto_resourceusage_resourceusage_proto_rawDescGZIP() []byte { + file_third_party_proto_resourceusage_resourceusage_proto_rawDescOnce.Do(func() { + file_third_party_proto_resourceusage_resourceusage_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_third_party_proto_resourceusage_resourceusage_proto_rawDesc), len(file_third_party_proto_resourceusage_resourceusage_proto_rawDesc))) + }) + return file_third_party_proto_resourceusage_resourceusage_proto_rawDescData +} + +var file_third_party_proto_resourceusage_resourceusage_proto_msgTypes = make([]protoimpl.MessageInfo, 6) +var file_third_party_proto_resourceusage_resourceusage_proto_goTypes = []any{ + (*FilePoolResourceUsage)(nil), // 0: buildbarn.resourceusage.FilePoolResourceUsage + (*POSIXResourceUsage)(nil), // 1: buildbarn.resourceusage.POSIXResourceUsage + (*Duration)(nil), // 2: buildbarn.resourceusage.Duration + (*MonetaryResourceUsage)(nil), // 3: buildbarn.resourceusage.MonetaryResourceUsage + (*MonetaryResourceUsage_Expense)(nil), // 4: buildbarn.resourceusage.MonetaryResourceUsage.Expense + nil, // 5: buildbarn.resourceusage.MonetaryResourceUsage.ExpensesEntry +} +var file_third_party_proto_resourceusage_resourceusage_proto_depIdxs = []int32{ + 2, // 0: buildbarn.resourceusage.POSIXResourceUsage.user_time:type_name -> buildbarn.resourceusage.Duration + 2, // 1: buildbarn.resourceusage.POSIXResourceUsage.system_time:type_name -> buildbarn.resourceusage.Duration + 5, // 2: buildbarn.resourceusage.MonetaryResourceUsage.expenses:type_name -> buildbarn.resourceusage.MonetaryResourceUsage.ExpensesEntry + 4, // 3: buildbarn.resourceusage.MonetaryResourceUsage.ExpensesEntry.value:type_name -> buildbarn.resourceusage.MonetaryResourceUsage.Expense + 4, // [4:4] is the sub-list for method output_type + 4, // [4:4] is the sub-list for method input_type + 4, // [4:4] is the sub-list for extension type_name + 4, // [4:4] is the sub-list for extension extendee + 0, // [0:4] is the sub-list for field type_name +} + +func init() { file_third_party_proto_resourceusage_resourceusage_proto_init() } +func file_third_party_proto_resourceusage_resourceusage_proto_init() { + if File_third_party_proto_resourceusage_resourceusage_proto != nil { + return + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: unsafe.Slice(unsafe.StringData(file_third_party_proto_resourceusage_resourceusage_proto_rawDesc), len(file_third_party_proto_resourceusage_resourceusage_proto_rawDesc)), + NumEnums: 0, + NumMessages: 6, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_third_party_proto_resourceusage_resourceusage_proto_goTypes, + DependencyIndexes: file_third_party_proto_resourceusage_resourceusage_proto_depIdxs, + MessageInfos: file_third_party_proto_resourceusage_resourceusage_proto_msgTypes, + }.Build() + File_third_party_proto_resourceusage_resourceusage_proto = out.File + file_third_party_proto_resourceusage_resourceusage_proto_goTypes = nil + file_third_party_proto_resourceusage_resourceusage_proto_depIdxs = nil +} From 095e4cadccea156fb7ad4ba25141421c3eadabe1 Mon Sep 17 00:00:00 2001 From: Samuel Littley Date: Mon, 13 Jul 2026 08:53:32 +0100 Subject: [PATCH 3/3] Fix lint --- elan/rpc/compression_test.go | 5 ++--- elan/rpc/rpc.go | 8 ++++---- go.mod | 6 ++++-- go.sum | 11 +++++++++-- grpcutil/dial.go | 6 +++--- grpcutil/interceptors.go | 5 +++-- mettle/worker/download.go | 4 ++-- mettle/worker/worker.go | 4 ++-- zeal/main.go | 5 +++-- 9 files changed, 32 insertions(+), 22 deletions(-) diff --git a/elan/rpc/compression_test.go b/elan/rpc/compression_test.go index e3bf92b0..f0aaf5c8 100644 --- a/elan/rpc/compression_test.go +++ b/elan/rpc/compression_test.go @@ -4,7 +4,6 @@ import ( "bytes" "context" "io" - "io/ioutil" "os" "path" "testing" @@ -152,11 +151,11 @@ func testMain(m *testing.M) int { bsClient = bs.NewByteStreamClient(conn) defer conn.Close() - expectedData, err = ioutil.ReadFile(path.Join("elan/rpc/cas", hash[:2], hash)) + expectedData, err = os.ReadFile(path.Join("elan/rpc/cas", hash[:2], hash)) if err != nil { log.Fatalf("%s", err) } - compressedData, err = ioutil.ReadFile(path.Join("elan/rpc/zstd_cas", hash[:2], hash)) + compressedData, err = os.ReadFile(path.Join("elan/rpc/zstd_cas", hash[:2], hash)) if err != nil { log.Fatalf("%s", err) } diff --git a/elan/rpc/rpc.go b/elan/rpc/rpc.go index 7caefc07..0781bd11 100644 --- a/elan/rpc/rpc.go +++ b/elan/rpc/rpc.go @@ -16,6 +16,7 @@ import ( "os" "path" "regexp" + "slices" "strconv" "strings" "sync" @@ -39,7 +40,6 @@ import ( "github.com/sirupsen/logrus" "gocloud.dev/blob" "gocloud.dev/gcerrors" - "golang.org/x/exp/slices" "google.golang.org/api/googleapi" bs "google.golang.org/genproto/googleapis/bytestream" rpcstatus "google.golang.org/genproto/googleapis/rpc/status" @@ -557,7 +557,7 @@ func (s *server) readCompressed(ctx context.Context, prefix string, digest *pb.D return r, false, err } if s.isEmpty(digest) { - return ioutil.NopCloser(bytes.NewReader(nil)), compressed, nil + return io.NopCloser(bytes.NewReader(nil)), compressed, nil } if s.readRedis != nil && prefix == CASPrefix && digest.SizeBytes < s.largeBlobSize { // NOTE: we could use GETRANGE here, but given it's a bit more expensive on the redis @@ -566,7 +566,7 @@ func (s *server) readCompressed(ctx context.Context, prefix string, digest *pb.D if err != nil && err != redis.Nil { log.Warningf("Failed to get blob in Redis: %v", err) } else if err != redis.Nil && blob != nil && limit == 0 { - return ioutil.NopCloser(bytes.NewReader(nil)), false, nil + return io.NopCloser(bytes.NewReader(nil)), false, nil } else if err != redis.Nil && blob != nil && limit > 0 { return io.NopCloser(bytes.NewReader(blob[offset : offset+limit])), false, nil } else if err != redis.Nil && blob != nil && limit < 0 { @@ -641,7 +641,7 @@ func (s *server) SplitBlob(ctx context.Context, req *pb.SplitBlobRequest) (*pb.S func (s *server) readBlob(ctx context.Context, key string, offset, length int64) (io.ReadCloser, error) { if length == 0 || strings.Contains(key, digest.Empty.Hash) { // Special case any empty read request - return ioutil.NopCloser(bytes.NewReader(nil)), nil + return io.NopCloser(bytes.NewReader(nil)), nil } start := time.Now() defer func() { readLatencies.Observe(time.Since(start).Seconds()) }() diff --git a/go.mod b/go.mod index ef330f10..aa1f3fdc 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module github.com/thought-machine/please-servers -go 1.25.8 +go 1.26 ignore plz-out @@ -79,7 +79,9 @@ require ( github.com/gorilla/mux v1.8.1 // indirect github.com/hashicorp/errwrap v1.1.0 // indirect github.com/hashicorp/go-cleanhttp v0.5.2 // indirect + github.com/mostynb/zstdpool-syncpool v0.0.7 // indirect github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect + github.com/pborman/uuid v1.2.0 // indirect github.com/pkg/errors v0.9.1 // indirect github.com/pkg/xattr v0.4.12 // indirect github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10 // indirect @@ -108,4 +110,4 @@ require ( gopkg.in/yaml.v3 v3.0.1 // indirect ) -replace github.com/bazelbuild/remote-apis-sdks v0.0.0-20230419185642-269815af5db1 => github.com/peterebden/remote-apis-sdks v0.0.0-20230519151942-2a9420921957 +replace github.com/bazelbuild/remote-apis-sdks => github.com/peterebden/remote-apis-sdks v0.0.0-20230519151942-2a9420921957 diff --git a/go.sum b/go.sum index 8044d19d..b8fae64e 100644 --- a/go.sum +++ b/go.sum @@ -78,8 +78,6 @@ github.com/aws/smithy-go v1.26.0 h1:9ouqbi+NyKP7fV3Te7UElCwdAb6Y8uk7LGwPE5tVe/s= github.com/aws/smithy-go v1.26.0/go.mod h1:YE2RhdIuDbA5E5bTdciG9KrW3+TiEONeUWCqxX9i1Fc= github.com/bazelbuild/remote-apis v0.0.0-20260331222004-becdd8f9ff81 h1:vAHLeMHi+CywqDw5V/s5mHj1ahkhYMRtRFqWe18F0kc= github.com/bazelbuild/remote-apis v0.0.0-20260331222004-becdd8f9ff81/go.mod h1:7Tyi5f5+hG+6LwC0X/G/EjCQS4ZYJUcpY0geSsU2NAw= -github.com/bazelbuild/remote-apis-sdks v0.0.0-20260610142741-7ffd493e6686 h1:u0Z7+bxKIg71P2lDGhuCqIFqEjv73KwCbpPUyujHK1Y= -github.com/bazelbuild/remote-apis-sdks v0.0.0-20260610142741-7ffd493e6686/go.mod h1:TJlbnIaiJQr3pgZ+EBscj/bpu9wBawCHcqd+YAgumOs= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= @@ -143,6 +141,7 @@ github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5y github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek= github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps= +github.com/golang/snappy v0.0.3/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8= @@ -158,6 +157,7 @@ github.com/google/pprof v0.0.0-20260709232956-b9395ee17fa0 h1:du0WGc8xSKq/++e0cg github.com/google/pprof v0.0.0-20260709232956-b9395ee17fa0/go.mod h1:MxpfABSjhmINe3F1It9d+8exIHFvUqtLIRCdOGNXqiI= github.com/google/s2a-go v0.1.9 h1:LGD7gtMgezd8a/Xak7mEWL0PjoTQFvpRudN895yqKW0= github.com/google/s2a-go v0.1.9/go.mod h1:YA0Ei2ZQL3acow2O62kdp9UlnvMmU7kA6Eutn0dXayM= +github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/wire v0.7.0 h1:JxUKI6+CVBgCO2WToKy/nQk0sS+amI9z9EjVmdaocj4= @@ -188,6 +188,7 @@ github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJS github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= github.com/json-iterator/go v1.1.9/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= +github.com/klauspost/compress v1.12.3/go.mod h1:8dP1Hq4DHOhN9w426knH3Rhby4rFm6D8eO+e+Dq5Gzg= github.com/klauspost/compress v1.19.0 h1:sXLILfc9jV2QYWkzFOPWStmcUVH2RHEB1JCdY2oVvCQ= github.com/klauspost/compress v1.19.0/go.mod h1:cwPg85FWrGar70rWktvGQj8/hthj3wpl0PGDogxkrSQ= github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= @@ -212,6 +213,8 @@ github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lN github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/mostynb/go-grpc-compression v1.2.3 h1:42/BKWMy0KEJGSdWvzqIyOZ95YcR9mLPqKctH7Uo//I= github.com/mostynb/go-grpc-compression v1.2.3/go.mod h1:AghIxF3P57umzqM9yz795+y1Vjs47Km/Y2FE6ouQ7Lg= +github.com/mostynb/zstdpool-syncpool v0.0.7 h1:meYfUODlzmtOCrFmbJsUVEIt5rbmNUsz+Bu+Vnr95ls= +github.com/mostynb/zstdpool-syncpool v0.0.7/go.mod h1:YpzqIpN8xvRZZvemem7CMLPWkjuaKR37MnkQruSj6aw= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= @@ -221,6 +224,8 @@ github.com/onsi/ginkgo v1.16.5 h1:8xi0RTUf59SOSfEtZMvwTvXYMzG4gV23XVHOZiXNtnE= github.com/onsi/ginkgo v1.16.5/go.mod h1:+E8gABHa3K6zRBolWtd+ROzc/U5bkGt0FwiG042wbpU= github.com/onsi/gomega v1.18.1 h1:M1GfJqGRrBrrGGsbxzV5dqM2U2ApXefZCQpkukxYRLE= github.com/onsi/gomega v1.18.1/go.mod h1:0q+aL8jAiMXy9hbwj2mr5GziHiwhAIQpFmmtT5hitRs= +github.com/pborman/uuid v1.2.0 h1:J7Q5mO4ysT1dv8hyrUGHb9+ooztCXu1D8MY8DZYsu3g= +github.com/pborman/uuid v1.2.0/go.mod h1:X/NO0urCmaxf9VXbdlT7C2Yzkj2IKimNn4k+gtPdI/k= github.com/peterebden/go-cli-init v1.3.1-0.20200329085717-d04cad1849c3/go.mod h1:r5Y+QR+hIBbN/5wpBqyzlUFf5oB7RgMKw0FaXLJj0D0= github.com/peterebden/go-cli-init/v4 v4.0.2 h1:55ixVScQBS8LaND+C5h5/8x1B/OWYqlGhJvoNzzOzg0= github.com/peterebden/go-cli-init/v4 v4.0.2/go.mod h1:/IxPVIqMNfdW6QXCapCvM5S87yqWC0v2r0zV60pzp28= @@ -228,6 +233,8 @@ github.com/peterebden/go-copyfile v0.0.0-20200424115000-bc0baf74909c h1:nfjG02IJ github.com/peterebden/go-copyfile v0.0.0-20200424115000-bc0baf74909c/go.mod h1:HRIMlnGKKev+xk7cb/nfjbV0nuB2gcfTpRRRQBa6Tew= github.com/peterebden/go-sri v1.1.1 h1:KK8yZ5/NX8YzWUY9QvhrP220QsvEKANLLAgvw35AkyU= github.com/peterebden/go-sri v1.1.1/go.mod h1:KIRxtog35NfDWec5LV/iBqqfOEPcMpePZLc7EPE6goQ= +github.com/peterebden/remote-apis-sdks v0.0.0-20230519151942-2a9420921957 h1:0bVOFvzOMhUkJJKNqYvdQroaXWKqROy/cSIGVxeQbhI= +github.com/peterebden/remote-apis-sdks v0.0.0-20230519151942-2a9420921957/go.mod h1:fUQHOmdjqFNgE7CGmwwqcM0a4f/8/oy23iDvdvELExY= github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= diff --git a/grpcutil/dial.go b/grpcutil/dial.go index ec90a4ad..25bd0c32 100644 --- a/grpcutil/dial.go +++ b/grpcutil/dial.go @@ -4,7 +4,7 @@ import ( "context" "crypto/tls" "crypto/x509" - "io/ioutil" + "os" "strings" "time" @@ -61,7 +61,7 @@ func parseAddress(url string, tlsDefault bool) (string, bool) { // mustLoadCACert loads a CA cert from a file and dies on any errors. func mustLoadCACert(filename string) *x509.CertPool { - ca, err := ioutil.ReadFile(filename) + ca, err := os.ReadFile(filename) if err != nil { log.Fatalf("Failed to read CA cert from %s: %s", filename, err) } @@ -73,7 +73,7 @@ func mustLoadCACert(filename string) *x509.CertPool { } func mustLoadToken(tokenFile string) string { - contents, err := ioutil.ReadFile(tokenFile) + contents, err := os.ReadFile(tokenFile) if err != nil { log.Fatalf("Failed to read token file: %s", err) } diff --git a/grpcutil/interceptors.go b/grpcutil/interceptors.go index 32fe7171..122d7844 100644 --- a/grpcutil/interceptors.go +++ b/grpcutil/interceptors.go @@ -4,7 +4,8 @@ import ( "context" "fmt" "github.com/prometheus/client_golang/prometheus" - "io/ioutil" + "os" + "net" "strings" @@ -83,7 +84,7 @@ func unaryAuthInterceptor(opts Opts) []grpc.UnaryServerInterceptor { if opts.TokenFile == "" { return nil } - contents, err := ioutil.ReadFile(opts.TokenFile) + contents, err := os.ReadFile(opts.TokenFile) if err != nil { log.Fatalf("Failed to read token file: %s", err) } diff --git a/mettle/worker/download.go b/mettle/worker/download.go index 2d7567d5..53b6d9d2 100644 --- a/mettle/worker/download.go +++ b/mettle/worker/download.go @@ -7,7 +7,7 @@ import ( "encoding/hex" "fmt" "io" - "io/ioutil" + "os" "path" "strings" @@ -365,7 +365,7 @@ func (w *worker) linkAll(files []fileNode) error { func (w *worker) writeFiles(files []fileNode, data []byte, dg sdkdigest.Digest) error { w.iolimiter <- struct{}{} defer func() { <-w.iolimiter }() - if err := ioutil.WriteFile(files[0].Name, data, fileMode(files[0].IsExecutable)); err != nil { + if err := os.WriteFile(files[0].Name, data, fileMode(files[0].IsExecutable)); err != nil { return err } else if err := w.linkAll(files); err != nil { return err diff --git a/mettle/worker/worker.go b/mettle/worker/worker.go index 9719d4d9..038683da 100644 --- a/mettle/worker/worker.go +++ b/mettle/worker/worker.go @@ -369,7 +369,7 @@ func initialiseWorker(instanceName, requestQueue, responseQueue, name, storage, } // Load the version file if given if versionFile != "" { - if b, err := ioutil.ReadFile(versionFile); err != nil { + if b, err := os.ReadFile(versionFile); err != nil { log.Errorf("Failed to read version file: %s", err) } else { w.version = strings.TrimSpace(string(b)) @@ -712,7 +712,7 @@ func (w *worker) createTempDir() error { } } log.Warning("Failed to create work dir: %s. Falling back to temp dir", err) - dir, err = ioutil.TempDir(w.rootDir, "mettle_") + dir, err = os.MkdirTemp(w.rootDir, "mettle_") w.dir = dir return err } diff --git a/zeal/main.go b/zeal/main.go index adc73d4a..c00b3707 100644 --- a/zeal/main.go +++ b/zeal/main.go @@ -2,7 +2,8 @@ package main import ( - "io/ioutil" + "os" + "strings" "github.com/thought-machine/please-servers/cli" @@ -58,7 +59,7 @@ func main() { auth := make(map[string]string, len(opts.Auth)) for prefix, filename := range opts.Auth { - b, err := ioutil.ReadFile(filename) + b, err := os.ReadFile(filename) if err != nil { log.Fatalf("Failed to read auth token from %s: %s", filename, err) }