Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonas Wälter <jonas.waelter@noser.com>2021-07-19 12:39:25 +0300
committerZeger-Jan van de Weg <git@zjvandeweg.nl>2021-07-19 12:39:25 +0300
commitde87a43f03d13fabb9db6e4123562cf8dbfc6f36 (patch)
treecb9fa035fcfa53b9a25c5baabef9c5cb92dc1fd1
parentacd3f8e4903958d92ebece465453f2d14c22d177 (diff)
Add GetTagSignatures RPC
-rw-r--r--internal/git/catfile/tag.go24
-rw-r--r--internal/gitaly/service/ref/tag_signatures.go122
-rw-r--r--internal/gitaly/service/ref/tag_signatures_test.go181
-rw-r--r--internal/gitaly/service/ref/testdata/tag-1e292f8fedd741b75372e19097c76d327140c312-signature6
-rw-r--r--internal/gitaly/service/ref/testdata/tag-7975be0116940bf2ad4321f79d02a55c5f7779aa-signature101
-rw-r--r--proto/go/gitalypb/ref.pb.go802
-rw-r--r--proto/go/gitalypb/ref_grpc.pb.go77
-rw-r--r--proto/ref.proto41
-rw-r--r--ruby/proto/gitaly/ref_pb.rb15
-rw-r--r--ruby/proto/gitaly/ref_services_pb.rb5
10 files changed, 1088 insertions, 286 deletions
diff --git a/internal/git/catfile/tag.go b/internal/git/catfile/tag.go
index 1a773510e..b0ac68d51 100644
--- a/internal/git/catfile/tag.go
+++ b/internal/git/catfile/tag.go
@@ -38,6 +38,19 @@ func GetTag(ctx context.Context, c Batch, tagID git.Revision, tagName string, tr
return tag, nil
}
+// ExtractTagSignature extracts the signature from a content and returns both the signature
+// and the remaining content. If no signature is found, nil as the signature and the entire
+// content are returned. note: tags contain the signature block at the end of the message
+// https://github.com/git/git/blob/master/Documentation/technical/signature-format.txt#L12
+func ExtractTagSignature(content []byte) ([]byte, []byte) {
+ index := bytes.Index(content, []byte("-----BEGIN"))
+
+ if index > 0 {
+ return bytes.TrimSuffix(content[index:], []byte("\n")), content[:index]
+ }
+ return nil, content
+}
+
type tagHeader struct {
oid string
tagType string
@@ -116,15 +129,12 @@ func parseTag(r io.Reader, oid git.ObjectID, name []byte, trimLen, trimRightNewL
tag.Message = tag.Message[:max]
}
- // tags contain the signature block in the message:
- // https://github.com/git/git/blob/master/Documentation/technical/signature-format.txt#L12
- index := bytes.Index(body, []byte("-----BEGIN"))
-
- if index > 0 {
- length := bytes.Index(body[index:], []byte("\n"))
+ signature, _ := ExtractTagSignature(body)
+ if signature != nil {
+ length := bytes.Index(signature, []byte("\n"))
if length > 0 {
- signature := string(body[index : length+index])
+ signature := string(signature[:length])
tag.SignatureType = detectSignatureType(signature)
}
}
diff --git a/internal/gitaly/service/ref/tag_signatures.go b/internal/gitaly/service/ref/tag_signatures.go
new file mode 100644
index 000000000..8a3e80c54
--- /dev/null
+++ b/internal/gitaly/service/ref/tag_signatures.go
@@ -0,0 +1,122 @@
+package ref
+
+import (
+ "errors"
+ "fmt"
+ "io/ioutil"
+ "strings"
+
+ "github.com/golang/protobuf/proto"
+ "gitlab.com/gitlab-org/gitaly/v14/internal/git"
+ "gitlab.com/gitlab-org/gitaly/v14/internal/git/catfile"
+ "gitlab.com/gitlab-org/gitaly/v14/internal/git/gitpipe"
+ "gitlab.com/gitlab-org/gitaly/v14/internal/helper"
+ "gitlab.com/gitlab-org/gitaly/v14/internal/helper/chunk"
+ "gitlab.com/gitlab-org/gitaly/v14/proto/go/gitalypb"
+)
+
+func verifyGetTagSignaturesRequest(req *gitalypb.GetTagSignaturesRequest) error {
+ if req.GetRepository() == nil {
+ return errors.New("empty repository")
+ }
+
+ if len(req.GetTagRevisions()) == 0 {
+ return errors.New("missing revisions")
+ }
+
+ for _, revision := range req.GetTagRevisions() {
+ if strings.HasPrefix(revision, "-") && revision != "--all" && revision != "--not" {
+ return fmt.Errorf("invalid revision: %q", revision)
+ }
+ }
+ return nil
+}
+
+func (s *server) GetTagSignatures(req *gitalypb.GetTagSignaturesRequest, stream gitalypb.RefService_GetTagSignaturesServer) error {
+ if err := verifyGetTagSignaturesRequest(req); err != nil {
+ return helper.ErrInvalidArgument(err)
+ }
+
+ ctx := stream.Context()
+ repo := s.localrepo(req.GetRepository())
+
+ catfileProcess, err := s.catfileCache.BatchProcess(ctx, repo)
+ if err != nil {
+ return helper.ErrInternal(fmt.Errorf("creating catfile process: %w", err))
+ }
+
+ chunker := chunk.New(&tagSignatureSender{
+ send: func(signatures []*gitalypb.GetTagSignaturesResponse_TagSignature) error {
+ return stream.Send(&gitalypb.GetTagSignaturesResponse{
+ Signatures: signatures,
+ })
+ },
+ })
+
+ gitVersion, err := git.CurrentVersion(ctx, s.gitCmdFactory)
+ if err != nil {
+ return helper.ErrInternalf("cannot determine Git version: %v", err)
+ }
+
+ revlistOptions := []gitpipe.RevlistOption{
+ gitpipe.WithObjects(),
+ }
+
+ if gitVersion.SupportsObjectTypeFilter() {
+ revlistOptions = append(revlistOptions, gitpipe.WithObjectTypeFilter(gitpipe.ObjectTypeTag))
+ }
+
+ revlistIter := gitpipe.Revlist(ctx, repo, req.GetTagRevisions(), revlistOptions...)
+ catfileInfoIter := gitpipe.CatfileInfo(ctx, catfileProcess, revlistIter)
+ catfileInfoIter = gitpipe.CatfileInfoFilter(ctx, catfileInfoIter, func(r gitpipe.CatfileInfoResult) bool {
+ return r.ObjectInfo.Type == "tag"
+ })
+
+ catfileObjectIter := gitpipe.CatfileObject(ctx, catfileProcess, catfileInfoIter)
+
+ for catfileObjectIter.Next() {
+ tag := catfileObjectIter.Result()
+
+ raw, err := ioutil.ReadAll(tag.ObjectReader)
+ if err != nil {
+ return helper.ErrInternal(err)
+ }
+
+ signatureKey, tagText := catfile.ExtractTagSignature(raw)
+
+ if err := chunker.Send(&gitalypb.GetTagSignaturesResponse_TagSignature{
+ TagId: tag.ObjectInfo.Oid.String(),
+ Signature: signatureKey,
+ Content: tagText,
+ }); err != nil {
+ return helper.ErrInternal(fmt.Errorf("sending tag signature chunk: %w", err))
+ }
+ }
+
+ if err := catfileObjectIter.Err(); err != nil {
+ return helper.ErrInternal(err)
+ }
+
+ if err := chunker.Flush(); err != nil {
+ return helper.ErrInternal(err)
+ }
+
+ return nil
+}
+
+type tagSignatureSender struct {
+ signatures []*gitalypb.GetTagSignaturesResponse_TagSignature
+ send func([]*gitalypb.GetTagSignaturesResponse_TagSignature) error
+}
+
+func (t *tagSignatureSender) Reset() {
+ t.signatures = t.signatures[:0]
+}
+
+func (t *tagSignatureSender) Append(m proto.Message) {
+ t.signatures = append(t.signatures, m.(*gitalypb.GetTagSignaturesResponse_TagSignature))
+}
+
+func (t *tagSignatureSender) Send() error {
+ return t.send(t.signatures)
+}
diff --git a/internal/gitaly/service/ref/tag_signatures_test.go b/internal/gitaly/service/ref/tag_signatures_test.go
new file mode 100644
index 000000000..6eee14723
--- /dev/null
+++ b/internal/gitaly/service/ref/tag_signatures_test.go
@@ -0,0 +1,181 @@
+package ref
+
+import (
+ "errors"
+ "io"
+ "strings"
+ "testing"
+
+ "github.com/stretchr/testify/require"
+ "gitlab.com/gitlab-org/gitaly/v14/internal/git/gittest"
+ "gitlab.com/gitlab-org/gitaly/v14/internal/helper"
+ "gitlab.com/gitlab-org/gitaly/v14/internal/testhelper"
+ "gitlab.com/gitlab-org/gitaly/v14/internal/testhelper/testassert"
+ "gitlab.com/gitlab-org/gitaly/v14/proto/go/gitalypb"
+ "google.golang.org/grpc/codes"
+ "google.golang.org/grpc/status"
+)
+
+func TestGetTagSignatures(t *testing.T) {
+ ctx, cancel := testhelper.Context()
+ defer cancel()
+
+ cfg, repoProto, repoPath, client := setupRefService(t)
+
+ message1 := strings.Repeat("a", helper.MaxCommitOrTagMessageSize) + "\n"
+ signature1 := string(testhelper.MustReadFile(t, "testdata/tag-1e292f8fedd741b75372e19097c76d327140c312-signature"))
+ tag1ID := gittest.CreateTag(t, cfg, repoPath, "big-tag-1", "master", &gittest.CreateTagOpts{Message: message1 + signature1})
+ content1 := "object 1e292f8fedd741b75372e19097c76d327140c312\ntype commit\ntag big-tag-1\ntagger Scrooge McDuck <scrooge@mcduck.com> 1572776879 +0100\n\n" + message1
+
+ message2 := strings.Repeat("b", helper.MaxCommitOrTagMessageSize) + "\n"
+ signature2 := string(testhelper.MustReadFile(t, "testdata/tag-7975be0116940bf2ad4321f79d02a55c5f7779aa-signature"))
+ tag2ID := gittest.CreateTag(t, cfg, repoPath, "big-tag-2", "master~", &gittest.CreateTagOpts{Message: message2 + signature2})
+ content2 := "object 7975be0116940bf2ad4321f79d02a55c5f7779aa\ntype commit\ntag big-tag-2\ntagger Scrooge McDuck <scrooge@mcduck.com> 1572776879 +0100\n\n" + message2
+
+ message3 := "tag message\n"
+ tag3ID := gittest.CreateTag(t, cfg, repoPath, "tag-3", "master~~", &gittest.CreateTagOpts{Message: message3})
+ content3 := "object 60ecb67744cb56576c30214ff52294f8ce2def98\ntype commit\ntag tag-3\ntagger Scrooge McDuck <scrooge@mcduck.com> 1572776879 +0100\n\n" + message3
+
+ for _, tc := range []struct {
+ desc string
+ revisions []string
+ expectedErr error
+ expectedSignatures []*gitalypb.GetTagSignaturesResponse_TagSignature
+ }{
+ {
+ desc: "missing revisions",
+ revisions: []string{},
+ expectedErr: status.Error(codes.InvalidArgument, "missing revisions"),
+ },
+ {
+ desc: "invalid revision",
+ revisions: []string{
+ "--foobar",
+ },
+ expectedErr: status.Error(codes.InvalidArgument, "invalid revision: \"--foobar\""),
+ },
+ {
+ desc: "unknown id",
+ revisions: []string{
+ "b10ff336f3fbfb131431c4959915cdfd1b49c635",
+ },
+ expectedErr: status.Error(codes.Internal, "rev-list pipeline command: exit status 128"),
+ },
+ {
+ desc: "commit id",
+ revisions: []string{
+ "1e292f8fedd741b75372e19097c76d327140c312",
+ },
+ expectedSignatures: nil,
+ },
+ {
+ desc: "commit ref",
+ revisions: []string{
+ "refs/heads/master",
+ },
+ expectedSignatures: nil,
+ },
+ {
+ desc: "single tag signature",
+ revisions: []string{
+ tag1ID,
+ },
+ expectedSignatures: []*gitalypb.GetTagSignaturesResponse_TagSignature{
+ {
+ TagId: tag1ID,
+ Signature: []byte(signature1),
+ Content: []byte(content1),
+ },
+ },
+ },
+ {
+ desc: "single tag signature by short SHA",
+ revisions: []string{
+ tag1ID[:7],
+ },
+ expectedSignatures: []*gitalypb.GetTagSignaturesResponse_TagSignature{
+ {
+ TagId: tag1ID,
+ Signature: []byte(signature1),
+ Content: []byte(content1),
+ },
+ },
+ },
+ {
+ desc: "single tag signature by ref",
+ revisions: []string{
+ "refs/tags/big-tag-1",
+ },
+ expectedSignatures: []*gitalypb.GetTagSignaturesResponse_TagSignature{
+ {
+ TagId: tag1ID,
+ Signature: []byte(signature1),
+ Content: []byte(content1),
+ },
+ },
+ },
+ {
+ desc: "multiple tag signatures",
+ revisions: []string{
+ tag1ID,
+ tag2ID,
+ },
+ expectedSignatures: []*gitalypb.GetTagSignaturesResponse_TagSignature{
+ {
+ TagId: tag1ID,
+ Signature: []byte(signature1),
+ Content: []byte(content1),
+ },
+ {
+ TagId: tag2ID,
+ Signature: []byte(signature2),
+ Content: []byte(content2),
+ },
+ },
+ },
+ {
+ desc: "tag without signature",
+ revisions: []string{
+ tag3ID,
+ },
+ expectedSignatures: []*gitalypb.GetTagSignaturesResponse_TagSignature{
+ {
+ TagId: tag3ID,
+ Signature: []byte(""),
+ Content: []byte(content3),
+ },
+ },
+ },
+ {
+ desc: "pseudorevisions",
+ revisions: []string{
+ "--not",
+ "--all",
+ },
+ expectedSignatures: nil,
+ },
+ } {
+ t.Run(tc.desc, func(t *testing.T) {
+ stream, err := client.GetTagSignatures(ctx, &gitalypb.GetTagSignaturesRequest{
+ Repository: repoProto,
+ TagRevisions: tc.revisions,
+ })
+ require.NoError(t, err)
+
+ var signatures []*gitalypb.GetTagSignaturesResponse_TagSignature
+ for {
+ resp, err := stream.Recv()
+ if err != nil {
+ if !errors.Is(err, io.EOF) {
+ testassert.GrpcEqualErr(t, tc.expectedErr, err)
+ }
+ break
+ }
+
+ signatures = append(signatures, resp.Signatures...)
+ }
+
+ testassert.ProtoEqual(t, tc.expectedSignatures, signatures)
+ })
+ }
+}
diff --git a/internal/gitaly/service/ref/testdata/tag-1e292f8fedd741b75372e19097c76d327140c312-signature b/internal/gitaly/service/ref/testdata/tag-1e292f8fedd741b75372e19097c76d327140c312-signature
new file mode 100644
index 000000000..185345505
--- /dev/null
+++ b/internal/gitaly/service/ref/testdata/tag-1e292f8fedd741b75372e19097c76d327140c312-signature
@@ -0,0 +1,6 @@
+-----BEGIN PGP SIGNATURE-----
+iJwEAAEIAAYFAlmmbf0ACgkQv52SX5Ee/WVv1gP/WrjclOc3CYiTrTgNuxs/vyXl
+PtUrxbOYEpQtRV+id/agJgaJWKoHRYUoXSGBuykijsND43PMkrjfZiF2SbE0j0CS
+7oukSx83us+y/hn+ecZQG0OkrBZ2vQ9gHGbEN9RFyZXfgWtRcgqFnFZUxCznhzzk
+njAjb08aUpn9r8WHsdU=\n=HLte
+-----END PGP SIGNATURE----- \ No newline at end of file
diff --git a/internal/gitaly/service/ref/testdata/tag-7975be0116940bf2ad4321f79d02a55c5f7779aa-signature b/internal/gitaly/service/ref/testdata/tag-7975be0116940bf2ad4321f79d02a55c5f7779aa-signature
new file mode 100644
index 000000000..bbdfc7bf6
--- /dev/null
+++ b/internal/gitaly/service/ref/testdata/tag-7975be0116940bf2ad4321f79d02a55c5f7779aa-signature
@@ -0,0 +1,101 @@
+-----BEGIN SIGNED MESSAGE-----
+MIISfwYJKoZIhvcNAQcCoIIScDCCEmwCAQExDTALBglghkgBZQMEAgEwCwYJKoZI
+hvcNAQcBoIIP8zCCB3QwggVcoAMCAQICBBXXLOIwDQYJKoZIhvcNAQELBQAwgbYx
+CzAJBgNVBAYTAkRFMQ8wDQYDVQQIDAZCYXllcm4xETAPBgNVBAcMCE11ZW5jaGVu
+MRAwDgYDVQQKDAdTaWVtZW5zMREwDwYDVQQFEwhaWlpaWlpBNjEdMBsGA1UECwwU
+U2llbWVucyBUcnVzdCBDZW50ZXIxPzA9BgNVBAMMNlNpZW1lbnMgSXNzdWluZyBD
+QSBNZWRpdW0gU3RyZW5ndGggQXV0aGVudGljYXRpb24gMjAxNjAeFw0xNzAyMDMw
+NjU4MzNaFw0yMDAyMDMwNjU4MzNaMFsxETAPBgNVBAUTCFowMDBOV0RIMQ4wDAYD
+VQQqDAVSb2dlcjEOMAwGA1UEBAwFTWVpZXIxEDAOBgNVBAoMB1NpZW1lbnMxFDAS
+BgNVBAMMC01laWVyIFJvZ2VyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
+AQEAuBNea/68ZCnHYQjpm/k3ZBG0wBpEKSwG6lk9CEQlSxsqVLQHAoAKBIlJm1in
+YVLcK/Sq1yhYJ/qWcY/M53DhK2rpPuhtrWJUdOUy8EBWO20F4bd4Fw9pO7jt8bme
+u33TSrK772vKjuppzB6SeG13Cs08H+BIeD106G27h7ufsO00pvsxoSDL+uc4slnr
+pBL+2TAL7nSFnB9QHWmRIK27SPqJE+lESdb0pse11x1wjvqKy2Q7EjL9fpqJdHzX
+NLKHXd2r024TOORTa05DFTNR+kQEKKV96XfpYdtSBomXNQ44cisiPBJjFtYvfnFE
+wgrHa8fogn/b0C+A+HAoICN12wIDAQABo4IC4jCCAt4wHQYDVR0OBBYEFCF+gkUp
+XQ6xGc0kRWXuDFxzA14zMEMGA1UdEQQ8MDqgIwYKKwYBBAGCNxQCA6AVDBNyLm1l
+aWVyQHNpZW1lbnMuY29tgRNyLm1laWVyQHNpZW1lbnMuY29tMA4GA1UdDwEB/wQE
+AwIHgDAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwQwgcoGA1UdHwSBwjCB
+vzCBvKCBuaCBtoYmaHR0cDovL2NoLnNpZW1lbnMuY29tL3BraT9aWlpaWlpBNi5j
+cmyGQWxkYXA6Ly9jbC5zaWVtZW5zLm5ldC9DTj1aWlpaWlpBNixMPVBLST9jZXJ0
+aWZpY2F0ZVJldm9jYXRpb25MaXN0hklsZGFwOi8vY2wuc2llbWVucy5jb20vQ049
+WlpaWlpaQTYsbz1UcnVzdGNlbnRlcj9jZXJ0aWZpY2F0ZVJldm9jYXRpb25MaXN0
+MEUGA1UdIAQ+MDwwOgYNKwYBBAGhaQcCAgMBAzApMCcGCCsGAQUFBwIBFhtodHRw
+Oi8vd3d3LnNpZW1lbnMuY29tL3BraS8wDAYDVR0TAQH/BAIwADAfBgNVHSMEGDAW
+gBT4FV1HDGx3e3LEAheRaKK292oJRDCCAQQGCCsGAQUFBwEBBIH3MIH0MDIGCCsG
+AQUFBzAChiZodHRwOi8vYWguc2llbWVucy5jb20vcGtpP1paWlpaWkE2LmNydDBB
+BggrBgEFBQcwAoY1bGRhcDovL2FsLnNpZW1lbnMubmV0L0NOPVpaWlpaWkE2LEw9
+UEtJP2NBQ2VydGlmaWNhdGUwSQYIKwYBBQUHMAKGPWxkYXA6Ly9hbC5zaWVtZW5z
+LmNvbS9DTj1aWlpaWlpBNixvPVRydXN0Y2VudGVyP2NBQ2VydGlmaWNhdGUwMAYI
+KwYBBQUHMAGGJGh0dHA6Ly9vY3NwLnBraS1zZXJ2aWNlcy5zaWVtZW5zLmNvbTAN
+BgkqhkiG9w0BAQsFAAOCAgEAXPVcX6vaEcszJqg5IemF9aFTlwTrX5ITNIpzcqG+
+kD5haOf2mZYLjl+MKtLC1XfmIsGCUZNb8bjP6QHQEI+2d6x/ZOqPq7Kd7PwVu6x6
+xZrkDjUyhUbUntT5+RBy++l3Wf6Cq6Kx+K8ambHBP/bu90/p2U8KfFAG3Kr2gI2q
+fZrnNMOxmJfZ3/sXxssgLkhbZ7hRa+MpLfQ6uFsSiat3vlawBBvTyHnoZ/7oRc8y
+qi6QzWcd76CPpMElYWibl+hJzKbBZUWvc71AzHR6i1QeZ6wubYz7vr+FF5Y7tnxB
+Vz6omPC9XAg0F+Dla6Zlz3Awj5imCzVXa+9SjtnsidmJdLcKzTAKyDewewoxYOOJ
+j3cJU7VSjJPl+2fVmDBaQwcNcUcu/TPAKApkegqO7tRF9IPhjhW8QkRnkqMetO3D
+OXmAFVIsEI0Hvb2cdb7B6jSpjGUuhaFm9TCKhQtCk2p8JCDTuaENLm1x34rrJKbT
+2vzyYN0CZtSkUdgD4yQxK9VWXGEzexRisWb4AnZjD2NAquLPpXmw8N0UwFD7MSpC
+dpaX7FktdvZmMXsnGiAdtLSbBgLVWOD1gmJFDjrhNbI8NOaOaNk4jrfGqNh5lhGU
+4DnBT2U6Cie1anLmFH/oZooAEXR2o3Nu+1mNDJChnJp0ovs08aa3zZvBdcloOvfU
+qdowggh3MIIGX6ADAgECAgQtyi/nMA0GCSqGSIb3DQEBCwUAMIGZMQswCQYDVQQG
+EwJERTEPMA0GA1UECAwGQmF5ZXJuMREwDwYDVQQHDAhNdWVuY2hlbjEQMA4GA1UE
+CgwHU2llbWVuczERMA8GA1UEBRMIWlpaWlpaQTExHTAbBgNVBAsMFFNpZW1lbnMg
+VHJ1c3QgQ2VudGVyMSIwIAYDVQQDDBlTaWVtZW5zIFJvb3QgQ0EgVjMuMCAyMDE2
+MB4XDTE2MDcyMDEzNDYxMFoXDTIyMDcyMDEzNDYxMFowgbYxCzAJBgNVBAYTAkRF
+MQ8wDQYDVQQIDAZCYXllcm4xETAPBgNVBAcMCE11ZW5jaGVuMRAwDgYDVQQKDAdT
+aWVtZW5zMREwDwYDVQQFEwhaWlpaWlpBNjEdMBsGA1UECwwUU2llbWVucyBUcnVz
+dCBDZW50ZXIxPzA9BgNVBAMMNlNpZW1lbnMgSXNzdWluZyBDQSBNZWRpdW0gU3Ry
+ZW5ndGggQXV0aGVudGljYXRpb24gMjAxNjCCAiIwDQYJKoZIhvcNAQEBBQADggIP
+ADCCAgoCggIBAL9UfK+JAZEqVMVvECdYF9IK4KSw34AqyNl3rYP5x03dtmKaNu+2
+0fQqNESA1NGzw3s6LmrKLh1cR991nB2cvKOXu7AvEGpSuxzIcOROd4NpvRx+Ej1p
+JIPeqf+ScmVK7lMSO8QL/QzjHOpGV3is9sG+ZIxOW9U1ESooy4Hal6ZNs4DNItsz
+piCKqm6G3et4r2WqCy2RRuSqvnmMza7Y8BZsLy0ZVo5teObQ37E/FxqSrbDI8nxn
+B7nVUve5ZjrqoIGSkEOtyo11003dVO1vmWB9A0WQGDqE/q3w178hGhKfxzRaqzyi
+SoADUYS2sD/CglGTUxVq6u0pGLLsCFjItcCWqW+T9fPYfJ2CEd5b3hvqdCn+pXjZ
+/gdX1XAcdUF5lRnGWifaYpT9n4s4adzX8q6oHSJxTppuAwLRKH6eXALbGQ1I9lGQ
+DSOipD/09xkEsPw6HOepmf2U3YxZK1VU2sHqugFJboeLcHMzp6E1n2ctlNG1GKE9
+FDHmdyFzDi0Nnxtf/GgVjnHF68hByEE1MYdJ4nJLuxoT9hyjYdRW9MpeNNxxZnmz
+W3zh7QxIqP0ZfIz6XVhzrI9uZiqwwojDiM5tEOUkQ7XyW6grNXe75yt6mTj89LlB
+H5fOW2RNmCy/jzBXDjgyskgK7kuCvUYTuRv8ITXbBY5axFA+CpxZqokpAgMBAAGj
+ggKmMIICojCCAQUGCCsGAQUFBwEBBIH4MIH1MEEGCCsGAQUFBzAChjVsZGFwOi8v
+YWwuc2llbWVucy5uZXQvQ049WlpaWlpaQTEsTD1QS0k/Y0FDZXJ0aWZpY2F0ZTAy
+BggrBgEFBQcwAoYmaHR0cDovL2FoLnNpZW1lbnMuY29tL3BraT9aWlpaWlpBMS5j
+cnQwSgYIKwYBBQUHMAKGPmxkYXA6Ly9hbC5zaWVtZW5zLmNvbS91aWQ9WlpaWlpa
+QTEsbz1UcnVzdGNlbnRlcj9jQUNlcnRpZmljYXRlMDAGCCsGAQUFBzABhiRodHRw
+Oi8vb2NzcC5wa2ktc2VydmljZXMuc2llbWVucy5jb20wHwYDVR0jBBgwFoAUcG2g
+UOyp0CxnnRkV/v0EczXD4tQwEgYDVR0TAQH/BAgwBgEB/wIBADBABgNVHSAEOTA3
+MDUGCCsGAQQBoWkHMCkwJwYIKwYBBQUHAgEWG2h0dHA6Ly93d3cuc2llbWVucy5j
+b20vcGtpLzCBxwYDVR0fBIG/MIG8MIG5oIG2oIGzhj9sZGFwOi8vY2wuc2llbWVu
+cy5uZXQvQ049WlpaWlpaQTEsTD1QS0k/YXV0aG9yaXR5UmV2b2NhdGlvbkxpc3SG
+Jmh0dHA6Ly9jaC5zaWVtZW5zLmNvbS9wa2k/WlpaWlpaQTEuY3JshkhsZGFwOi8v
+Y2wuc2llbWVucy5jb20vdWlkPVpaWlpaWkExLG89VHJ1c3RjZW50ZXI/YXV0aG9y
+aXR5UmV2b2NhdGlvbkxpc3QwJwYDVR0lBCAwHgYIKwYBBQUHAwIGCCsGAQUFBwME
+BggrBgEFBQcDCTAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFPgVXUcMbHd7csQC
+F5Foorb3aglEMA0GCSqGSIb3DQEBCwUAA4ICAQBw+sqMp3SS7DVKcILEmXbdRAg3
+lLO1r457KY+YgCT9uX4VG5EdRKcGfWXK6VHGCi4Dos5eXFV34Mq/p8nu1sqMuoGP
+YjHn604eWDprhGy6GrTYdxzcE/GGHkpkuE3Ir/45UcmZlOU41SJ9SNjuIVrSHMOf
+ccSY42BCspR/Q1Z/ykmIqQecdT3/Kkx02GzzSN2+HlW6cEO4GBW5RMqsvd2n0h2d
+fe2zcqOgkLtx7u2JCR/U77zfyxG3qXtcymoz0wgSHcsKIl+GUjITLkHfS9Op8V7C
+Gr/dX437sIg5pVHmEAWadjkIzqdHux+EF94Z6kaHywohc1xG0KvPYPX7iSNjkvhz
+4NY53DHmxl4YEMLffZnaS/dqyhe1GTpcpyN8WiR4KuPfxrkVDOsuzWFtMSvNdlOV
+gdI0MXcLMP+EOeANZWX6lGgJ3vWyemo58nzgshKd24MY3w3i6masUkxJH2KvI7UH
+/1Db3SC8oOUjInvSRej6M3ZhYWgugm6gbpUgFoDw/o9Cg6Qm71hY0JtcaPC13rzm
+N8a2Br0+Fa5e2VhwLmAxyfe1JKzqPwuHT0S5u05SQghL5VdzqfA8FCL/j4XC9yI6
+csZTAQi73xFQYVjZt3+aoSz84lOlTmVo/jgvGMY/JzH9I4mETGgAJRNj34Z/0meh
+M+pKWCojNH/dgyJSwDGCAlIwggJOAgEBMIG/MIG2MQswCQYDVQQGEwJERTEPMA0G
+A1UECAwGQmF5ZXJuMREwDwYDVQQHDAhNdWVuY2hlbjEQMA4GA1UECgwHU2llbWVu
+czERMA8GA1UEBRMIWlpaWlpaQTYxHTAbBgNVBAsMFFNpZW1lbnMgVHJ1c3QgQ2Vu
+dGVyMT8wPQYDVQQDDDZTaWVtZW5zIElzc3VpbmcgQ0EgTWVkaXVtIFN0cmVuZ3Ro
+IEF1dGhlbnRpY2F0aW9uIDIwMTYCBBXXLOIwCwYJYIZIAWUDBAIBoGkwHAYJKoZI
+hvcNAQkFMQ8XDTE5MTEyMDE0NTYyMFowLwYJKoZIhvcNAQkEMSIEIJDnZUpcVLzC
+OdtpkH8gtxwLPIDE0NmAmFC9uM8q2z+OMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0B
+BwEwCwYJKoZIhvcNAQEBBIIBAH/Pqv2xp3a0jSPkwU1K3eGA/1lfoNJMUny4d/PS
+LVWlkgrmedXdLmuBzAGEaaZOJS0lEpNd01pR/reHs7xxZ+RZ0olTs2ufM0CijQSx
+OL9HDl2O3OoD77NWx4tl3Wy1yJCeV3XH/cEI7AkKHCmKY9QMoMYWh16ORBtr+YcS
+YK+gONOjpjgcgTJgZ3HSFgQ50xiD4WT1kFBHsuYsLqaOSbTfTN6Ayyg4edjrPQqa
+VcVf1OQcIrfWA3yMQrnEZfOYfN/D4EPjTfxBV+VCi/F2bdZmMbJ7jNk1FbewSwWO
+SDH1i0K32NyFbnh0BSos7njq7ELqKlYBsoB/sZfaH2vKy5U=
+-----END SIGNED MESSAGE----- \ No newline at end of file
diff --git a/proto/go/gitalypb/ref.pb.go b/proto/go/gitalypb/ref.pb.go
index 4e41f2a68..7fe3ddb7b 100644
--- a/proto/go/gitalypb/ref.pb.go
+++ b/proto/go/gitalypb/ref.pb.go
@@ -1965,6 +1965,117 @@ func (x *ListTagNamesContainingCommitResponse) GetTagNames() [][]byte {
return nil
}
+// GetTagSignaturesRequest is a request for the GetTagSignatures RPC.
+type GetTagSignaturesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Repository is the repository in which tag signatures should be looked up.
+ Repository *Repository `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"`
+ // TagRevisions is the set of revisions which that should be looked up. Revisions
+ // supports the syntax as specified by gitrevisions(7). All revisions are expected
+ // to resolve to annotated tag objects. At least one revision must be provided.
+ TagRevisions []string `protobuf:"bytes,2,rep,name=tag_revisions,json=tagRevisions,proto3" json:"tag_revisions,omitempty"`
+}
+
+func (x *GetTagSignaturesRequest) Reset() {
+ *x = GetTagSignaturesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_ref_proto_msgTypes[34]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetTagSignaturesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetTagSignaturesRequest) ProtoMessage() {}
+
+func (x *GetTagSignaturesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_ref_proto_msgTypes[34]
+ 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 GetTagSignaturesRequest.ProtoReflect.Descriptor instead.
+func (*GetTagSignaturesRequest) Descriptor() ([]byte, []int) {
+ return file_ref_proto_rawDescGZIP(), []int{34}
+}
+
+func (x *GetTagSignaturesRequest) GetRepository() *Repository {
+ if x != nil {
+ return x.Repository
+ }
+ return nil
+}
+
+func (x *GetTagSignaturesRequest) GetTagRevisions() []string {
+ if x != nil {
+ return x.TagRevisions
+ }
+ return nil
+}
+
+// GetTagSignaturesResponse is a response for a GetTagSignatures request. Each response
+// may contain multiple TagSignatures. In case TagSignatures don't fit into a single
+// response, signatures will be batched in multiple responses.
+type GetTagSignaturesResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Signatures is the set of signatures found.
+ Signatures []*GetTagSignaturesResponse_TagSignature `protobuf:"bytes,1,rep,name=signatures,proto3" json:"signatures,omitempty"`
+}
+
+func (x *GetTagSignaturesResponse) Reset() {
+ *x = GetTagSignaturesResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_ref_proto_msgTypes[35]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetTagSignaturesResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetTagSignaturesResponse) ProtoMessage() {}
+
+func (x *GetTagSignaturesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_ref_proto_msgTypes[35]
+ 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 GetTagSignaturesResponse.ProtoReflect.Descriptor instead.
+func (*GetTagSignaturesResponse) Descriptor() ([]byte, []int) {
+ return file_ref_proto_rawDescGZIP(), []int{35}
+}
+
+func (x *GetTagSignaturesResponse) GetSignatures() []*GetTagSignaturesResponse_TagSignature {
+ if x != nil {
+ return x.Signatures
+ }
+ return nil
+}
+
type GetTagMessagesRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -1977,7 +2088,7 @@ type GetTagMessagesRequest struct {
func (x *GetTagMessagesRequest) Reset() {
*x = GetTagMessagesRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_ref_proto_msgTypes[34]
+ mi := &file_ref_proto_msgTypes[36]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1990,7 +2101,7 @@ func (x *GetTagMessagesRequest) String() string {
func (*GetTagMessagesRequest) ProtoMessage() {}
func (x *GetTagMessagesRequest) ProtoReflect() protoreflect.Message {
- mi := &file_ref_proto_msgTypes[34]
+ mi := &file_ref_proto_msgTypes[36]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2003,7 +2114,7 @@ func (x *GetTagMessagesRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use GetTagMessagesRequest.ProtoReflect.Descriptor instead.
func (*GetTagMessagesRequest) Descriptor() ([]byte, []int) {
- return file_ref_proto_rawDescGZIP(), []int{34}
+ return file_ref_proto_rawDescGZIP(), []int{36}
}
func (x *GetTagMessagesRequest) GetRepository() *Repository {
@@ -2033,7 +2144,7 @@ type GetTagMessagesResponse struct {
func (x *GetTagMessagesResponse) Reset() {
*x = GetTagMessagesResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_ref_proto_msgTypes[35]
+ mi := &file_ref_proto_msgTypes[37]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2046,7 +2157,7 @@ func (x *GetTagMessagesResponse) String() string {
func (*GetTagMessagesResponse) ProtoMessage() {}
func (x *GetTagMessagesResponse) ProtoReflect() protoreflect.Message {
- mi := &file_ref_proto_msgTypes[35]
+ mi := &file_ref_proto_msgTypes[37]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2059,7 +2170,7 @@ func (x *GetTagMessagesResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use GetTagMessagesResponse.ProtoReflect.Descriptor instead.
func (*GetTagMessagesResponse) Descriptor() ([]byte, []int) {
- return file_ref_proto_rawDescGZIP(), []int{35}
+ return file_ref_proto_rawDescGZIP(), []int{37}
}
func (x *GetTagMessagesResponse) GetMessage() []byte {
@@ -2088,7 +2199,7 @@ type ListNewCommitsRequest struct {
func (x *ListNewCommitsRequest) Reset() {
*x = ListNewCommitsRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_ref_proto_msgTypes[36]
+ mi := &file_ref_proto_msgTypes[38]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2101,7 +2212,7 @@ func (x *ListNewCommitsRequest) String() string {
func (*ListNewCommitsRequest) ProtoMessage() {}
func (x *ListNewCommitsRequest) ProtoReflect() protoreflect.Message {
- mi := &file_ref_proto_msgTypes[36]
+ mi := &file_ref_proto_msgTypes[38]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2114,7 +2225,7 @@ func (x *ListNewCommitsRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use ListNewCommitsRequest.ProtoReflect.Descriptor instead.
func (*ListNewCommitsRequest) Descriptor() ([]byte, []int) {
- return file_ref_proto_rawDescGZIP(), []int{36}
+ return file_ref_proto_rawDescGZIP(), []int{38}
}
func (x *ListNewCommitsRequest) GetRepository() *Repository {
@@ -2142,7 +2253,7 @@ type ListNewCommitsResponse struct {
func (x *ListNewCommitsResponse) Reset() {
*x = ListNewCommitsResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_ref_proto_msgTypes[37]
+ mi := &file_ref_proto_msgTypes[39]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2155,7 +2266,7 @@ func (x *ListNewCommitsResponse) String() string {
func (*ListNewCommitsResponse) ProtoMessage() {}
func (x *ListNewCommitsResponse) ProtoReflect() protoreflect.Message {
- mi := &file_ref_proto_msgTypes[37]
+ mi := &file_ref_proto_msgTypes[39]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2168,7 +2279,7 @@ func (x *ListNewCommitsResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use ListNewCommitsResponse.ProtoReflect.Descriptor instead.
func (*ListNewCommitsResponse) Descriptor() ([]byte, []int) {
- return file_ref_proto_rawDescGZIP(), []int{37}
+ return file_ref_proto_rawDescGZIP(), []int{39}
}
func (x *ListNewCommitsResponse) GetCommits() []*GitCommit {
@@ -2190,7 +2301,7 @@ type FindAllRemoteBranchesRequest struct {
func (x *FindAllRemoteBranchesRequest) Reset() {
*x = FindAllRemoteBranchesRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_ref_proto_msgTypes[38]
+ mi := &file_ref_proto_msgTypes[40]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2203,7 +2314,7 @@ func (x *FindAllRemoteBranchesRequest) String() string {
func (*FindAllRemoteBranchesRequest) ProtoMessage() {}
func (x *FindAllRemoteBranchesRequest) ProtoReflect() protoreflect.Message {
- mi := &file_ref_proto_msgTypes[38]
+ mi := &file_ref_proto_msgTypes[40]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2216,7 +2327,7 @@ func (x *FindAllRemoteBranchesRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use FindAllRemoteBranchesRequest.ProtoReflect.Descriptor instead.
func (*FindAllRemoteBranchesRequest) Descriptor() ([]byte, []int) {
- return file_ref_proto_rawDescGZIP(), []int{38}
+ return file_ref_proto_rawDescGZIP(), []int{40}
}
func (x *FindAllRemoteBranchesRequest) GetRepository() *Repository {
@@ -2244,7 +2355,7 @@ type FindAllRemoteBranchesResponse struct {
func (x *FindAllRemoteBranchesResponse) Reset() {
*x = FindAllRemoteBranchesResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_ref_proto_msgTypes[39]
+ mi := &file_ref_proto_msgTypes[41]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2257,7 +2368,7 @@ func (x *FindAllRemoteBranchesResponse) String() string {
func (*FindAllRemoteBranchesResponse) ProtoMessage() {}
func (x *FindAllRemoteBranchesResponse) ProtoReflect() protoreflect.Message {
- mi := &file_ref_proto_msgTypes[39]
+ mi := &file_ref_proto_msgTypes[41]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2270,7 +2381,7 @@ func (x *FindAllRemoteBranchesResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use FindAllRemoteBranchesResponse.ProtoReflect.Descriptor instead.
func (*FindAllRemoteBranchesResponse) Descriptor() ([]byte, []int) {
- return file_ref_proto_rawDescGZIP(), []int{39}
+ return file_ref_proto_rawDescGZIP(), []int{41}
}
func (x *FindAllRemoteBranchesResponse) GetBranches() []*Branch {
@@ -2292,7 +2403,7 @@ type PackRefsRequest struct {
func (x *PackRefsRequest) Reset() {
*x = PackRefsRequest{}
if protoimpl.UnsafeEnabled {
- mi := &file_ref_proto_msgTypes[40]
+ mi := &file_ref_proto_msgTypes[42]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2305,7 +2416,7 @@ func (x *PackRefsRequest) String() string {
func (*PackRefsRequest) ProtoMessage() {}
func (x *PackRefsRequest) ProtoReflect() protoreflect.Message {
- mi := &file_ref_proto_msgTypes[40]
+ mi := &file_ref_proto_msgTypes[42]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2318,7 +2429,7 @@ func (x *PackRefsRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use PackRefsRequest.ProtoReflect.Descriptor instead.
func (*PackRefsRequest) Descriptor() ([]byte, []int) {
- return file_ref_proto_rawDescGZIP(), []int{40}
+ return file_ref_proto_rawDescGZIP(), []int{42}
}
func (x *PackRefsRequest) GetRepository() *Repository {
@@ -2344,7 +2455,7 @@ type PackRefsResponse struct {
func (x *PackRefsResponse) Reset() {
*x = PackRefsResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_ref_proto_msgTypes[41]
+ mi := &file_ref_proto_msgTypes[43]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2357,7 +2468,7 @@ func (x *PackRefsResponse) String() string {
func (*PackRefsResponse) ProtoMessage() {}
func (x *PackRefsResponse) ProtoReflect() protoreflect.Message {
- mi := &file_ref_proto_msgTypes[41]
+ mi := &file_ref_proto_msgTypes[43]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2370,7 +2481,7 @@ func (x *PackRefsResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use PackRefsResponse.ProtoReflect.Descriptor instead.
func (*PackRefsResponse) Descriptor() ([]byte, []int) {
- return file_ref_proto_rawDescGZIP(), []int{41}
+ return file_ref_proto_rawDescGZIP(), []int{43}
}
type FindAllBranchesResponse_Branch struct {
@@ -2385,7 +2496,7 @@ type FindAllBranchesResponse_Branch struct {
func (x *FindAllBranchesResponse_Branch) Reset() {
*x = FindAllBranchesResponse_Branch{}
if protoimpl.UnsafeEnabled {
- mi := &file_ref_proto_msgTypes[42]
+ mi := &file_ref_proto_msgTypes[44]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2398,7 +2509,7 @@ func (x *FindAllBranchesResponse_Branch) String() string {
func (*FindAllBranchesResponse_Branch) ProtoMessage() {}
func (x *FindAllBranchesResponse_Branch) ProtoReflect() protoreflect.Message {
- mi := &file_ref_proto_msgTypes[42]
+ mi := &file_ref_proto_msgTypes[44]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2428,6 +2539,76 @@ func (x *FindAllBranchesResponse_Branch) GetTarget() *GitCommit {
return nil
}
+// TagSignature represents the signature of a signed tag.
+type GetTagSignaturesResponse_TagSignature struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // TagId is the resolved object ID of the tag.
+ TagId string `protobuf:"bytes,1,opt,name=tag_id,json=tagId,proto3" json:"tag_id,omitempty"`
+ // Signature contains the cryptographic signature of the tag. If the tag is not
+ // cryptographically signed, then the signature is unset.
+ Signature []byte `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"`
+ // Content contains the contents which are signed by the signature. Contents
+ // include both the commit message, but also the commit metadata like author and
+ // subject.
+ Content []byte `protobuf:"bytes,3,opt,name=content,proto3" json:"content,omitempty"`
+}
+
+func (x *GetTagSignaturesResponse_TagSignature) Reset() {
+ *x = GetTagSignaturesResponse_TagSignature{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_ref_proto_msgTypes[45]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetTagSignaturesResponse_TagSignature) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetTagSignaturesResponse_TagSignature) ProtoMessage() {}
+
+func (x *GetTagSignaturesResponse_TagSignature) ProtoReflect() protoreflect.Message {
+ mi := &file_ref_proto_msgTypes[45]
+ 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 GetTagSignaturesResponse_TagSignature.ProtoReflect.Descriptor instead.
+func (*GetTagSignaturesResponse_TagSignature) Descriptor() ([]byte, []int) {
+ return file_ref_proto_rawDescGZIP(), []int{35, 0}
+}
+
+func (x *GetTagSignaturesResponse_TagSignature) GetTagId() string {
+ if x != nil {
+ return x.TagId
+ }
+ return ""
+}
+
+func (x *GetTagSignaturesResponse_TagSignature) GetSignature() []byte {
+ if x != nil {
+ return x.Signature
+ }
+ return nil
+}
+
+func (x *GetTagSignaturesResponse_TagSignature) GetContent() []byte {
+ if x != nil {
+ return x.Content
+ }
+ return nil
+}
+
var File_ref_proto protoreflect.FileDescriptor
var file_ref_proto_rawDesc = []byte{
@@ -2667,162 +2848,188 @@ var file_ref_proto_rawDesc = []byte{
0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x1b, 0x0a, 0x09, 0x74, 0x61, 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20,
0x03, 0x28, 0x0c, 0x52, 0x08, 0x74, 0x61, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x4a, 0x04, 0x08,
- 0x01, 0x10, 0x02, 0x22, 0x7b, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x54, 0x61, 0x67, 0x4d, 0x65, 0x73,
- 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a,
- 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
- 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69,
- 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f,
- 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x61, 0x67, 0x5f, 0x69, 0x64,
- 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x74, 0x61, 0x67, 0x49, 0x64, 0x73, 0x4a,
- 0x04, 0x08, 0x02, 0x10, 0x03, 0x52, 0x09, 0x74, 0x61, 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73,
- 0x22, 0x59, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x54, 0x61, 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
- 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65,
- 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x6d, 0x65, 0x73,
- 0x73, 0x61, 0x67, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x61, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x03,
- 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x61, 0x67, 0x49, 0x64, 0x4a, 0x04, 0x08, 0x01, 0x10,
- 0x02, 0x52, 0x08, 0x74, 0x61, 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x6e, 0x0a, 0x15, 0x4c,
- 0x69, 0x73, 0x74, 0x4e, 0x65, 0x77, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x73, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f,
- 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c,
- 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6,
- 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1b,
- 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
- 0x09, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x49, 0x64, 0x22, 0x45, 0x0a, 0x16, 0x4c,
- 0x69, 0x73, 0x74, 0x4e, 0x65, 0x77, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x73, 0x52, 0x65, 0x73,
- 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x73,
- 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e,
- 0x47, 0x69, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x69,
- 0x74, 0x73, 0x22, 0x79, 0x0a, 0x1c, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x52, 0x65, 0x6d,
- 0x6f, 0x74, 0x65, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x01, 0x10, 0x02, 0x22, 0x78, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x54, 0x61, 0x67, 0x53, 0x69, 0x67,
+ 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38,
+ 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f,
+ 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65,
+ 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x61, 0x67, 0x5f,
+ 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52,
+ 0x0c, 0x74, 0x61, 0x67, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xc8, 0x01,
+ 0x0a, 0x18, 0x47, 0x65, 0x74, 0x54, 0x61, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72,
+ 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x0a, 0x73, 0x69,
+ 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d,
+ 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x61, 0x67, 0x53, 0x69,
+ 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x2e, 0x54, 0x61, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x0a, 0x73,
+ 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x1a, 0x5d, 0x0a, 0x0c, 0x54, 0x61, 0x67,
+ 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x61, 0x67,
+ 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x61, 0x67, 0x49, 0x64,
+ 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x0c, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x18,
+ 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52,
+ 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x7b, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x54,
+ 0x61, 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52,
+ 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52,
+ 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x17, 0x0a, 0x07, 0x74,
+ 0x61, 0x67, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x74, 0x61,
+ 0x67, 0x49, 0x64, 0x73, 0x4a, 0x04, 0x08, 0x02, 0x10, 0x03, 0x52, 0x09, 0x74, 0x61, 0x67, 0x5f,
+ 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0x59, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x54, 0x61, 0x67, 0x4d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
+ 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c,
+ 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x61, 0x67,
+ 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x61, 0x67, 0x49, 0x64,
+ 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x52, 0x08, 0x74, 0x61, 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
+ 0x22, 0x6e, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x77, 0x43, 0x6f, 0x6d, 0x6d, 0x69,
+ 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70,
+ 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e,
+ 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72,
+ 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74,
+ 0x6f, 0x72, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x69, 0x64,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x49, 0x64,
+ 0x22, 0x45, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x77, 0x43, 0x6f, 0x6d, 0x6d, 0x69,
+ 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x07, 0x63, 0x6f,
+ 0x6d, 0x6d, 0x69, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x67, 0x69,
+ 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x69, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x52, 0x07,
+ 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x73, 0x22, 0x79, 0x0a, 0x1c, 0x46, 0x69, 0x6e, 0x64, 0x41,
+ 0x6c, 0x6c, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73,
+ 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69,
+ 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42,
+ 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72,
+ 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61,
+ 0x6d, 0x65, 0x22, 0x4b, 0x0a, 0x1d, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x52, 0x65, 0x6d,
+ 0x6f, 0x74, 0x65, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x08, 0x62, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x18,
+ 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x42,
+ 0x72, 0x61, 0x6e, 0x63, 0x68, 0x52, 0x08, 0x62, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x22,
+ 0x66, 0x0a, 0x0f, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x66, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79,
0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e,
0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01,
- 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1f, 0x0a, 0x0b,
- 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
- 0x09, 0x52, 0x0a, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x4b, 0x0a,
- 0x1d, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x42, 0x72,
- 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a,
- 0x0a, 0x08, 0x62, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
- 0x32, 0x0e, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68,
- 0x52, 0x08, 0x62, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x22, 0x66, 0x0a, 0x0f, 0x50, 0x61,
- 0x63, 0x6b, 0x52, 0x65, 0x66, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a,
- 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73,
- 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x70,
- 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x6c, 0x6c, 0x5f, 0x72,
- 0x65, 0x66, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x61, 0x6c, 0x6c, 0x52, 0x65,
- 0x66, 0x73, 0x22, 0x12, 0x0a, 0x10, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x66, 0x73, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0xa2, 0x0d, 0x0a, 0x0a, 0x52, 0x65, 0x66, 0x53, 0x65,
- 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x6c, 0x0a, 0x15, 0x46, 0x69, 0x6e, 0x64, 0x44, 0x65, 0x66,
- 0x61, 0x75, 0x6c, 0x74, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24,
- 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x44, 0x65, 0x66, 0x61,
- 0x75, 0x6c, 0x74, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69,
+ 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x19, 0x0a, 0x08,
+ 0x61, 0x6c, 0x6c, 0x5f, 0x72, 0x65, 0x66, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07,
+ 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x66, 0x73, 0x22, 0x12, 0x0a, 0x10, 0x50, 0x61, 0x63, 0x6b, 0x52,
+ 0x65, 0x66, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0x83, 0x0e, 0x0a, 0x0a,
+ 0x52, 0x65, 0x66, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x6c, 0x0a, 0x15, 0x46, 0x69,
0x6e, 0x64, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e,
- 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28,
- 0x02, 0x08, 0x02, 0x12, 0x65, 0x0a, 0x12, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x42, 0x72,
- 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x21, 0x2e, 0x67, 0x69, 0x74, 0x61,
- 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68,
- 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x67,
- 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x42, 0x72, 0x61,
- 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x5c, 0x0a, 0x0f, 0x46, 0x69,
- 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x54, 0x61, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x1e, 0x2e,
- 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x54, 0x61,
- 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e,
- 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x54, 0x61,
- 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06,
- 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x4e, 0x0a, 0x0b, 0x46, 0x69, 0x6e, 0x64,
- 0x52, 0x65, 0x66, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79,
- 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x65, 0x66, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75,
- 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e,
- 0x64, 0x52, 0x65, 0x66, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, 0x62, 0x0a, 0x11, 0x46, 0x69, 0x6e, 0x64,
- 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x12, 0x20, 0x2e,
- 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x6f, 0x63, 0x61, 0x6c,
- 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
- 0x21, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x6f, 0x63,
- 0x61, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x5c, 0x0a, 0x0f,
- 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x12,
- 0x1e, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c,
- 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
- 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c,
- 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x50, 0x0a, 0x0b, 0x46, 0x69,
- 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x54, 0x61, 0x67, 0x73, 0x12, 0x1a, 0x2e, 0x67, 0x69, 0x74, 0x61,
- 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x54, 0x61, 0x67, 0x73, 0x52, 0x65,
- 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46,
- 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x54, 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x42, 0x0a, 0x07,
- 0x46, 0x69, 0x6e, 0x64, 0x54, 0x61, 0x67, 0x12, 0x16, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79,
- 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x54, 0x61, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
- 0x17, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x54, 0x61, 0x67,
- 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02,
- 0x12, 0x6e, 0x0a, 0x15, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x52, 0x65, 0x6d, 0x6f, 0x74,
- 0x65, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x12, 0x24, 0x2e, 0x67, 0x69, 0x74, 0x61,
- 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65,
- 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
- 0x25, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c,
- 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01,
- 0x12, 0x48, 0x0a, 0x09, 0x52, 0x65, 0x66, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x12, 0x18, 0x2e,
- 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x66, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73,
- 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79,
- 0x2e, 0x52, 0x65, 0x66, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, 0x4b, 0x0a, 0x0a, 0x46, 0x69,
- 0x6e, 0x64, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x12, 0x19, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c,
- 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75,
- 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e,
- 0x64, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
- 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, 0x4b, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x65, 0x74,
- 0x65, 0x52, 0x65, 0x66, 0x73, 0x12, 0x19, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x44,
- 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x66, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x1a, 0x1a, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
- 0x52, 0x65, 0x66, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97,
- 0x28, 0x02, 0x08, 0x01, 0x12, 0x8c, 0x01, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x72, 0x61,
- 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69,
- 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x12, 0x2e, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c,
- 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65,
- 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x69,
- 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c,
- 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65,
- 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x69,
- 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08,
- 0x02, 0x30, 0x01, 0x12, 0x83, 0x01, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x61, 0x67, 0x4e,
- 0x61, 0x6d, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x6f,
- 0x6d, 0x6d, 0x69, 0x74, 0x12, 0x2b, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4c, 0x69,
- 0x73, 0x74, 0x54, 0x61, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69,
- 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x1a, 0x2c, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54,
- 0x61, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e,
- 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
- 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x59, 0x0a, 0x0e, 0x47, 0x65, 0x74,
- 0x54, 0x61, 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x1d, 0x2e, 0x67, 0x69,
- 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x61, 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61,
- 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x67, 0x69, 0x74,
- 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x61, 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
- 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02,
- 0x08, 0x02, 0x30, 0x01, 0x12, 0x59, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x77, 0x43,
- 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x73, 0x12, 0x1d, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e,
- 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x77, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x73, 0x52, 0x65,
- 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4c,
- 0x69, 0x73, 0x74, 0x4e, 0x65, 0x77, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x73, 0x52, 0x65, 0x73,
+ 0x61, 0x6d, 0x65, 0x12, 0x24, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e,
+ 0x64, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61,
+ 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x67, 0x69, 0x74, 0x61,
+ 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x42, 0x72,
+ 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, 0x65, 0x0a, 0x12, 0x46, 0x69, 0x6e, 0x64,
+ 0x41, 0x6c, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x21,
+ 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x42,
+ 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x22, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41,
+ 0x6c, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12,
- 0x53, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x77, 0x42, 0x6c, 0x6f, 0x62, 0x73, 0x12,
- 0x1b, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x77,
- 0x42, 0x6c, 0x6f, 0x62, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x67,
- 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x77, 0x42, 0x6c, 0x6f,
- 0x62, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02,
- 0x08, 0x02, 0x30, 0x01, 0x12, 0x45, 0x0a, 0x08, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x66, 0x73,
- 0x12, 0x17, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65,
- 0x66, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x67, 0x69, 0x74, 0x61,
- 0x6c, 0x79, 0x2e, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x66, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
- 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x42, 0x34, 0x5a, 0x32, 0x67,
- 0x69, 0x74, 0x6c, 0x61, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x69, 0x74, 0x6c, 0x61, 0x62,
- 0x2d, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2f, 0x76, 0x31, 0x34, 0x2f,
- 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x2f, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x70,
- 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+ 0x5c, 0x0a, 0x0f, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x54, 0x61, 0x67, 0x4e, 0x61, 0x6d,
+ 0x65, 0x73, 0x12, 0x1e, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64,
+ 0x41, 0x6c, 0x6c, 0x54, 0x61, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64,
+ 0x41, 0x6c, 0x6c, 0x54, 0x61, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x4e, 0x0a,
+ 0x0b, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x65, 0x66, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x2e, 0x67,
+ 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x65, 0x66, 0x4e, 0x61, 0x6d,
+ 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c,
+ 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x52, 0x65, 0x66, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, 0x62, 0x0a,
+ 0x11, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68,
+ 0x65, 0x73, 0x12, 0x20, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64,
+ 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69,
+ 0x6e, 0x64, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30,
+ 0x01, 0x12, 0x5c, 0x0a, 0x0f, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x42, 0x72, 0x61, 0x6e,
+ 0x63, 0x68, 0x65, 0x73, 0x12, 0x1e, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69,
+ 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69,
+ 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12,
+ 0x50, 0x0a, 0x0b, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x54, 0x61, 0x67, 0x73, 0x12, 0x1a,
+ 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x54,
+ 0x61, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x67, 0x69, 0x74,
+ 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x54, 0x61, 0x67, 0x73, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30,
+ 0x01, 0x12, 0x42, 0x0a, 0x07, 0x46, 0x69, 0x6e, 0x64, 0x54, 0x61, 0x67, 0x12, 0x16, 0x2e, 0x67,
+ 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x54, 0x61, 0x67, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69,
+ 0x6e, 0x64, 0x54, 0x61, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa,
+ 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, 0x6e, 0x0a, 0x15, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c,
+ 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x12, 0x24,
+ 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x52,
+ 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69,
+ 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x42, 0x72, 0x61, 0x6e, 0x63,
+ 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28,
+ 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x48, 0x0a, 0x09, 0x52, 0x65, 0x66, 0x45, 0x78, 0x69, 0x73,
+ 0x74, 0x73, 0x12, 0x18, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x66, 0x45,
+ 0x78, 0x69, 0x73, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x67,
+ 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x66, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x12,
+ 0x4b, 0x0a, 0x0a, 0x46, 0x69, 0x6e, 0x64, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x12, 0x19, 0x2e,
+ 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x42, 0x72, 0x61, 0x6e, 0x63,
+ 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c,
+ 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, 0x4b, 0x0a, 0x0a,
+ 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x66, 0x73, 0x12, 0x19, 0x2e, 0x67, 0x69, 0x74,
+ 0x61, 0x6c, 0x79, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x66, 0x73, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x44,
+ 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x66, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x8c, 0x01, 0x0a, 0x1f, 0x4c, 0x69,
+ 0x73, 0x74, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x43, 0x6f, 0x6e,
+ 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x12, 0x2e, 0x2e,
+ 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x72, 0x61, 0x6e, 0x63,
+ 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67,
+ 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e,
+ 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x72, 0x61, 0x6e, 0x63,
+ 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67,
+ 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06,
+ 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x83, 0x01, 0x0a, 0x1c, 0x4c, 0x69, 0x73,
+ 0x74, 0x54, 0x61, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e,
+ 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x12, 0x2b, 0x2e, 0x67, 0x69, 0x74, 0x61,
+ 0x6c, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x61, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x43,
+ 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e,
+ 0x4c, 0x69, 0x73, 0x74, 0x54, 0x61, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x74,
+ 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x5f,
+ 0x0a, 0x10, 0x47, 0x65, 0x74, 0x54, 0x61, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72,
+ 0x65, 0x73, 0x12, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x54,
+ 0x61, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74,
+ 0x54, 0x61, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12,
+ 0x59, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x54, 0x61, 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x73, 0x12, 0x1d, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x61,
+ 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x1e, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x61, 0x67,
+ 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x59, 0x0a, 0x0e, 0x4c, 0x69,
+ 0x73, 0x74, 0x4e, 0x65, 0x77, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x73, 0x12, 0x1d, 0x2e, 0x67,
+ 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x77, 0x43, 0x6f, 0x6d,
+ 0x6d, 0x69, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x67, 0x69,
+ 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x77, 0x43, 0x6f, 0x6d, 0x6d,
+ 0x69, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28,
+ 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x53, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x77,
+ 0x42, 0x6c, 0x6f, 0x62, 0x73, 0x12, 0x1b, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4c,
+ 0x69, 0x73, 0x74, 0x4e, 0x65, 0x77, 0x42, 0x6c, 0x6f, 0x62, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74,
+ 0x4e, 0x65, 0x77, 0x42, 0x6c, 0x6f, 0x62, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x45, 0x0a, 0x08, 0x50, 0x61,
+ 0x63, 0x6b, 0x52, 0x65, 0x66, 0x73, 0x12, 0x17, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e,
+ 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x66, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x18, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x66,
+ 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08,
+ 0x01, 0x42, 0x34, 0x5a, 0x32, 0x67, 0x69, 0x74, 0x6c, 0x61, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
+ 0x67, 0x69, 0x74, 0x6c, 0x61, 0x62, 0x2d, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x69, 0x74, 0x61, 0x6c,
+ 0x79, 0x2f, 0x76, 0x31, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x2f, 0x67,
+ 0x69, 0x74, 0x61, 0x6c, 0x79, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@@ -2838,7 +3045,7 @@ func file_ref_proto_rawDescGZIP() []byte {
}
var file_ref_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
-var file_ref_proto_msgTypes = make([]protoimpl.MessageInfo, 43)
+var file_ref_proto_msgTypes = make([]protoimpl.MessageInfo, 46)
var file_ref_proto_goTypes = []interface{}{
(FindLocalBranchesRequest_SortBy)(0), // 0: gitaly.FindLocalBranchesRequest.SortBy
(CreateBranchResponse_Status)(0), // 1: gitaly.CreateBranchResponse.Status
@@ -2876,102 +3083,109 @@ var file_ref_proto_goTypes = []interface{}{
(*ListBranchNamesContainingCommitResponse)(nil), // 33: gitaly.ListBranchNamesContainingCommitResponse
(*ListTagNamesContainingCommitRequest)(nil), // 34: gitaly.ListTagNamesContainingCommitRequest
(*ListTagNamesContainingCommitResponse)(nil), // 35: gitaly.ListTagNamesContainingCommitResponse
- (*GetTagMessagesRequest)(nil), // 36: gitaly.GetTagMessagesRequest
- (*GetTagMessagesResponse)(nil), // 37: gitaly.GetTagMessagesResponse
- (*ListNewCommitsRequest)(nil), // 38: gitaly.ListNewCommitsRequest
- (*ListNewCommitsResponse)(nil), // 39: gitaly.ListNewCommitsResponse
- (*FindAllRemoteBranchesRequest)(nil), // 40: gitaly.FindAllRemoteBranchesRequest
- (*FindAllRemoteBranchesResponse)(nil), // 41: gitaly.FindAllRemoteBranchesResponse
- (*PackRefsRequest)(nil), // 42: gitaly.PackRefsRequest
- (*PackRefsResponse)(nil), // 43: gitaly.PackRefsResponse
- (*FindAllBranchesResponse_Branch)(nil), // 44: gitaly.FindAllBranchesResponse.Branch
- (*Repository)(nil), // 45: gitaly.Repository
- (*NewBlobObject)(nil), // 46: gitaly.NewBlobObject
- (*PaginationParameter)(nil), // 47: gitaly.PaginationParameter
- (*GitCommit)(nil), // 48: gitaly.GitCommit
- (*timestamppb.Timestamp)(nil), // 49: google.protobuf.Timestamp
- (*Tag)(nil), // 50: gitaly.Tag
- (*Branch)(nil), // 51: gitaly.Branch
+ (*GetTagSignaturesRequest)(nil), // 36: gitaly.GetTagSignaturesRequest
+ (*GetTagSignaturesResponse)(nil), // 37: gitaly.GetTagSignaturesResponse
+ (*GetTagMessagesRequest)(nil), // 38: gitaly.GetTagMessagesRequest
+ (*GetTagMessagesResponse)(nil), // 39: gitaly.GetTagMessagesResponse
+ (*ListNewCommitsRequest)(nil), // 40: gitaly.ListNewCommitsRequest
+ (*ListNewCommitsResponse)(nil), // 41: gitaly.ListNewCommitsResponse
+ (*FindAllRemoteBranchesRequest)(nil), // 42: gitaly.FindAllRemoteBranchesRequest
+ (*FindAllRemoteBranchesResponse)(nil), // 43: gitaly.FindAllRemoteBranchesResponse
+ (*PackRefsRequest)(nil), // 44: gitaly.PackRefsRequest
+ (*PackRefsResponse)(nil), // 45: gitaly.PackRefsResponse
+ (*FindAllBranchesResponse_Branch)(nil), // 46: gitaly.FindAllBranchesResponse.Branch
+ (*GetTagSignaturesResponse_TagSignature)(nil), // 47: gitaly.GetTagSignaturesResponse.TagSignature
+ (*Repository)(nil), // 48: gitaly.Repository
+ (*NewBlobObject)(nil), // 49: gitaly.NewBlobObject
+ (*PaginationParameter)(nil), // 50: gitaly.PaginationParameter
+ (*GitCommit)(nil), // 51: gitaly.GitCommit
+ (*timestamppb.Timestamp)(nil), // 52: google.protobuf.Timestamp
+ (*Tag)(nil), // 53: gitaly.Tag
+ (*Branch)(nil), // 54: gitaly.Branch
}
var file_ref_proto_depIdxs = []int32{
- 45, // 0: gitaly.ListNewBlobsRequest.repository:type_name -> gitaly.Repository
- 46, // 1: gitaly.ListNewBlobsResponse.new_blob_objects:type_name -> gitaly.NewBlobObject
- 45, // 2: gitaly.FindDefaultBranchNameRequest.repository:type_name -> gitaly.Repository
- 45, // 3: gitaly.FindAllBranchNamesRequest.repository:type_name -> gitaly.Repository
- 45, // 4: gitaly.FindAllTagNamesRequest.repository:type_name -> gitaly.Repository
- 45, // 5: gitaly.FindRefNameRequest.repository:type_name -> gitaly.Repository
- 45, // 6: gitaly.FindLocalBranchesRequest.repository:type_name -> gitaly.Repository
+ 48, // 0: gitaly.ListNewBlobsRequest.repository:type_name -> gitaly.Repository
+ 49, // 1: gitaly.ListNewBlobsResponse.new_blob_objects:type_name -> gitaly.NewBlobObject
+ 48, // 2: gitaly.FindDefaultBranchNameRequest.repository:type_name -> gitaly.Repository
+ 48, // 3: gitaly.FindAllBranchNamesRequest.repository:type_name -> gitaly.Repository
+ 48, // 4: gitaly.FindAllTagNamesRequest.repository:type_name -> gitaly.Repository
+ 48, // 5: gitaly.FindRefNameRequest.repository:type_name -> gitaly.Repository
+ 48, // 6: gitaly.FindLocalBranchesRequest.repository:type_name -> gitaly.Repository
0, // 7: gitaly.FindLocalBranchesRequest.sort_by:type_name -> gitaly.FindLocalBranchesRequest.SortBy
- 47, // 8: gitaly.FindLocalBranchesRequest.pagination_params:type_name -> gitaly.PaginationParameter
+ 50, // 8: gitaly.FindLocalBranchesRequest.pagination_params:type_name -> gitaly.PaginationParameter
14, // 9: gitaly.FindLocalBranchesResponse.branches:type_name -> gitaly.FindLocalBranchResponse
15, // 10: gitaly.FindLocalBranchResponse.commit_author:type_name -> gitaly.FindLocalBranchCommitAuthor
15, // 11: gitaly.FindLocalBranchResponse.commit_committer:type_name -> gitaly.FindLocalBranchCommitAuthor
- 48, // 12: gitaly.FindLocalBranchResponse.commit:type_name -> gitaly.GitCommit
- 49, // 13: gitaly.FindLocalBranchCommitAuthor.date:type_name -> google.protobuf.Timestamp
- 45, // 14: gitaly.FindAllBranchesRequest.repository:type_name -> gitaly.Repository
- 44, // 15: gitaly.FindAllBranchesResponse.branches:type_name -> gitaly.FindAllBranchesResponse.Branch
- 45, // 16: gitaly.FindTagRequest.repository:type_name -> gitaly.Repository
- 50, // 17: gitaly.FindTagResponse.tag:type_name -> gitaly.Tag
- 45, // 18: gitaly.FindAllTagsRequest.repository:type_name -> gitaly.Repository
- 50, // 19: gitaly.FindAllTagsResponse.tags:type_name -> gitaly.Tag
- 45, // 20: gitaly.RefExistsRequest.repository:type_name -> gitaly.Repository
- 45, // 21: gitaly.CreateBranchRequest.repository:type_name -> gitaly.Repository
+ 51, // 12: gitaly.FindLocalBranchResponse.commit:type_name -> gitaly.GitCommit
+ 52, // 13: gitaly.FindLocalBranchCommitAuthor.date:type_name -> google.protobuf.Timestamp
+ 48, // 14: gitaly.FindAllBranchesRequest.repository:type_name -> gitaly.Repository
+ 46, // 15: gitaly.FindAllBranchesResponse.branches:type_name -> gitaly.FindAllBranchesResponse.Branch
+ 48, // 16: gitaly.FindTagRequest.repository:type_name -> gitaly.Repository
+ 53, // 17: gitaly.FindTagResponse.tag:type_name -> gitaly.Tag
+ 48, // 18: gitaly.FindAllTagsRequest.repository:type_name -> gitaly.Repository
+ 53, // 19: gitaly.FindAllTagsResponse.tags:type_name -> gitaly.Tag
+ 48, // 20: gitaly.RefExistsRequest.repository:type_name -> gitaly.Repository
+ 48, // 21: gitaly.CreateBranchRequest.repository:type_name -> gitaly.Repository
1, // 22: gitaly.CreateBranchResponse.status:type_name -> gitaly.CreateBranchResponse.Status
- 51, // 23: gitaly.CreateBranchResponse.branch:type_name -> gitaly.Branch
- 45, // 24: gitaly.DeleteBranchRequest.repository:type_name -> gitaly.Repository
- 45, // 25: gitaly.FindBranchRequest.repository:type_name -> gitaly.Repository
- 51, // 26: gitaly.FindBranchResponse.branch:type_name -> gitaly.Branch
- 45, // 27: gitaly.DeleteRefsRequest.repository:type_name -> gitaly.Repository
- 45, // 28: gitaly.ListBranchNamesContainingCommitRequest.repository:type_name -> gitaly.Repository
- 45, // 29: gitaly.ListTagNamesContainingCommitRequest.repository:type_name -> gitaly.Repository
- 45, // 30: gitaly.GetTagMessagesRequest.repository:type_name -> gitaly.Repository
- 45, // 31: gitaly.ListNewCommitsRequest.repository:type_name -> gitaly.Repository
- 48, // 32: gitaly.ListNewCommitsResponse.commits:type_name -> gitaly.GitCommit
- 45, // 33: gitaly.FindAllRemoteBranchesRequest.repository:type_name -> gitaly.Repository
- 51, // 34: gitaly.FindAllRemoteBranchesResponse.branches:type_name -> gitaly.Branch
- 45, // 35: gitaly.PackRefsRequest.repository:type_name -> gitaly.Repository
- 48, // 36: gitaly.FindAllBranchesResponse.Branch.target:type_name -> gitaly.GitCommit
- 4, // 37: gitaly.RefService.FindDefaultBranchName:input_type -> gitaly.FindDefaultBranchNameRequest
- 6, // 38: gitaly.RefService.FindAllBranchNames:input_type -> gitaly.FindAllBranchNamesRequest
- 8, // 39: gitaly.RefService.FindAllTagNames:input_type -> gitaly.FindAllTagNamesRequest
- 10, // 40: gitaly.RefService.FindRefName:input_type -> gitaly.FindRefNameRequest
- 12, // 41: gitaly.RefService.FindLocalBranches:input_type -> gitaly.FindLocalBranchesRequest
- 16, // 42: gitaly.RefService.FindAllBranches:input_type -> gitaly.FindAllBranchesRequest
- 20, // 43: gitaly.RefService.FindAllTags:input_type -> gitaly.FindAllTagsRequest
- 18, // 44: gitaly.RefService.FindTag:input_type -> gitaly.FindTagRequest
- 40, // 45: gitaly.RefService.FindAllRemoteBranches:input_type -> gitaly.FindAllRemoteBranchesRequest
- 22, // 46: gitaly.RefService.RefExists:input_type -> gitaly.RefExistsRequest
- 28, // 47: gitaly.RefService.FindBranch:input_type -> gitaly.FindBranchRequest
- 30, // 48: gitaly.RefService.DeleteRefs:input_type -> gitaly.DeleteRefsRequest
- 32, // 49: gitaly.RefService.ListBranchNamesContainingCommit:input_type -> gitaly.ListBranchNamesContainingCommitRequest
- 34, // 50: gitaly.RefService.ListTagNamesContainingCommit:input_type -> gitaly.ListTagNamesContainingCommitRequest
- 36, // 51: gitaly.RefService.GetTagMessages:input_type -> gitaly.GetTagMessagesRequest
- 38, // 52: gitaly.RefService.ListNewCommits:input_type -> gitaly.ListNewCommitsRequest
- 2, // 53: gitaly.RefService.ListNewBlobs:input_type -> gitaly.ListNewBlobsRequest
- 42, // 54: gitaly.RefService.PackRefs:input_type -> gitaly.PackRefsRequest
- 5, // 55: gitaly.RefService.FindDefaultBranchName:output_type -> gitaly.FindDefaultBranchNameResponse
- 7, // 56: gitaly.RefService.FindAllBranchNames:output_type -> gitaly.FindAllBranchNamesResponse
- 9, // 57: gitaly.RefService.FindAllTagNames:output_type -> gitaly.FindAllTagNamesResponse
- 11, // 58: gitaly.RefService.FindRefName:output_type -> gitaly.FindRefNameResponse
- 13, // 59: gitaly.RefService.FindLocalBranches:output_type -> gitaly.FindLocalBranchesResponse
- 17, // 60: gitaly.RefService.FindAllBranches:output_type -> gitaly.FindAllBranchesResponse
- 21, // 61: gitaly.RefService.FindAllTags:output_type -> gitaly.FindAllTagsResponse
- 19, // 62: gitaly.RefService.FindTag:output_type -> gitaly.FindTagResponse
- 41, // 63: gitaly.RefService.FindAllRemoteBranches:output_type -> gitaly.FindAllRemoteBranchesResponse
- 23, // 64: gitaly.RefService.RefExists:output_type -> gitaly.RefExistsResponse
- 29, // 65: gitaly.RefService.FindBranch:output_type -> gitaly.FindBranchResponse
- 31, // 66: gitaly.RefService.DeleteRefs:output_type -> gitaly.DeleteRefsResponse
- 33, // 67: gitaly.RefService.ListBranchNamesContainingCommit:output_type -> gitaly.ListBranchNamesContainingCommitResponse
- 35, // 68: gitaly.RefService.ListTagNamesContainingCommit:output_type -> gitaly.ListTagNamesContainingCommitResponse
- 37, // 69: gitaly.RefService.GetTagMessages:output_type -> gitaly.GetTagMessagesResponse
- 39, // 70: gitaly.RefService.ListNewCommits:output_type -> gitaly.ListNewCommitsResponse
- 3, // 71: gitaly.RefService.ListNewBlobs:output_type -> gitaly.ListNewBlobsResponse
- 43, // 72: gitaly.RefService.PackRefs:output_type -> gitaly.PackRefsResponse
- 55, // [55:73] is the sub-list for method output_type
- 37, // [37:55] is the sub-list for method input_type
- 37, // [37:37] is the sub-list for extension type_name
- 37, // [37:37] is the sub-list for extension extendee
- 0, // [0:37] is the sub-list for field type_name
+ 54, // 23: gitaly.CreateBranchResponse.branch:type_name -> gitaly.Branch
+ 48, // 24: gitaly.DeleteBranchRequest.repository:type_name -> gitaly.Repository
+ 48, // 25: gitaly.FindBranchRequest.repository:type_name -> gitaly.Repository
+ 54, // 26: gitaly.FindBranchResponse.branch:type_name -> gitaly.Branch
+ 48, // 27: gitaly.DeleteRefsRequest.repository:type_name -> gitaly.Repository
+ 48, // 28: gitaly.ListBranchNamesContainingCommitRequest.repository:type_name -> gitaly.Repository
+ 48, // 29: gitaly.ListTagNamesContainingCommitRequest.repository:type_name -> gitaly.Repository
+ 48, // 30: gitaly.GetTagSignaturesRequest.repository:type_name -> gitaly.Repository
+ 47, // 31: gitaly.GetTagSignaturesResponse.signatures:type_name -> gitaly.GetTagSignaturesResponse.TagSignature
+ 48, // 32: gitaly.GetTagMessagesRequest.repository:type_name -> gitaly.Repository
+ 48, // 33: gitaly.ListNewCommitsRequest.repository:type_name -> gitaly.Repository
+ 51, // 34: gitaly.ListNewCommitsResponse.commits:type_name -> gitaly.GitCommit
+ 48, // 35: gitaly.FindAllRemoteBranchesRequest.repository:type_name -> gitaly.Repository
+ 54, // 36: gitaly.FindAllRemoteBranchesResponse.branches:type_name -> gitaly.Branch
+ 48, // 37: gitaly.PackRefsRequest.repository:type_name -> gitaly.Repository
+ 51, // 38: gitaly.FindAllBranchesResponse.Branch.target:type_name -> gitaly.GitCommit
+ 4, // 39: gitaly.RefService.FindDefaultBranchName:input_type -> gitaly.FindDefaultBranchNameRequest
+ 6, // 40: gitaly.RefService.FindAllBranchNames:input_type -> gitaly.FindAllBranchNamesRequest
+ 8, // 41: gitaly.RefService.FindAllTagNames:input_type -> gitaly.FindAllTagNamesRequest
+ 10, // 42: gitaly.RefService.FindRefName:input_type -> gitaly.FindRefNameRequest
+ 12, // 43: gitaly.RefService.FindLocalBranches:input_type -> gitaly.FindLocalBranchesRequest
+ 16, // 44: gitaly.RefService.FindAllBranches:input_type -> gitaly.FindAllBranchesRequest
+ 20, // 45: gitaly.RefService.FindAllTags:input_type -> gitaly.FindAllTagsRequest
+ 18, // 46: gitaly.RefService.FindTag:input_type -> gitaly.FindTagRequest
+ 42, // 47: gitaly.RefService.FindAllRemoteBranches:input_type -> gitaly.FindAllRemoteBranchesRequest
+ 22, // 48: gitaly.RefService.RefExists:input_type -> gitaly.RefExistsRequest
+ 28, // 49: gitaly.RefService.FindBranch:input_type -> gitaly.FindBranchRequest
+ 30, // 50: gitaly.RefService.DeleteRefs:input_type -> gitaly.DeleteRefsRequest
+ 32, // 51: gitaly.RefService.ListBranchNamesContainingCommit:input_type -> gitaly.ListBranchNamesContainingCommitRequest
+ 34, // 52: gitaly.RefService.ListTagNamesContainingCommit:input_type -> gitaly.ListTagNamesContainingCommitRequest
+ 36, // 53: gitaly.RefService.GetTagSignatures:input_type -> gitaly.GetTagSignaturesRequest
+ 38, // 54: gitaly.RefService.GetTagMessages:input_type -> gitaly.GetTagMessagesRequest
+ 40, // 55: gitaly.RefService.ListNewCommits:input_type -> gitaly.ListNewCommitsRequest
+ 2, // 56: gitaly.RefService.ListNewBlobs:input_type -> gitaly.ListNewBlobsRequest
+ 44, // 57: gitaly.RefService.PackRefs:input_type -> gitaly.PackRefsRequest
+ 5, // 58: gitaly.RefService.FindDefaultBranchName:output_type -> gitaly.FindDefaultBranchNameResponse
+ 7, // 59: gitaly.RefService.FindAllBranchNames:output_type -> gitaly.FindAllBranchNamesResponse
+ 9, // 60: gitaly.RefService.FindAllTagNames:output_type -> gitaly.FindAllTagNamesResponse
+ 11, // 61: gitaly.RefService.FindRefName:output_type -> gitaly.FindRefNameResponse
+ 13, // 62: gitaly.RefService.FindLocalBranches:output_type -> gitaly.FindLocalBranchesResponse
+ 17, // 63: gitaly.RefService.FindAllBranches:output_type -> gitaly.FindAllBranchesResponse
+ 21, // 64: gitaly.RefService.FindAllTags:output_type -> gitaly.FindAllTagsResponse
+ 19, // 65: gitaly.RefService.FindTag:output_type -> gitaly.FindTagResponse
+ 43, // 66: gitaly.RefService.FindAllRemoteBranches:output_type -> gitaly.FindAllRemoteBranchesResponse
+ 23, // 67: gitaly.RefService.RefExists:output_type -> gitaly.RefExistsResponse
+ 29, // 68: gitaly.RefService.FindBranch:output_type -> gitaly.FindBranchResponse
+ 31, // 69: gitaly.RefService.DeleteRefs:output_type -> gitaly.DeleteRefsResponse
+ 33, // 70: gitaly.RefService.ListBranchNamesContainingCommit:output_type -> gitaly.ListBranchNamesContainingCommitResponse
+ 35, // 71: gitaly.RefService.ListTagNamesContainingCommit:output_type -> gitaly.ListTagNamesContainingCommitResponse
+ 37, // 72: gitaly.RefService.GetTagSignatures:output_type -> gitaly.GetTagSignaturesResponse
+ 39, // 73: gitaly.RefService.GetTagMessages:output_type -> gitaly.GetTagMessagesResponse
+ 41, // 74: gitaly.RefService.ListNewCommits:output_type -> gitaly.ListNewCommitsResponse
+ 3, // 75: gitaly.RefService.ListNewBlobs:output_type -> gitaly.ListNewBlobsResponse
+ 45, // 76: gitaly.RefService.PackRefs:output_type -> gitaly.PackRefsResponse
+ 58, // [58:77] is the sub-list for method output_type
+ 39, // [39:58] is the sub-list for method input_type
+ 39, // [39:39] is the sub-list for extension type_name
+ 39, // [39:39] is the sub-list for extension extendee
+ 0, // [0:39] is the sub-list for field type_name
}
func init() { file_ref_proto_init() }
@@ -3392,7 +3606,7 @@ func file_ref_proto_init() {
}
}
file_ref_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*GetTagMessagesRequest); i {
+ switch v := v.(*GetTagSignaturesRequest); i {
case 0:
return &v.state
case 1:
@@ -3404,7 +3618,7 @@ func file_ref_proto_init() {
}
}
file_ref_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*GetTagMessagesResponse); i {
+ switch v := v.(*GetTagSignaturesResponse); i {
case 0:
return &v.state
case 1:
@@ -3416,7 +3630,7 @@ func file_ref_proto_init() {
}
}
file_ref_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListNewCommitsRequest); i {
+ switch v := v.(*GetTagMessagesRequest); i {
case 0:
return &v.state
case 1:
@@ -3428,7 +3642,7 @@ func file_ref_proto_init() {
}
}
file_ref_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ListNewCommitsResponse); i {
+ switch v := v.(*GetTagMessagesResponse); i {
case 0:
return &v.state
case 1:
@@ -3440,7 +3654,7 @@ func file_ref_proto_init() {
}
}
file_ref_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*FindAllRemoteBranchesRequest); i {
+ switch v := v.(*ListNewCommitsRequest); i {
case 0:
return &v.state
case 1:
@@ -3452,7 +3666,7 @@ func file_ref_proto_init() {
}
}
file_ref_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*FindAllRemoteBranchesResponse); i {
+ switch v := v.(*ListNewCommitsResponse); i {
case 0:
return &v.state
case 1:
@@ -3464,7 +3678,7 @@ func file_ref_proto_init() {
}
}
file_ref_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*PackRefsRequest); i {
+ switch v := v.(*FindAllRemoteBranchesRequest); i {
case 0:
return &v.state
case 1:
@@ -3476,7 +3690,7 @@ func file_ref_proto_init() {
}
}
file_ref_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*PackRefsResponse); i {
+ switch v := v.(*FindAllRemoteBranchesResponse); i {
case 0:
return &v.state
case 1:
@@ -3488,6 +3702,30 @@ func file_ref_proto_init() {
}
}
file_ref_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PackRefsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_ref_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PackRefsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_ref_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FindAllBranchesResponse_Branch); i {
case 0:
return &v.state
@@ -3499,6 +3737,18 @@ func file_ref_proto_init() {
return nil
}
}
+ file_ref_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetTagSignaturesResponse_TagSignature); 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{
@@ -3506,7 +3756,7 @@ func file_ref_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_ref_proto_rawDesc,
NumEnums: 2,
- NumMessages: 43,
+ NumMessages: 46,
NumExtensions: 0,
NumServices: 1,
},
diff --git a/proto/go/gitalypb/ref_grpc.pb.go b/proto/go/gitalypb/ref_grpc.pb.go
index 58db62602..d5634aef9 100644
--- a/proto/go/gitalypb/ref_grpc.pb.go
+++ b/proto/go/gitalypb/ref_grpc.pb.go
@@ -36,6 +36,11 @@ type RefServiceClient interface {
DeleteRefs(ctx context.Context, in *DeleteRefsRequest, opts ...grpc.CallOption) (*DeleteRefsResponse, error)
ListBranchNamesContainingCommit(ctx context.Context, in *ListBranchNamesContainingCommitRequest, opts ...grpc.CallOption) (RefService_ListBranchNamesContainingCommitClient, error)
ListTagNamesContainingCommit(ctx context.Context, in *ListTagNamesContainingCommitRequest, opts ...grpc.CallOption) (RefService_ListTagNamesContainingCommitClient, error)
+ // GetTagSignatures returns signatures for annotated tags resolved from a set of revisions. Revisions
+ // which don't resolve to an annotated tag are silently discarded. Revisions which cannot be resolved
+ // result in an error. Tags which are annotated but not signed will return a TagSignature response
+ // which has no signature, but its unsigned contents will still be returned.
+ GetTagSignatures(ctx context.Context, in *GetTagSignaturesRequest, opts ...grpc.CallOption) (RefService_GetTagSignaturesClient, error)
GetTagMessages(ctx context.Context, in *GetTagMessagesRequest, opts ...grpc.CallOption) (RefService_GetTagMessagesClient, error)
// Returns commits that are only reachable from the ref passed
ListNewCommits(ctx context.Context, in *ListNewCommitsRequest, opts ...grpc.CallOption) (RefService_ListNewCommitsClient, error)
@@ -361,8 +366,40 @@ func (x *refServiceListTagNamesContainingCommitClient) Recv() (*ListTagNamesCont
return m, nil
}
+func (c *refServiceClient) GetTagSignatures(ctx context.Context, in *GetTagSignaturesRequest, opts ...grpc.CallOption) (RefService_GetTagSignaturesClient, error) {
+ stream, err := c.cc.NewStream(ctx, &RefService_ServiceDesc.Streams[8], "/gitaly.RefService/GetTagSignatures", opts...)
+ if err != nil {
+ return nil, err
+ }
+ x := &refServiceGetTagSignaturesClient{stream}
+ if err := x.ClientStream.SendMsg(in); err != nil {
+ return nil, err
+ }
+ if err := x.ClientStream.CloseSend(); err != nil {
+ return nil, err
+ }
+ return x, nil
+}
+
+type RefService_GetTagSignaturesClient interface {
+ Recv() (*GetTagSignaturesResponse, error)
+ grpc.ClientStream
+}
+
+type refServiceGetTagSignaturesClient struct {
+ grpc.ClientStream
+}
+
+func (x *refServiceGetTagSignaturesClient) Recv() (*GetTagSignaturesResponse, error) {
+ m := new(GetTagSignaturesResponse)
+ if err := x.ClientStream.RecvMsg(m); err != nil {
+ return nil, err
+ }
+ return m, nil
+}
+
func (c *refServiceClient) GetTagMessages(ctx context.Context, in *GetTagMessagesRequest, opts ...grpc.CallOption) (RefService_GetTagMessagesClient, error) {
- stream, err := c.cc.NewStream(ctx, &RefService_ServiceDesc.Streams[8], "/gitaly.RefService/GetTagMessages", opts...)
+ stream, err := c.cc.NewStream(ctx, &RefService_ServiceDesc.Streams[9], "/gitaly.RefService/GetTagMessages", opts...)
if err != nil {
return nil, err
}
@@ -394,7 +431,7 @@ func (x *refServiceGetTagMessagesClient) Recv() (*GetTagMessagesResponse, error)
}
func (c *refServiceClient) ListNewCommits(ctx context.Context, in *ListNewCommitsRequest, opts ...grpc.CallOption) (RefService_ListNewCommitsClient, error) {
- stream, err := c.cc.NewStream(ctx, &RefService_ServiceDesc.Streams[9], "/gitaly.RefService/ListNewCommits", opts...)
+ stream, err := c.cc.NewStream(ctx, &RefService_ServiceDesc.Streams[10], "/gitaly.RefService/ListNewCommits", opts...)
if err != nil {
return nil, err
}
@@ -426,7 +463,7 @@ func (x *refServiceListNewCommitsClient) Recv() (*ListNewCommitsResponse, error)
}
func (c *refServiceClient) ListNewBlobs(ctx context.Context, in *ListNewBlobsRequest, opts ...grpc.CallOption) (RefService_ListNewBlobsClient, error) {
- stream, err := c.cc.NewStream(ctx, &RefService_ServiceDesc.Streams[10], "/gitaly.RefService/ListNewBlobs", opts...)
+ stream, err := c.cc.NewStream(ctx, &RefService_ServiceDesc.Streams[11], "/gitaly.RefService/ListNewBlobs", opts...)
if err != nil {
return nil, err
}
@@ -488,6 +525,11 @@ type RefServiceServer interface {
DeleteRefs(context.Context, *DeleteRefsRequest) (*DeleteRefsResponse, error)
ListBranchNamesContainingCommit(*ListBranchNamesContainingCommitRequest, RefService_ListBranchNamesContainingCommitServer) error
ListTagNamesContainingCommit(*ListTagNamesContainingCommitRequest, RefService_ListTagNamesContainingCommitServer) error
+ // GetTagSignatures returns signatures for annotated tags resolved from a set of revisions. Revisions
+ // which don't resolve to an annotated tag are silently discarded. Revisions which cannot be resolved
+ // result in an error. Tags which are annotated but not signed will return a TagSignature response
+ // which has no signature, but its unsigned contents will still be returned.
+ GetTagSignatures(*GetTagSignaturesRequest, RefService_GetTagSignaturesServer) error
GetTagMessages(*GetTagMessagesRequest, RefService_GetTagMessagesServer) error
// Returns commits that are only reachable from the ref passed
ListNewCommits(*ListNewCommitsRequest, RefService_ListNewCommitsServer) error
@@ -542,6 +584,9 @@ func (UnimplementedRefServiceServer) ListBranchNamesContainingCommit(*ListBranch
func (UnimplementedRefServiceServer) ListTagNamesContainingCommit(*ListTagNamesContainingCommitRequest, RefService_ListTagNamesContainingCommitServer) error {
return status.Errorf(codes.Unimplemented, "method ListTagNamesContainingCommit not implemented")
}
+func (UnimplementedRefServiceServer) GetTagSignatures(*GetTagSignaturesRequest, RefService_GetTagSignaturesServer) error {
+ return status.Errorf(codes.Unimplemented, "method GetTagSignatures not implemented")
+}
func (UnimplementedRefServiceServer) GetTagMessages(*GetTagMessagesRequest, RefService_GetTagMessagesServer) error {
return status.Errorf(codes.Unimplemented, "method GetTagMessages not implemented")
}
@@ -843,6 +888,27 @@ func (x *refServiceListTagNamesContainingCommitServer) Send(m *ListTagNamesConta
return x.ServerStream.SendMsg(m)
}
+func _RefService_GetTagSignatures_Handler(srv interface{}, stream grpc.ServerStream) error {
+ m := new(GetTagSignaturesRequest)
+ if err := stream.RecvMsg(m); err != nil {
+ return err
+ }
+ return srv.(RefServiceServer).GetTagSignatures(m, &refServiceGetTagSignaturesServer{stream})
+}
+
+type RefService_GetTagSignaturesServer interface {
+ Send(*GetTagSignaturesResponse) error
+ grpc.ServerStream
+}
+
+type refServiceGetTagSignaturesServer struct {
+ grpc.ServerStream
+}
+
+func (x *refServiceGetTagSignaturesServer) Send(m *GetTagSignaturesResponse) error {
+ return x.ServerStream.SendMsg(m)
+}
+
func _RefService_GetTagMessages_Handler(srv interface{}, stream grpc.ServerStream) error {
m := new(GetTagMessagesRequest)
if err := stream.RecvMsg(m); err != nil {
@@ -1002,6 +1068,11 @@ var RefService_ServiceDesc = grpc.ServiceDesc{
ServerStreams: true,
},
{
+ StreamName: "GetTagSignatures",
+ Handler: _RefService_GetTagSignatures_Handler,
+ ServerStreams: true,
+ },
+ {
StreamName: "GetTagMessages",
Handler: _RefService_GetTagMessages_Handler,
ServerStreams: true,
diff --git a/proto/ref.proto b/proto/ref.proto
index 7e4200969..122088302 100644
--- a/proto/ref.proto
+++ b/proto/ref.proto
@@ -88,6 +88,16 @@ service RefService {
};
}
+ // GetTagSignatures returns signatures for annotated tags resolved from a set of revisions. Revisions
+ // which don't resolve to an annotated tag are silently discarded. Revisions which cannot be resolved
+ // result in an error. Tags which are annotated but not signed will return a TagSignature response
+ // which has no signature, but its unsigned contents will still be returned.
+ rpc GetTagSignatures(GetTagSignaturesRequest) returns (stream GetTagSignaturesResponse) {
+ option (op_type) = {
+ op: ACCESSOR
+ };
+ }
+
rpc GetTagMessages(GetTagMessagesRequest) returns (stream GetTagMessagesResponse) {
option (op_type) = {
op: ACCESSOR
@@ -317,6 +327,37 @@ message ListTagNamesContainingCommitResponse {
repeated bytes tag_names = 2;
}
+// GetTagSignaturesRequest is a request for the GetTagSignatures RPC.
+message GetTagSignaturesRequest {
+ // Repository is the repository in which tag signatures should be looked up.
+ Repository repository = 1 [(target_repository)=true];
+ // TagRevisions is the set of revisions which that should be looked up. Revisions
+ // supports the syntax as specified by gitrevisions(7). All revisions are expected
+ // to resolve to annotated tag objects. At least one revision must be provided.
+ repeated string tag_revisions = 2;
+}
+
+// GetTagSignaturesResponse is a response for a GetTagSignatures request. Each response
+// may contain multiple TagSignatures. In case TagSignatures don't fit into a single
+// response, signatures will be batched in multiple responses.
+message GetTagSignaturesResponse {
+ // TagSignature represents the signature of a signed tag.
+ message TagSignature {
+ // TagId is the resolved object ID of the tag.
+ string tag_id = 1;
+ // Signature contains the cryptographic signature of the tag. If the tag is not
+ // cryptographically signed, then the signature is unset.
+ bytes signature = 2;
+ // Content contains the contents which are signed by the signature. Contents
+ // include both the commit message, but also the commit metadata like author and
+ // subject.
+ bytes content = 3;
+ }
+
+ // Signatures is the set of signatures found.
+ repeated TagSignature signatures = 1;
+}
+
message GetTagMessagesRequest {
reserved 2;
reserved "tag_names";
diff --git a/ruby/proto/gitaly/ref_pb.rb b/ruby/proto/gitaly/ref_pb.rb
index dcd0b55c6..086eaf9a4 100644
--- a/ruby/proto/gitaly/ref_pb.rb
+++ b/ruby/proto/gitaly/ref_pb.rb
@@ -154,6 +154,18 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
add_message "gitaly.ListTagNamesContainingCommitResponse" do
repeated :tag_names, :bytes, 2
end
+ add_message "gitaly.GetTagSignaturesRequest" do
+ optional :repository, :message, 1, "gitaly.Repository"
+ repeated :tag_revisions, :string, 2
+ end
+ add_message "gitaly.GetTagSignaturesResponse" do
+ repeated :signatures, :message, 1, "gitaly.GetTagSignaturesResponse.TagSignature"
+ end
+ add_message "gitaly.GetTagSignaturesResponse.TagSignature" do
+ optional :tag_id, :string, 1
+ optional :signature, :bytes, 2
+ optional :content, :bytes, 3
+ end
add_message "gitaly.GetTagMessagesRequest" do
optional :repository, :message, 1, "gitaly.Repository"
repeated :tag_ids, :string, 3
@@ -223,6 +235,9 @@ module Gitaly
ListBranchNamesContainingCommitResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.ListBranchNamesContainingCommitResponse").msgclass
ListTagNamesContainingCommitRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.ListTagNamesContainingCommitRequest").msgclass
ListTagNamesContainingCommitResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.ListTagNamesContainingCommitResponse").msgclass
+ GetTagSignaturesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.GetTagSignaturesRequest").msgclass
+ GetTagSignaturesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.GetTagSignaturesResponse").msgclass
+ GetTagSignaturesResponse::TagSignature = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.GetTagSignaturesResponse.TagSignature").msgclass
GetTagMessagesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.GetTagMessagesRequest").msgclass
GetTagMessagesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.GetTagMessagesResponse").msgclass
ListNewCommitsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.ListNewCommitsRequest").msgclass
diff --git a/ruby/proto/gitaly/ref_services_pb.rb b/ruby/proto/gitaly/ref_services_pb.rb
index a3979c5e3..ec28e4e27 100644
--- a/ruby/proto/gitaly/ref_services_pb.rb
+++ b/ruby/proto/gitaly/ref_services_pb.rb
@@ -32,6 +32,11 @@ module Gitaly
rpc :DeleteRefs, Gitaly::DeleteRefsRequest, Gitaly::DeleteRefsResponse
rpc :ListBranchNamesContainingCommit, Gitaly::ListBranchNamesContainingCommitRequest, stream(Gitaly::ListBranchNamesContainingCommitResponse)
rpc :ListTagNamesContainingCommit, Gitaly::ListTagNamesContainingCommitRequest, stream(Gitaly::ListTagNamesContainingCommitResponse)
+ # GetTagSignatures returns signatures for annotated tags resolved from a set of revisions. Revisions
+ # which don't resolve to an annotated tag are silently discarded. Revisions which cannot be resolved
+ # result in an error. Tags which are annotated but not signed will return a TagSignature response
+ # which has no signature, but its unsigned contents will still be returned.
+ rpc :GetTagSignatures, Gitaly::GetTagSignaturesRequest, stream(Gitaly::GetTagSignaturesResponse)
rpc :GetTagMessages, Gitaly::GetTagMessagesRequest, stream(Gitaly::GetTagMessagesResponse)
# Returns commits that are only reachable from the ref passed
rpc :ListNewCommits, Gitaly::ListNewCommitsRequest, stream(Gitaly::ListNewCommitsResponse)