blob: d6a510efe7f3d355496ab7287b6ee8478279f808 [file] [log] [blame]
// Copyright 2017 The LUCI Authors.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.31.0
// protoc v3.21.12
// source: go.chromium.org/luci/cipd/api/cipd/v1/repo.proto
package api
import (
status "google.golang.org/genproto/googleapis/rpc/status"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
emptypb "google.golang.org/protobuf/types/known/emptypb"
structpb "google.golang.org/protobuf/types/known/structpb"
timestamppb "google.golang.org/protobuf/types/known/timestamppb"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// Roles used in package prefix ACLs.
//
// A user can have one or more such roles for a package prefix. They get
// inherited by all subprefixes.
type Role int32
const (
Role_ROLE_UNSPECIFIED Role = 0
// Readers can fetch package instances and package metadata (e.g. list of
// instances, all tags, all refs), but not prefix metadata (e.g. ACLs).
Role_READER Role = 1
// Writers can do everything that readers can, plus create new packages,
// upload package instances, attach tags, move refs.
Role_WRITER Role = 2
// Owners can do everything that writers can, plus read prefix metadata for
// all parent prefixes and all subprefixes, and modify prefix metadata for
// all subprefixes.
Role_OWNER Role = 3
)
// Enum value maps for Role.
var (
Role_name = map[int32]string{
0: "ROLE_UNSPECIFIED",
1: "READER",
2: "WRITER",
3: "OWNER",
}
Role_value = map[string]int32{
"ROLE_UNSPECIFIED": 0,
"READER": 1,
"WRITER": 2,
"OWNER": 3,
}
)
func (x Role) Enum() *Role {
p := new(Role)
*p = x
return p
}
func (x Role) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (Role) Descriptor() protoreflect.EnumDescriptor {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_enumTypes[0].Descriptor()
}
func (Role) Type() protoreflect.EnumType {
return &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_enumTypes[0]
}
func (x Role) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use Role.Descriptor instead.
func (Role) EnumDescriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{0}
}
// RegistrationStatus is part of RegisterInstance RPC response.
type RegistrationStatus int32
const (
RegistrationStatus_REGISTRATION_STATUS_UNSPECIFIED RegistrationStatus = 0
RegistrationStatus_REGISTERED RegistrationStatus = 1 // the instance was successfully registered just now
RegistrationStatus_ALREADY_REGISTERED RegistrationStatus = 2 // the instance already exists, this is OK
RegistrationStatus_NOT_UPLOADED RegistrationStatus = 3 // the instance should be uploaded to Storage first
)
// Enum value maps for RegistrationStatus.
var (
RegistrationStatus_name = map[int32]string{
0: "REGISTRATION_STATUS_UNSPECIFIED",
1: "REGISTERED",
2: "ALREADY_REGISTERED",
3: "NOT_UPLOADED",
}
RegistrationStatus_value = map[string]int32{
"REGISTRATION_STATUS_UNSPECIFIED": 0,
"REGISTERED": 1,
"ALREADY_REGISTERED": 2,
"NOT_UPLOADED": 3,
}
)
func (x RegistrationStatus) Enum() *RegistrationStatus {
p := new(RegistrationStatus)
*p = x
return p
}
func (x RegistrationStatus) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (RegistrationStatus) Descriptor() protoreflect.EnumDescriptor {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_enumTypes[1].Descriptor()
}
func (RegistrationStatus) Type() protoreflect.EnumType {
return &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_enumTypes[1]
}
func (x RegistrationStatus) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use RegistrationStatus.Descriptor instead.
func (RegistrationStatus) EnumDescriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{1}
}
type Processor_State int32
const (
Processor_STATE_UNSPECIFIED Processor_State = 0
Processor_PENDING Processor_State = 1
Processor_SUCCEEDED Processor_State = 2
Processor_FAILED Processor_State = 3
)
// Enum value maps for Processor_State.
var (
Processor_State_name = map[int32]string{
0: "STATE_UNSPECIFIED",
1: "PENDING",
2: "SUCCEEDED",
3: "FAILED",
}
Processor_State_value = map[string]int32{
"STATE_UNSPECIFIED": 0,
"PENDING": 1,
"SUCCEEDED": 2,
"FAILED": 3,
}
)
func (x Processor_State) Enum() *Processor_State {
p := new(Processor_State)
*p = x
return p
}
func (x Processor_State) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (Processor_State) Descriptor() protoreflect.EnumDescriptor {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_enumTypes[2].Descriptor()
}
func (Processor_State) Type() protoreflect.EnumType {
return &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_enumTypes[2]
}
func (x Processor_State) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use Processor_State.Descriptor instead.
func (Processor_State) EnumDescriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{27, 0}
}
type PrefixRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// A prefix within the repository, e.g. "a/b/c".
Prefix string `protobuf:"bytes,1,opt,name=prefix,proto3" json:"prefix,omitempty"`
}
func (x *PrefixRequest) Reset() {
*x = PrefixRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PrefixRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PrefixRequest) ProtoMessage() {}
func (x *PrefixRequest) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PrefixRequest.ProtoReflect.Descriptor instead.
func (*PrefixRequest) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{0}
}
func (x *PrefixRequest) GetPrefix() string {
if x != nil {
return x.Prefix
}
return ""
}
// PrefixMetadata is metadata defined at some concrete package prefix.
//
// It applies to this prefix and all subprefixes, recursively.
type PrefixMetadata struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Prefix this metadata is defined at, e.g. "a/b/c".
//
// Note: there's no metadata at the root, so prefix must never be "".
Prefix string `protobuf:"bytes,1,opt,name=prefix,proto3" json:"prefix,omitempty"`
// An opaque string that identifies a particular version of this metadata.
//
// Used by UpdatePrefixMetadata to prevent an accidental overwrite of changes.
Fingerprint string `protobuf:"bytes,2,opt,name=fingerprint,proto3" json:"fingerprint,omitempty"`
// When the metadata was modified the last time.
//
// Managed by the server, ignored when passed to UpdatePrefixMetadata.
UpdateTime *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
// Identity string of whoever modified the metadata the last time.
//
// Managed by the server, ignored when passed to UpdatePrefixMetadata.
UpdateUser string `protobuf:"bytes,4,opt,name=update_user,json=updateUser,proto3" json:"update_user,omitempty"`
// ACLs that apply to this prefix and all subprefixes, as a mapping from
// a role to a list of users and groups that have it.
Acls []*PrefixMetadata_ACL `protobuf:"bytes,5,rep,name=acls,proto3" json:"acls,omitempty"`
}
func (x *PrefixMetadata) Reset() {
*x = PrefixMetadata{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PrefixMetadata) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PrefixMetadata) ProtoMessage() {}
func (x *PrefixMetadata) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PrefixMetadata.ProtoReflect.Descriptor instead.
func (*PrefixMetadata) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{1}
}
func (x *PrefixMetadata) GetPrefix() string {
if x != nil {
return x.Prefix
}
return ""
}
func (x *PrefixMetadata) GetFingerprint() string {
if x != nil {
return x.Fingerprint
}
return ""
}
func (x *PrefixMetadata) GetUpdateTime() *timestamppb.Timestamp {
if x != nil {
return x.UpdateTime
}
return nil
}
func (x *PrefixMetadata) GetUpdateUser() string {
if x != nil {
return x.UpdateUser
}
return ""
}
func (x *PrefixMetadata) GetAcls() []*PrefixMetadata_ACL {
if x != nil {
return x.Acls
}
return nil
}
type InheritedPrefixMetadata struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Per-prefix metadata that applies to a prefix, ordered by prefix length.
//
// For example, when requesting metadata for prefix "a/b/c/d" the reply may
// contain entries for "a", "a/b", "a/b/c/d" (in that order, with "a/b/c"
// skipped in this example as not having any metadata attached).
PerPrefixMetadata []*PrefixMetadata `protobuf:"bytes,1,rep,name=per_prefix_metadata,json=perPrefixMetadata,proto3" json:"per_prefix_metadata,omitempty"`
}
func (x *InheritedPrefixMetadata) Reset() {
*x = InheritedPrefixMetadata{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *InheritedPrefixMetadata) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*InheritedPrefixMetadata) ProtoMessage() {}
func (x *InheritedPrefixMetadata) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use InheritedPrefixMetadata.ProtoReflect.Descriptor instead.
func (*InheritedPrefixMetadata) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{2}
}
func (x *InheritedPrefixMetadata) GetPerPrefixMetadata() []*PrefixMetadata {
if x != nil {
return x.PerPrefixMetadata
}
return nil
}
type RolesInPrefixResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Unordered set or roles the caller has in the requested prefix.
Roles []*RolesInPrefixResponse_RoleInPrefix `protobuf:"bytes,1,rep,name=roles,proto3" json:"roles,omitempty"`
}
func (x *RolesInPrefixResponse) Reset() {
*x = RolesInPrefixResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RolesInPrefixResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RolesInPrefixResponse) ProtoMessage() {}
func (x *RolesInPrefixResponse) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use RolesInPrefixResponse.ProtoReflect.Descriptor instead.
func (*RolesInPrefixResponse) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{3}
}
func (x *RolesInPrefixResponse) GetRoles() []*RolesInPrefixResponse_RoleInPrefix {
if x != nil {
return x.Roles
}
return nil
}
type ListPrefixRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// A prefix within the repository to list, e.g. "a/b/c". Empty prefix is also
// accepted: it means "root of the repository".
Prefix string `protobuf:"bytes,1,opt,name=prefix,proto3" json:"prefix,omitempty"`
// If false, list only direct descendants of the prefix, otherwise all.
Recursive bool `protobuf:"varint,2,opt,name=recursive,proto3" json:"recursive,omitempty"`
// If true, include hidden packages in the result.
IncludeHidden bool `protobuf:"varint,3,opt,name=include_hidden,json=includeHidden,proto3" json:"include_hidden,omitempty"`
}
func (x *ListPrefixRequest) Reset() {
*x = ListPrefixRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListPrefixRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListPrefixRequest) ProtoMessage() {}
func (x *ListPrefixRequest) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListPrefixRequest.ProtoReflect.Descriptor instead.
func (*ListPrefixRequest) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{4}
}
func (x *ListPrefixRequest) GetPrefix() string {
if x != nil {
return x.Prefix
}
return ""
}
func (x *ListPrefixRequest) GetRecursive() bool {
if x != nil {
return x.Recursive
}
return false
}
func (x *ListPrefixRequest) GetIncludeHidden() bool {
if x != nil {
return x.IncludeHidden
}
return false
}
type ListPrefixResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Lexicographically sorted list of full packages names.
Packages []string `protobuf:"bytes,1,rep,name=packages,proto3" json:"packages,omitempty"`
// Lexicographically sorted list of child prefixes (without trailing '/').
Prefixes []string `protobuf:"bytes,2,rep,name=prefixes,proto3" json:"prefixes,omitempty"`
}
func (x *ListPrefixResponse) Reset() {
*x = ListPrefixResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListPrefixResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListPrefixResponse) ProtoMessage() {}
func (x *ListPrefixResponse) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListPrefixResponse.ProtoReflect.Descriptor instead.
func (*ListPrefixResponse) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{5}
}
func (x *ListPrefixResponse) GetPackages() []string {
if x != nil {
return x.Packages
}
return nil
}
func (x *ListPrefixResponse) GetPrefixes() []string {
if x != nil {
return x.Prefixes
}
return nil
}
// PackageRequest names a package and nothing else.
type PackageRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
}
func (x *PackageRequest) Reset() {
*x = PackageRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PackageRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PackageRequest) ProtoMessage() {}
func (x *PackageRequest) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[6]
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 PackageRequest.ProtoReflect.Descriptor instead.
func (*PackageRequest) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{6}
}
func (x *PackageRequest) GetPackage() string {
if x != nil {
return x.Package
}
return ""
}
// Instance is a pointer to an instance of some package.
type Instance struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// A name of the package, e.g. "a/b/c/d".
Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
// A reference to the instance file in the storage.
Instance *ObjectRef `protobuf:"bytes,2,opt,name=instance,proto3" json:"instance,omitempty"`
// User who registered the instance (output only).
RegisteredBy string `protobuf:"bytes,3,opt,name=registered_by,json=registeredBy,proto3" json:"registered_by,omitempty"`
// When the instance was registered (output only).
RegisteredTs *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=registered_ts,json=registeredTs,proto3" json:"registered_ts,omitempty"`
}
func (x *Instance) Reset() {
*x = Instance{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Instance) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Instance) ProtoMessage() {}
func (x *Instance) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[7]
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 Instance.ProtoReflect.Descriptor instead.
func (*Instance) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{7}
}
func (x *Instance) GetPackage() string {
if x != nil {
return x.Package
}
return ""
}
func (x *Instance) GetInstance() *ObjectRef {
if x != nil {
return x.Instance
}
return nil
}
func (x *Instance) GetRegisteredBy() string {
if x != nil {
return x.RegisteredBy
}
return ""
}
func (x *Instance) GetRegisteredTs() *timestamppb.Timestamp {
if x != nil {
return x.RegisteredTs
}
return nil
}
type RegisterInstanceResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Outcome of the operation, see the enum for possibilities.
//
// Defines what other fields are present.
Status RegistrationStatus `protobuf:"varint,1,opt,name=status,proto3,enum=cipd.RegistrationStatus" json:"status,omitempty"`
// For statuses REGISTERED and ALREADY_REGISTERED contains details about the
// instance. Not set for NOT_UPLOADED status.
Instance *Instance `protobuf:"bytes,2,opt,name=instance,proto3" json:"instance,omitempty"`
// For status NOT_UPLOADED contains a new upload operation that can be used
// together with Storage service to upload the instance file. Not set for
// other statuses.
UploadOp *UploadOperation `protobuf:"bytes,3,opt,name=upload_op,json=uploadOp,proto3" json:"upload_op,omitempty"`
}
func (x *RegisterInstanceResponse) Reset() {
*x = RegisterInstanceResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RegisterInstanceResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RegisterInstanceResponse) ProtoMessage() {}
func (x *RegisterInstanceResponse) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[8]
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 RegisterInstanceResponse.ProtoReflect.Descriptor instead.
func (*RegisterInstanceResponse) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{8}
}
func (x *RegisterInstanceResponse) GetStatus() RegistrationStatus {
if x != nil {
return x.Status
}
return RegistrationStatus_REGISTRATION_STATUS_UNSPECIFIED
}
func (x *RegisterInstanceResponse) GetInstance() *Instance {
if x != nil {
return x.Instance
}
return nil
}
func (x *RegisterInstanceResponse) GetUploadOp() *UploadOperation {
if x != nil {
return x.UploadOp
}
return nil
}
type ListInstancesRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Name of a package to list instances of.
Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
// Number of instances to return on one page, default is 100.
PageSize int32 `protobuf:"varint,20,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
// Value of 'next_page_token' from the previous response.
//
// Can be used to resume fetching.
PageToken string `protobuf:"bytes,21,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
}
func (x *ListInstancesRequest) Reset() {
*x = ListInstancesRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListInstancesRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListInstancesRequest) ProtoMessage() {}
func (x *ListInstancesRequest) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[9]
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 ListInstancesRequest.ProtoReflect.Descriptor instead.
func (*ListInstancesRequest) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{9}
}
func (x *ListInstancesRequest) GetPackage() string {
if x != nil {
return x.Package
}
return ""
}
func (x *ListInstancesRequest) GetPageSize() int32 {
if x != nil {
return x.PageSize
}
return 0
}
func (x *ListInstancesRequest) GetPageToken() string {
if x != nil {
return x.PageToken
}
return ""
}
type ListInstancesResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Package instances, sorted by registration time, most recent first.
Instances []*Instance `protobuf:"bytes,1,rep,name=instances,proto3" json:"instances,omitempty"`
// Value to pass as 'page_token' in ListInstancesRequest to resume fetching or
// empty string if there's no more results.
NextPageToken string `protobuf:"bytes,20,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
}
func (x *ListInstancesResponse) Reset() {
*x = ListInstancesResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListInstancesResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListInstancesResponse) ProtoMessage() {}
func (x *ListInstancesResponse) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[10]
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 ListInstancesResponse.ProtoReflect.Descriptor instead.
func (*ListInstancesResponse) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{10}
}
func (x *ListInstancesResponse) GetInstances() []*Instance {
if x != nil {
return x.Instances
}
return nil
}
func (x *ListInstancesResponse) GetNextPageToken() string {
if x != nil {
return x.NextPageToken
}
return ""
}
type SearchInstancesRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Name of a package to query instances of (required).
Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
// Tags to look for (the found instances have ALL these tags attached).
//
// Due to internal limitations, the query is most efficient only when it
// specifies one tag to filter by. All additional tags are checked in a
// separate step after the initial query. For that reason when searching for
// multiple tags it is better to specify the most limiting tags first.
Tags []*Tag `protobuf:"bytes,2,rep,name=tags,proto3" json:"tags,omitempty"`
// Number of instances to return on one page, default is 100.
PageSize int32 `protobuf:"varint,20,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
// Value of 'next_page_token' from the previous response.
//
// Can be used to resume fetching.
PageToken string `protobuf:"bytes,21,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
}
func (x *SearchInstancesRequest) Reset() {
*x = SearchInstancesRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SearchInstancesRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SearchInstancesRequest) ProtoMessage() {}
func (x *SearchInstancesRequest) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[11]
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 SearchInstancesRequest.ProtoReflect.Descriptor instead.
func (*SearchInstancesRequest) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{11}
}
func (x *SearchInstancesRequest) GetPackage() string {
if x != nil {
return x.Package
}
return ""
}
func (x *SearchInstancesRequest) GetTags() []*Tag {
if x != nil {
return x.Tags
}
return nil
}
func (x *SearchInstancesRequest) GetPageSize() int32 {
if x != nil {
return x.PageSize
}
return 0
}
func (x *SearchInstancesRequest) GetPageToken() string {
if x != nil {
return x.PageToken
}
return ""
}
type SearchInstancesResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Package instances, sorted by registration time, most recent first.
Instances []*Instance `protobuf:"bytes,1,rep,name=instances,proto3" json:"instances,omitempty"`
// Value to pass as 'page_token' in SearchInstancesRequest to resume fetching
// or empty string if there's no more results.
NextPageToken string `protobuf:"bytes,20,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
}
func (x *SearchInstancesResponse) Reset() {
*x = SearchInstancesResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SearchInstancesResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SearchInstancesResponse) ProtoMessage() {}
func (x *SearchInstancesResponse) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[12]
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 SearchInstancesResponse.ProtoReflect.Descriptor instead.
func (*SearchInstancesResponse) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{12}
}
func (x *SearchInstancesResponse) GetInstances() []*Instance {
if x != nil {
return x.Instances
}
return nil
}
func (x *SearchInstancesResponse) GetNextPageToken() string {
if x != nil {
return x.NextPageToken
}
return ""
}
// Ref is a mutable named pointer to some package instance that can be used
// as a version identifier.
type Ref struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Name of the ref, e.g. "latest".
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Name of the package where the ref is defined.
Package string `protobuf:"bytes,2,opt,name=package,proto3" json:"package,omitempty"`
// A package instance the ref is pointing to.
Instance *ObjectRef `protobuf:"bytes,3,opt,name=instance,proto3" json:"instance,omitempty"`
// User who modified this ref the last time (output only).
ModifiedBy string `protobuf:"bytes,4,opt,name=modified_by,json=modifiedBy,proto3" json:"modified_by,omitempty"`
// When the ref was modified the last time (output only).
ModifiedTs *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=modified_ts,json=modifiedTs,proto3" json:"modified_ts,omitempty"`
}
func (x *Ref) Reset() {
*x = Ref{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Ref) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Ref) ProtoMessage() {}
func (x *Ref) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[13]
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 Ref.ProtoReflect.Descriptor instead.
func (*Ref) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{13}
}
func (x *Ref) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *Ref) GetPackage() string {
if x != nil {
return x.Package
}
return ""
}
func (x *Ref) GetInstance() *ObjectRef {
if x != nil {
return x.Instance
}
return nil
}
func (x *Ref) GetModifiedBy() string {
if x != nil {
return x.ModifiedBy
}
return ""
}
func (x *Ref) GetModifiedTs() *timestamppb.Timestamp {
if x != nil {
return x.ModifiedTs
}
return nil
}
type DeleteRefRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Name of the ref, e.g. "latest".
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Name of the package where the ref is defined.
Package string `protobuf:"bytes,2,opt,name=package,proto3" json:"package,omitempty"`
}
func (x *DeleteRefRequest) Reset() {
*x = DeleteRefRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DeleteRefRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DeleteRefRequest) ProtoMessage() {}
func (x *DeleteRefRequest) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[14]
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 DeleteRefRequest.ProtoReflect.Descriptor instead.
func (*DeleteRefRequest) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{14}
}
func (x *DeleteRefRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *DeleteRefRequest) GetPackage() string {
if x != nil {
return x.Package
}
return ""
}
type ListRefsRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Name of a package to list refs of.
Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
}
func (x *ListRefsRequest) Reset() {
*x = ListRefsRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListRefsRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListRefsRequest) ProtoMessage() {}
func (x *ListRefsRequest) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[15]
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 ListRefsRequest.ProtoReflect.Descriptor instead.
func (*ListRefsRequest) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{15}
}
func (x *ListRefsRequest) GetPackage() string {
if x != nil {
return x.Package
}
return ""
}
type ListRefsResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Package refs, sorted by modification time, most recently touched first.
Refs []*Ref `protobuf:"bytes,1,rep,name=refs,proto3" json:"refs,omitempty"`
}
func (x *ListRefsResponse) Reset() {
*x = ListRefsResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListRefsResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListRefsResponse) ProtoMessage() {}
func (x *ListRefsResponse) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[16]
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 ListRefsResponse.ProtoReflect.Descriptor instead.
func (*ListRefsResponse) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{16}
}
func (x *ListRefsResponse) GetRefs() []*Ref {
if x != nil {
return x.Refs
}
return nil
}
// Tag is a key:value pair attached to some instance.
//
// Keys don't have to be unique, only the full pair should. For example,
// it is fine to have "version:1" and "version:2" tags attached to the same
// instance.
//
// The total length of the tag (as "key:value" pair) should be less that 400
// bytes.
type Tag struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Key is a lowercase string matching [a-z0-9_\-]+.
Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
// Value is a string matching [A-Za-z0-9$()*+,\-./:;<=>@\\_{}~ ]+.
Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
// User that attached this tag (output only).
AttachedBy string `protobuf:"bytes,3,opt,name=attached_by,json=attachedBy,proto3" json:"attached_by,omitempty"`
// When the tag was attached (output only).
AttachedTs *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=attached_ts,json=attachedTs,proto3" json:"attached_ts,omitempty"`
}
func (x *Tag) Reset() {
*x = Tag{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[17]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Tag) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Tag) ProtoMessage() {}
func (x *Tag) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[17]
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 Tag.ProtoReflect.Descriptor instead.
func (*Tag) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{17}
}
func (x *Tag) GetKey() string {
if x != nil {
return x.Key
}
return ""
}
func (x *Tag) GetValue() string {
if x != nil {
return x.Value
}
return ""
}
func (x *Tag) GetAttachedBy() string {
if x != nil {
return x.AttachedBy
}
return ""
}
func (x *Tag) GetAttachedTs() *timestamppb.Timestamp {
if x != nil {
return x.AttachedTs
}
return nil
}
type AttachTagsRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The package that holds the instance we attach tags to.
Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
// The instance we attach tags to.
Instance *ObjectRef `protobuf:"bytes,2,opt,name=instance,proto3" json:"instance,omitempty"`
// One or more tags to attach (order doesn't matter).
Tags []*Tag `protobuf:"bytes,3,rep,name=tags,proto3" json:"tags,omitempty"`
}
func (x *AttachTagsRequest) Reset() {
*x = AttachTagsRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[18]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AttachTagsRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AttachTagsRequest) ProtoMessage() {}
func (x *AttachTagsRequest) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[18]
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 AttachTagsRequest.ProtoReflect.Descriptor instead.
func (*AttachTagsRequest) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{18}
}
func (x *AttachTagsRequest) GetPackage() string {
if x != nil {
return x.Package
}
return ""
}
func (x *AttachTagsRequest) GetInstance() *ObjectRef {
if x != nil {
return x.Instance
}
return nil
}
func (x *AttachTagsRequest) GetTags() []*Tag {
if x != nil {
return x.Tags
}
return nil
}
type DetachTagsRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The package that holds the instance we detach tags from.
Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
// The instance we detach tags from.
Instance *ObjectRef `protobuf:"bytes,2,opt,name=instance,proto3" json:"instance,omitempty"`
// One or more tags to detach (order doesn't matter).
Tags []*Tag `protobuf:"bytes,3,rep,name=tags,proto3" json:"tags,omitempty"`
}
func (x *DetachTagsRequest) Reset() {
*x = DetachTagsRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[19]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DetachTagsRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DetachTagsRequest) ProtoMessage() {}
func (x *DetachTagsRequest) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[19]
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 DetachTagsRequest.ProtoReflect.Descriptor instead.
func (*DetachTagsRequest) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{19}
}
func (x *DetachTagsRequest) GetPackage() string {
if x != nil {
return x.Package
}
return ""
}
func (x *DetachTagsRequest) GetInstance() *ObjectRef {
if x != nil {
return x.Instance
}
return nil
}
func (x *DetachTagsRequest) GetTags() []*Tag {
if x != nil {
return x.Tags
}
return nil
}
type InstanceMetadata struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Key is a lowercase string matching [a-z0-9_\-]{1,400}.
Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
// Value is an arbitrary byte blob smaller than 512 Kb.
Value []byte `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
// Optional MIME content type of the metadata value, primarily for UI.
ContentType string `protobuf:"bytes,3,opt,name=content_type,json=contentType,proto3" json:"content_type,omitempty"`
// Fingerprint identifies this metadata entry.
//
// It is the first 16 bytes of SHA256("<key>:<value>") in lowercase hex
// encoding (i.e. it is 32 lowercase hex characters).
//
// Populated by the server in all responses. Ignored in AttachMetadataRequest,
// optionally used in DetachMetadataRequest.
Fingerprint string `protobuf:"bytes,4,opt,name=fingerprint,proto3" json:"fingerprint,omitempty"`
// User that attached this metadata (output only).
AttachedBy string `protobuf:"bytes,5,opt,name=attached_by,json=attachedBy,proto3" json:"attached_by,omitempty"`
// When the metadata was attached (output only).
AttachedTs *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=attached_ts,json=attachedTs,proto3" json:"attached_ts,omitempty"`
}
func (x *InstanceMetadata) Reset() {
*x = InstanceMetadata{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[20]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *InstanceMetadata) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*InstanceMetadata) ProtoMessage() {}
func (x *InstanceMetadata) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[20]
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 InstanceMetadata.ProtoReflect.Descriptor instead.
func (*InstanceMetadata) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{20}
}
func (x *InstanceMetadata) GetKey() string {
if x != nil {
return x.Key
}
return ""
}
func (x *InstanceMetadata) GetValue() []byte {
if x != nil {
return x.Value
}
return nil
}
func (x *InstanceMetadata) GetContentType() string {
if x != nil {
return x.ContentType
}
return ""
}
func (x *InstanceMetadata) GetFingerprint() string {
if x != nil {
return x.Fingerprint
}
return ""
}
func (x *InstanceMetadata) GetAttachedBy() string {
if x != nil {
return x.AttachedBy
}
return ""
}
func (x *InstanceMetadata) GetAttachedTs() *timestamppb.Timestamp {
if x != nil {
return x.AttachedTs
}
return nil
}
type AttachMetadataRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The package that holds the instance we attach metadata to.
Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
// The instance we attach metadata to.
Instance *ObjectRef `protobuf:"bytes,2,opt,name=instance,proto3" json:"instance,omitempty"`
// One or more metadata entries to attach.
Metadata []*InstanceMetadata `protobuf:"bytes,3,rep,name=metadata,proto3" json:"metadata,omitempty"`
}
func (x *AttachMetadataRequest) Reset() {
*x = AttachMetadataRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[21]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AttachMetadataRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AttachMetadataRequest) ProtoMessage() {}
func (x *AttachMetadataRequest) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[21]
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 AttachMetadataRequest.ProtoReflect.Descriptor instead.
func (*AttachMetadataRequest) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{21}
}
func (x *AttachMetadataRequest) GetPackage() string {
if x != nil {
return x.Package
}
return ""
}
func (x *AttachMetadataRequest) GetInstance() *ObjectRef {
if x != nil {
return x.Instance
}
return nil
}
func (x *AttachMetadataRequest) GetMetadata() []*InstanceMetadata {
if x != nil {
return x.Metadata
}
return nil
}
type DetachMetadataRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The package that holds the instance we detach metadata from.
Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
// The instance we detach metadata from.
Instance *ObjectRef `protobuf:"bytes,2,opt,name=instance,proto3" json:"instance,omitempty"`
// Entries to detach: only 'fingerprint' or 'key'+'value' are used.
Metadata []*InstanceMetadata `protobuf:"bytes,3,rep,name=metadata,proto3" json:"metadata,omitempty"`
}
func (x *DetachMetadataRequest) Reset() {
*x = DetachMetadataRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[22]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DetachMetadataRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DetachMetadataRequest) ProtoMessage() {}
func (x *DetachMetadataRequest) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[22]
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 DetachMetadataRequest.ProtoReflect.Descriptor instead.
func (*DetachMetadataRequest) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{22}
}
func (x *DetachMetadataRequest) GetPackage() string {
if x != nil {
return x.Package
}
return ""
}
func (x *DetachMetadataRequest) GetInstance() *ObjectRef {
if x != nil {
return x.Instance
}
return nil
}
func (x *DetachMetadataRequest) GetMetadata() []*InstanceMetadata {
if x != nil {
return x.Metadata
}
return nil
}
type ListMetadataRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The package that holds the instance we list metadata of.
Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
// The instance to list metadata of.
Instance *ObjectRef `protobuf:"bytes,2,opt,name=instance,proto3" json:"instance,omitempty"`
// Metadata keys to limit the listing to or empty to list all metadata.
Keys []string `protobuf:"bytes,3,rep,name=keys,proto3" json:"keys,omitempty"`
// Number of results to return on one page. Ignored for now.
PageSize int32 `protobuf:"varint,20,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
// Value of 'next_page_token' from the previous response.
PageToken string `protobuf:"bytes,21,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
}
func (x *ListMetadataRequest) Reset() {
*x = ListMetadataRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[23]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListMetadataRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListMetadataRequest) ProtoMessage() {}
func (x *ListMetadataRequest) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[23]
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 ListMetadataRequest.ProtoReflect.Descriptor instead.
func (*ListMetadataRequest) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{23}
}
func (x *ListMetadataRequest) GetPackage() string {
if x != nil {
return x.Package
}
return ""
}
func (x *ListMetadataRequest) GetInstance() *ObjectRef {
if x != nil {
return x.Instance
}
return nil
}
func (x *ListMetadataRequest) GetKeys() []string {
if x != nil {
return x.Keys
}
return nil
}
func (x *ListMetadataRequest) GetPageSize() int32 {
if x != nil {
return x.PageSize
}
return 0
}
func (x *ListMetadataRequest) GetPageToken() string {
if x != nil {
return x.PageToken
}
return ""
}
type ListMetadataResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Discovered metadata ordered by 'attached_ts' (the most recent first).
Metadata []*InstanceMetadata `protobuf:"bytes,1,rep,name=metadata,proto3" json:"metadata,omitempty"`
// Value to pass as 'page_token' in ListMetadataRequest to resume fetching or
// an empty string if there's no more results.
NextPageToken string `protobuf:"bytes,20,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
}
func (x *ListMetadataResponse) Reset() {
*x = ListMetadataResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[24]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListMetadataResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListMetadataResponse) ProtoMessage() {}
func (x *ListMetadataResponse) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[24]
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 ListMetadataResponse.ProtoReflect.Descriptor instead.
func (*ListMetadataResponse) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{24}
}
func (x *ListMetadataResponse) GetMetadata() []*InstanceMetadata {
if x != nil {
return x.Metadata
}
return nil
}
func (x *ListMetadataResponse) GetNextPageToken() string {
if x != nil {
return x.NextPageToken
}
return ""
}
type ResolveVersionRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The package that contains the instance we are resolving version of.
Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
// The version string to resolve, see ResolveVersion for details.
Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
}
func (x *ResolveVersionRequest) Reset() {
*x = ResolveVersionRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[25]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ResolveVersionRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ResolveVersionRequest) ProtoMessage() {}
func (x *ResolveVersionRequest) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[25]
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 ResolveVersionRequest.ProtoReflect.Descriptor instead.
func (*ResolveVersionRequest) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{25}
}
func (x *ResolveVersionRequest) GetPackage() string {
if x != nil {
return x.Package
}
return ""
}
func (x *ResolveVersionRequest) GetVersion() string {
if x != nil {
return x.Version
}
return ""
}
type GetInstanceURLRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The package that holds the instance we want to get URL of.
Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
// The instance we want to get URL of.
Instance *ObjectRef `protobuf:"bytes,2,opt,name=instance,proto3" json:"instance,omitempty"`
}
func (x *GetInstanceURLRequest) Reset() {
*x = GetInstanceURLRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[26]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetInstanceURLRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetInstanceURLRequest) ProtoMessage() {}
func (x *GetInstanceURLRequest) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[26]
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 GetInstanceURLRequest.ProtoReflect.Descriptor instead.
func (*GetInstanceURLRequest) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{26}
}
func (x *GetInstanceURLRequest) GetPackage() string {
if x != nil {
return x.Package
}
return ""
}
func (x *GetInstanceURLRequest) GetInstance() *ObjectRef {
if x != nil {
return x.Instance
}
return nil
}
// Processor describes a state of some post-registration processing step
// performed on an instance.
type Processor struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Internal identifier of the processor, e.g. "cipd_client_binary:v1"
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
// The state of this processor, see the enum.
State Processor_State `protobuf:"varint,2,opt,name=state,proto3,enum=cipd.Processor_State" json:"state,omitempty"`
// When the processor finished running (successfully or not).
FinishedTs *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=finished_ts,json=finishedTs,proto3" json:"finished_ts,omitempty"`
// For SUCCEEDED state, result of the processing.
Result *structpb.Struct `protobuf:"bytes,4,opt,name=result,proto3" json:"result,omitempty"`
// For FAILED state, the error message.
Error string `protobuf:"bytes,5,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *Processor) Reset() {
*x = Processor{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[27]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Processor) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Processor) ProtoMessage() {}
func (x *Processor) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[27]
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 Processor.ProtoReflect.Descriptor instead.
func (*Processor) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{27}
}
func (x *Processor) GetId() string {
if x != nil {
return x.Id
}
return ""
}
func (x *Processor) GetState() Processor_State {
if x != nil {
return x.State
}
return Processor_STATE_UNSPECIFIED
}
func (x *Processor) GetFinishedTs() *timestamppb.Timestamp {
if x != nil {
return x.FinishedTs
}
return nil
}
func (x *Processor) GetResult() *structpb.Struct {
if x != nil {
return x.Result
}
return nil
}
func (x *Processor) GetError() string {
if x != nil {
return x.Error
}
return ""
}
type DescribeInstanceRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The package that holds the instance we want to get the info for.
Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
// The instance we want to get the info for.
Instance *ObjectRef `protobuf:"bytes,2,opt,name=instance,proto3" json:"instance,omitempty"`
// Whether the response should include "refs" field.
DescribeRefs bool `protobuf:"varint,3,opt,name=describe_refs,json=describeRefs,proto3" json:"describe_refs,omitempty"`
// Whether the response should include "tags" field.
DescribeTags bool `protobuf:"varint,4,opt,name=describe_tags,json=describeTags,proto3" json:"describe_tags,omitempty"`
// Whether the response should include "processors" field.
DescribeProcessors bool `protobuf:"varint,5,opt,name=describe_processors,json=describeProcessors,proto3" json:"describe_processors,omitempty"`
// Whether the response should include "metadata" field.
DescribeMetadata bool `protobuf:"varint,6,opt,name=describe_metadata,json=describeMetadata,proto3" json:"describe_metadata,omitempty"`
}
func (x *DescribeInstanceRequest) Reset() {
*x = DescribeInstanceRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[28]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DescribeInstanceRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DescribeInstanceRequest) ProtoMessage() {}
func (x *DescribeInstanceRequest) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[28]
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 DescribeInstanceRequest.ProtoReflect.Descriptor instead.
func (*DescribeInstanceRequest) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{28}
}
func (x *DescribeInstanceRequest) GetPackage() string {
if x != nil {
return x.Package
}
return ""
}
func (x *DescribeInstanceRequest) GetInstance() *ObjectRef {
if x != nil {
return x.Instance
}
return nil
}
func (x *DescribeInstanceRequest) GetDescribeRefs() bool {
if x != nil {
return x.DescribeRefs
}
return false
}
func (x *DescribeInstanceRequest) GetDescribeTags() bool {
if x != nil {
return x.DescribeTags
}
return false
}
func (x *DescribeInstanceRequest) GetDescribeProcessors() bool {
if x != nil {
return x.DescribeProcessors
}
return false
}
func (x *DescribeInstanceRequest) GetDescribeMetadata() bool {
if x != nil {
return x.DescribeMetadata
}
return false
}
type DescribeInstanceResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The instance with all output fields filled in.
Instance *Instance `protobuf:"bytes,1,opt,name=instance,proto3" json:"instance,omitempty"`
// Refs pointing to the instance, sorted by modification time, most recent
// first.
//
// Present only if the request has describe_refs = true.
Refs []*Ref `protobuf:"bytes,2,rep,name=refs,proto3" json:"refs,omitempty"`
// Tags attached to the instance, sorted by the tag key first, and then
// by the timestamp (most recent first).
//
// Present only if the request has describe_tags = true.
Tags []*Tag `protobuf:"bytes,3,rep,name=tags,proto3" json:"tags,omitempty"`
// State of the processors that handled the instance (if any), sorted by their
// ID.
//
// Present only if the request has describe_processors = true.
Processors []*Processor `protobuf:"bytes,4,rep,name=processors,proto3" json:"processors,omitempty"`
// Metadata attached to the instance.
//
// Present only if the request has describe_metadata = true.
Metadata []*InstanceMetadata `protobuf:"bytes,5,rep,name=metadata,proto3" json:"metadata,omitempty"`
}
func (x *DescribeInstanceResponse) Reset() {
*x = DescribeInstanceResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[29]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DescribeInstanceResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DescribeInstanceResponse) ProtoMessage() {}
func (x *DescribeInstanceResponse) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[29]
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 DescribeInstanceResponse.ProtoReflect.Descriptor instead.
func (*DescribeInstanceResponse) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{29}
}
func (x *DescribeInstanceResponse) GetInstance() *Instance {
if x != nil {
return x.Instance
}
return nil
}
func (x *DescribeInstanceResponse) GetRefs() []*Ref {
if x != nil {
return x.Refs
}
return nil
}
func (x *DescribeInstanceResponse) GetTags() []*Tag {
if x != nil {
return x.Tags
}
return nil
}
func (x *DescribeInstanceResponse) GetProcessors() []*Processor {
if x != nil {
return x.Processors
}
return nil
}
func (x *DescribeInstanceResponse) GetMetadata() []*InstanceMetadata {
if x != nil {
return x.Metadata
}
return nil
}
type DescribeClientRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The CIPD client package we want to get info about.
//
// For example 'infra/tools/cipd/linux-amd64'.
Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
// The client instance we want to get the info about.
Instance *ObjectRef `protobuf:"bytes,2,opt,name=instance,proto3" json:"instance,omitempty"`
}
func (x *DescribeClientRequest) Reset() {
*x = DescribeClientRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[30]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DescribeClientRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DescribeClientRequest) ProtoMessage() {}
func (x *DescribeClientRequest) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[30]
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 DescribeClientRequest.ProtoReflect.Descriptor instead.
func (*DescribeClientRequest) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{30}
}
func (x *DescribeClientRequest) GetPackage() string {
if x != nil {
return x.Package
}
return ""
}
func (x *DescribeClientRequest) GetInstance() *ObjectRef {
if x != nil {
return x.Instance
}
return nil
}
type DescribeClientResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The instance with all output fields filled in.
Instance *Instance `protobuf:"bytes,1,opt,name=instance,proto3" json:"instance,omitempty"`
// Reference to the extracted client binary in the storage.
//
// The hash algo here always matches the algo used when uploading the client
// package file.
//
// Clients should expect to find an algo here that they do not support (if
// the server was updated to support a better algo). They should pick the best
// algo they support from client_ref_aliases list and use it for validation.
//
// Thus this field is mostly FYI.
ClientRef *ObjectRef `protobuf:"bytes,2,opt,name=client_ref,json=clientRef,proto3" json:"client_ref,omitempty"`
// Signed URL pointing to the extracted client binary in the storage.
ClientBinary *ObjectURL `protobuf:"bytes,3,opt,name=client_binary,json=clientBinary,proto3" json:"client_binary,omitempty"`
// Size of the client binary in bytes.
ClientSize int64 `protobuf:"varint,4,opt,name=client_size,json=clientSize,proto3" json:"client_size,omitempty"`
// SHA1 digest of the client binary (as hex string).
//
// Used only by old clients and present here for backward compatibility
// reasons.
//
// Newer clients must verify one of client_ref_aliases instead.
LegacySha1 string `protobuf:"bytes,5,opt,name=legacy_sha1,json=legacySha1,proto3" json:"legacy_sha1,omitempty"`
// Contains hashes of the client binary calculated using ALL algos supported
// by the server at the time the client package was uploaded.
//
// The callers that want to verify the client binary hash should pick the best
// algo they understand.
//
// The list at least includes 'client_ref' itself and SHA1 hash (matching
// legacy_sha1). The order is undefined.
ClientRefAliases []*ObjectRef `protobuf:"bytes,6,rep,name=client_ref_aliases,json=clientRefAliases,proto3" json:"client_ref_aliases,omitempty"`
}
func (x *DescribeClientResponse) Reset() {
*x = DescribeClientResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[31]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DescribeClientResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DescribeClientResponse) ProtoMessage() {}
func (x *DescribeClientResponse) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[31]
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 DescribeClientResponse.ProtoReflect.Descriptor instead.
func (*DescribeClientResponse) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{31}
}
func (x *DescribeClientResponse) GetInstance() *Instance {
if x != nil {
return x.Instance
}
return nil
}
func (x *DescribeClientResponse) GetClientRef() *ObjectRef {
if x != nil {
return x.ClientRef
}
return nil
}
func (x *DescribeClientResponse) GetClientBinary() *ObjectURL {
if x != nil {
return x.ClientBinary
}
return nil
}
func (x *DescribeClientResponse) GetClientSize() int64 {
if x != nil {
return x.ClientSize
}
return 0
}
func (x *DescribeClientResponse) GetLegacySha1() string {
if x != nil {
return x.LegacySha1
}
return ""
}
func (x *DescribeClientResponse) GetClientRefAliases() []*ObjectRef {
if x != nil {
return x.ClientRefAliases
}
return nil
}
type DescribeBootstrapBundleRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The package prefix that contains the bootstrap packages being described.
Prefix string `protobuf:"bytes,1,opt,name=prefix,proto3" json:"prefix,omitempty"`
// If given, specifies exactly what packages to examine.
//
// Examined package names will be formed as "<prefix>/<variant>".
//
// Based on existing package naming conventions, `variants` usually would be
// an enumeration of platforms (e.g. ["linux-amd64", "mac-amd64", ...]).
//
// If empty, the CIPD backend will describe all packages directly under the
// prefix (if any). If there are no packages under the prefix, the request
// fails with NOT_FOUND.
Variants []string `protobuf:"bytes,2,rep,name=variants,proto3" json:"variants,omitempty"`
// The package version to describe, see ResolveVersion for details.
//
// Applies to all packages matching `prefix` + `variants`.
//
// If *all* packages lack this version, the request fails with NOT_FOUND.
//
// If only some packages lack this version, their corresponding BootstrapFile
// entries in DescribeBootstrapBundleRequest will have google.rpc.Status set
// to NOT_FOUND.
Version string `protobuf:"bytes,3,opt,name=version,proto3" json:"version,omitempty"`
}
func (x *DescribeBootstrapBundleRequest) Reset() {
*x = DescribeBootstrapBundleRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[32]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DescribeBootstrapBundleRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DescribeBootstrapBundleRequest) ProtoMessage() {}
func (x *DescribeBootstrapBundleRequest) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[32]
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 DescribeBootstrapBundleRequest.ProtoReflect.Descriptor instead.
func (*DescribeBootstrapBundleRequest) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{32}
}
func (x *DescribeBootstrapBundleRequest) GetPrefix() string {
if x != nil {
return x.Prefix
}
return ""
}
func (x *DescribeBootstrapBundleRequest) GetVariants() []string {
if x != nil {
return x.Variants
}
return nil
}
func (x *DescribeBootstrapBundleRequest) GetVersion() string {
if x != nil {
return x.Version
}
return ""
}
type DescribeBootstrapBundleResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Files []*DescribeBootstrapBundleResponse_BootstrapFile `protobuf:"bytes,1,rep,name=files,proto3" json:"files,omitempty"`
}
func (x *DescribeBootstrapBundleResponse) Reset() {
*x = DescribeBootstrapBundleResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[33]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DescribeBootstrapBundleResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DescribeBootstrapBundleResponse) ProtoMessage() {}
func (x *DescribeBootstrapBundleResponse) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[33]
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 DescribeBootstrapBundleResponse.ProtoReflect.Descriptor instead.
func (*DescribeBootstrapBundleResponse) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{33}
}
func (x *DescribeBootstrapBundleResponse) GetFiles() []*DescribeBootstrapBundleResponse_BootstrapFile {
if x != nil {
return x.Files
}
return nil
}
type PrefixMetadata_ACL struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Role that this ACL describes.
Role Role `protobuf:"varint,1,opt,name=role,proto3,enum=cipd.Role" json:"role,omitempty"`
// Users and groups that have the specified role.
//
// Each entry has a form "<kind>:<value>", e.g. "group:..." or "user:...".
Principals []string `protobuf:"bytes,2,rep,name=principals,proto3" json:"principals,omitempty"`
}
func (x *PrefixMetadata_ACL) Reset() {
*x = PrefixMetadata_ACL{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[34]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PrefixMetadata_ACL) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PrefixMetadata_ACL) ProtoMessage() {}
func (x *PrefixMetadata_ACL) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_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 PrefixMetadata_ACL.ProtoReflect.Descriptor instead.
func (*PrefixMetadata_ACL) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{1, 0}
}
func (x *PrefixMetadata_ACL) GetRole() Role {
if x != nil {
return x.Role
}
return Role_ROLE_UNSPECIFIED
}
func (x *PrefixMetadata_ACL) GetPrincipals() []string {
if x != nil {
return x.Principals
}
return nil
}
type RolesInPrefixResponse_RoleInPrefix struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Role Role `protobuf:"varint,1,opt,name=role,proto3,enum=cipd.Role" json:"role,omitempty"`
}
func (x *RolesInPrefixResponse_RoleInPrefix) Reset() {
*x = RolesInPrefixResponse_RoleInPrefix{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[35]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RolesInPrefixResponse_RoleInPrefix) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RolesInPrefixResponse_RoleInPrefix) ProtoMessage() {}
func (x *RolesInPrefixResponse_RoleInPrefix) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_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 RolesInPrefixResponse_RoleInPrefix.ProtoReflect.Descriptor instead.
func (*RolesInPrefixResponse_RoleInPrefix) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{3, 0}
}
func (x *RolesInPrefixResponse_RoleInPrefix) GetRole() Role {
if x != nil {
return x.Role
}
return Role_ROLE_UNSPECIFIED
}
type DescribeBootstrapBundleResponse_BootstrapFile struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"` // the package the file was extracted from
Status *status.Status `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"` // not OK on errors related to this package
Instance *ObjectRef `protobuf:"bytes,3,opt,name=instance,proto3" json:"instance,omitempty"` // the resolved package instance
File *ObjectRef `protobuf:"bytes,4,opt,name=file,proto3" json:"file,omitempty"` // the extracted file in the CAS
Name string `protobuf:"bytes,5,opt,name=name,proto3" json:"name,omitempty"` // the name of the extracted file
Size int64 `protobuf:"varint,6,opt,name=size,proto3" json:"size,omitempty"` // its size in bytes
}
func (x *DescribeBootstrapBundleResponse_BootstrapFile) Reset() {
*x = DescribeBootstrapBundleResponse_BootstrapFile{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[36]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DescribeBootstrapBundleResponse_BootstrapFile) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DescribeBootstrapBundleResponse_BootstrapFile) ProtoMessage() {}
func (x *DescribeBootstrapBundleResponse_BootstrapFile) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[36]
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 DescribeBootstrapBundleResponse_BootstrapFile.ProtoReflect.Descriptor instead.
func (*DescribeBootstrapBundleResponse_BootstrapFile) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP(), []int{33, 0}
}
func (x *DescribeBootstrapBundleResponse_BootstrapFile) GetPackage() string {
if x != nil {
return x.Package
}
return ""
}
func (x *DescribeBootstrapBundleResponse_BootstrapFile) GetStatus() *status.Status {
if x != nil {
return x.Status
}
return nil
}
func (x *DescribeBootstrapBundleResponse_BootstrapFile) GetInstance() *ObjectRef {
if x != nil {
return x.Instance
}
return nil
}
func (x *DescribeBootstrapBundleResponse_BootstrapFile) GetFile() *ObjectRef {
if x != nil {
return x.File
}
return nil
}
func (x *DescribeBootstrapBundleResponse_BootstrapFile) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *DescribeBootstrapBundleResponse_BootstrapFile) GetSize() int64 {
if x != nil {
return x.Size
}
return 0
}
var File_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto protoreflect.FileDescriptor
var file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDesc = []byte{
0x0a, 0x30, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72,
0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x63, 0x69, 0x70, 0x64, 0x2f, 0x61, 0x70, 0x69, 0x2f,
0x63, 0x69, 0x70, 0x64, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x70, 0x6f, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x12, 0x04, 0x63, 0x69, 0x70, 0x64, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x72, 0x70, 0x63,
0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2f, 0x67,
0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c,
0x75, 0x63, 0x69, 0x2f, 0x63, 0x69, 0x70, 0x64, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x69, 0x70,
0x64, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x61, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x27,
0x0a, 0x0d, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x16, 0x0a, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x22, 0x9d, 0x02, 0x0a, 0x0e, 0x50, 0x72, 0x65, 0x66,
0x69, 0x78, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72,
0x65, 0x66, 0x69, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x65, 0x66,
0x69, 0x78, 0x12, 0x20, 0x0a, 0x0b, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e,
0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70,
0x72, 0x69, 0x6e, 0x74, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74,
0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65,
0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d,
0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x72,
0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73,
0x65, 0x72, 0x12, 0x2c, 0x0a, 0x04, 0x61, 0x63, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x18, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x4d, 0x65,
0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x41, 0x43, 0x4c, 0x52, 0x04, 0x61, 0x63, 0x6c, 0x73,
0x1a, 0x45, 0x0a, 0x03, 0x41, 0x43, 0x4c, 0x12, 0x1e, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18,
0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0a, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x52, 0x6f, 0x6c,
0x65, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x69, 0x6e, 0x63,
0x69, 0x70, 0x61, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x69,
0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x73, 0x22, 0x5f, 0x0a, 0x17, 0x49, 0x6e, 0x68, 0x65, 0x72,
0x69, 0x74, 0x65, 0x64, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
0x74, 0x61, 0x12, 0x44, 0x0a, 0x13, 0x70, 0x65, 0x72, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78,
0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x14, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x4d, 0x65, 0x74,
0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x11, 0x70, 0x65, 0x72, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78,
0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x87, 0x01, 0x0a, 0x15, 0x52, 0x6f, 0x6c,
0x65, 0x73, 0x49, 0x6e, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x12, 0x3e, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x28, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x49, 0x6e,
0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52,
0x6f, 0x6c, 0x65, 0x49, 0x6e, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x52, 0x05, 0x72, 0x6f, 0x6c,
0x65, 0x73, 0x1a, 0x2e, 0x0a, 0x0c, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x6e, 0x50, 0x72, 0x65, 0x66,
0x69, 0x78, 0x12, 0x1e, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
0x32, 0x0a, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x6f,
0x6c, 0x65, 0x22, 0x70, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69,
0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12,
0x1c, 0x0a, 0x09, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01,
0x28, 0x08, 0x52, 0x09, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x69, 0x76, 0x65, 0x12, 0x25, 0x0a,
0x0e, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x18,
0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x48, 0x69,
0x64, 0x64, 0x65, 0x6e, 0x22, 0x4c, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x65, 0x66,
0x69, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61,
0x63, 0x6b, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61,
0x63, 0x6b, 0x61, 0x67, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78,
0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78,
0x65, 0x73, 0x22, 0x2a, 0x0a, 0x0e, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x22, 0xb7,
0x01, 0x0a, 0x08, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70,
0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61,
0x63, 0x6b, 0x61, 0x67, 0x65, 0x12, 0x2b, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63,
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x4f,
0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x66, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e,
0x63, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x65, 0x64,
0x5f, 0x62, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x67, 0x69, 0x73,
0x74, 0x65, 0x72, 0x65, 0x64, 0x42, 0x79, 0x12, 0x3f, 0x0a, 0x0d, 0x72, 0x65, 0x67, 0x69, 0x73,
0x74, 0x65, 0x72, 0x65, 0x64, 0x5f, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0c, 0x72, 0x65, 0x67, 0x69,
0x73, 0x74, 0x65, 0x72, 0x65, 0x64, 0x54, 0x73, 0x22, 0xac, 0x01, 0x0a, 0x18, 0x52, 0x65, 0x67,
0x69, 0x73, 0x74, 0x65, 0x72, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18,
0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x52, 0x65, 0x67,
0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52,
0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61,
0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x63, 0x69, 0x70, 0x64,
0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61,
0x6e, 0x63, 0x65, 0x12, 0x32, 0x0a, 0x09, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x6f, 0x70,
0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x55, 0x70,
0x6c, 0x6f, 0x61, 0x64, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x75,
0x70, 0x6c, 0x6f, 0x61, 0x64, 0x4f, 0x70, 0x22, 0x6c, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x49,
0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x18, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x52, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67,
0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61,
0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74,
0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65,
0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x6d, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x73,
0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c,
0x0a, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x0e, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63,
0x65, 0x52, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f,
0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18,
0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54,
0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x8d, 0x01, 0x0a, 0x16, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x49,
0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x18, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x52, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x12, 0x1d, 0x0a, 0x04, 0x74, 0x61, 0x67,
0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x54,
0x61, 0x67, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65,
0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67,
0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f,
0x6b, 0x65, 0x6e, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54,
0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x6f, 0x0a, 0x17, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x49, 0x6e,
0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x2c, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e,
0x63, 0x65, 0x52, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x26, 0x0a,
0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e,
0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65,
0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xbe, 0x01, 0x0a, 0x03, 0x52, 0x65, 0x66, 0x12, 0x12, 0x0a,
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01,
0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x12, 0x2b, 0x0a, 0x08, 0x69,
0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e,
0x63, 0x69, 0x70, 0x64, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x66, 0x52, 0x08,
0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x6f, 0x64, 0x69,
0x66, 0x69, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d,
0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x64, 0x42, 0x79, 0x12, 0x3b, 0x0a, 0x0b, 0x6d, 0x6f, 0x64,
0x69, 0x66, 0x69, 0x65, 0x64, 0x5f, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x6d, 0x6f, 0x64, 0x69,
0x66, 0x69, 0x65, 0x64, 0x54, 0x73, 0x22, 0x40, 0x0a, 0x10, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
0x52, 0x65, 0x66, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18,
0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x22, 0x2b, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74,
0x52, 0x65, 0x66, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70,
0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61,
0x63, 0x6b, 0x61, 0x67, 0x65, 0x22, 0x31, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x66,
0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x04, 0x72, 0x65, 0x66,
0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x52,
0x65, 0x66, 0x52, 0x04, 0x72, 0x65, 0x66, 0x73, 0x22, 0x8b, 0x01, 0x0a, 0x03, 0x54, 0x61, 0x67,
0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b,
0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x74, 0x74, 0x61,
0x63, 0x68, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61,
0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x42, 0x79, 0x12, 0x3b, 0x0a, 0x0b, 0x61, 0x74, 0x74,
0x61, 0x63, 0x68, 0x65, 0x64, 0x5f, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x61,
0x63, 0x68, 0x65, 0x64, 0x54, 0x73, 0x22, 0x79, 0x0a, 0x11, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68,
0x54, 0x61, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70,
0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61,
0x63, 0x6b, 0x61, 0x67, 0x65, 0x12, 0x2b, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63,
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x4f,
0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x66, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e,
0x63, 0x65, 0x12, 0x1d, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x09, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x54, 0x61, 0x67, 0x52, 0x04, 0x74, 0x61, 0x67,
0x73, 0x22, 0x79, 0x0a, 0x11, 0x44, 0x65, 0x74, 0x61, 0x63, 0x68, 0x54, 0x61, 0x67, 0x73, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67,
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65,
0x12, 0x2b, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74,
0x52, 0x65, 0x66, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1d, 0x0a,
0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x63, 0x69,
0x70, 0x64, 0x2e, 0x54, 0x61, 0x67, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x22, 0xdd, 0x01, 0x0a,
0x10, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
0x61, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01,
0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e,
0x74, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b,
0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28,
0x09, 0x52, 0x0b, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x12, 0x1f,
0x0a, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x05, 0x20,
0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x42, 0x79, 0x12,
0x3b, 0x0a, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x5f, 0x74, 0x73, 0x18, 0x06,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
0x52, 0x0a, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x54, 0x73, 0x22, 0x92, 0x01, 0x0a,
0x15, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67,
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65,
0x12, 0x2b, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74,
0x52, 0x65, 0x66, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x32, 0x0a,
0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x16, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4d,
0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
0x61, 0x22, 0x92, 0x01, 0x0a, 0x15, 0x44, 0x65, 0x74, 0x61, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61,
0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70,
0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61,
0x63, 0x6b, 0x61, 0x67, 0x65, 0x12, 0x2b, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63,
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x4f,
0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x66, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e,
0x63, 0x65, 0x12, 0x32, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x49, 0x6e, 0x73, 0x74,
0x61, 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65,
0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0xac, 0x01, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x4d,
0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18,
0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x12, 0x2b, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74,
0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x69, 0x70,
0x64, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x66, 0x52, 0x08, 0x69, 0x6e, 0x73,
0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x03, 0x20,
0x03, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67,
0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61,
0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74,
0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65,
0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x72, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74,
0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a,
0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x16, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4d,
0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
0x61, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74,
0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74,
0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x4b, 0x0a, 0x15, 0x52, 0x65, 0x73,
0x6f, 0x6c, 0x76, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x12, 0x18, 0x0a, 0x07,
0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76,
0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x5e, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x73,
0x74, 0x61, 0x6e, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x18, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x52, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x12, 0x2b, 0x0a, 0x08, 0x69, 0x6e, 0x73,
0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x69,
0x70, 0x64, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x66, 0x52, 0x08, 0x69, 0x6e,
0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x22, 0x94, 0x02, 0x0a, 0x09, 0x50, 0x72, 0x6f, 0x63, 0x65,
0x73, 0x73, 0x6f, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x52, 0x02, 0x69, 0x64, 0x12, 0x2b, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20,
0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65,
0x73, 0x73, 0x6f, 0x72, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74,
0x65, 0x12, 0x3b, 0x0a, 0x0b, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x74, 0x73,
0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
0x6d, 0x70, 0x52, 0x0a, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x54, 0x73, 0x12, 0x2f,
0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12,
0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x46, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x15,
0x0a, 0x11, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46,
0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47,
0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x55, 0x43, 0x43, 0x45, 0x45, 0x44, 0x45, 0x44, 0x10,
0x02, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x03, 0x22, 0x88, 0x02,
0x0a, 0x17, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e,
0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x63,
0x6b, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 0x63, 0x6b,
0x61, 0x67, 0x65, 0x12, 0x2b, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18,
0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x4f, 0x62, 0x6a,
0x65, 0x63, 0x74, 0x52, 0x65, 0x66, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
0x12, 0x23, 0x0a, 0x0d, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x5f, 0x72, 0x65, 0x66,
0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62,
0x65, 0x52, 0x65, 0x66, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62,
0x65, 0x5f, 0x74, 0x61, 0x67, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x64, 0x65,
0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x54, 0x61, 0x67, 0x73, 0x12, 0x2f, 0x0a, 0x13, 0x64, 0x65,
0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72,
0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62,
0x65, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x64,
0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65,
0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0xe9, 0x01, 0x0a, 0x18, 0x44, 0x65, 0x73,
0x63, 0x72, 0x69, 0x62, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63,
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x49,
0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63,
0x65, 0x12, 0x1d, 0x0a, 0x04, 0x72, 0x65, 0x66, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x09, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x52, 0x65, 0x66, 0x52, 0x04, 0x72, 0x65, 0x66, 0x73,
0x12, 0x1d, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09,
0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x54, 0x61, 0x67, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12,
0x2f, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x18, 0x04, 0x20,
0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65,
0x73, 0x73, 0x6f, 0x72, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73,
0x12, 0x32, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e,
0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61,
0x64, 0x61, 0x74, 0x61, 0x22, 0x5e, 0x0a, 0x15, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65,
0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a,
0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x12, 0x2b, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61,
0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x69, 0x70, 0x64,
0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x66, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74,
0x61, 0x6e, 0x63, 0x65, 0x22, 0xab, 0x02, 0x0a, 0x16, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62,
0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x2a, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x0e, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63,
0x65, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x2e, 0x0a, 0x0a, 0x63,
0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x66, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x0f, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x66,
0x52, 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x66, 0x12, 0x34, 0x0a, 0x0d, 0x63,
0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74,
0x55, 0x52, 0x4c, 0x52, 0x0c, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x42, 0x69, 0x6e, 0x61, 0x72,
0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x69, 0x7a, 0x65,
0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x69,
0x7a, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x73, 0x68, 0x61,
0x31, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x53,
0x68, 0x61, 0x31, 0x12, 0x3d, 0x0a, 0x12, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x65,
0x66, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x0f, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x66,
0x52, 0x10, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x66, 0x41, 0x6c, 0x69, 0x61, 0x73,
0x65, 0x73, 0x22, 0x6e, 0x0a, 0x1e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x42, 0x6f,
0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x1a, 0x0a, 0x08,
0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08,
0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73,
0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69,
0x6f, 0x6e, 0x22, 0xbe, 0x02, 0x0a, 0x1f, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x42,
0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18,
0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x44, 0x65, 0x73,
0x63, 0x72, 0x69, 0x62, 0x65, 0x42, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x42, 0x75,
0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x42, 0x6f, 0x6f,
0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x05, 0x66, 0x69, 0x6c, 0x65,
0x73, 0x1a, 0xcf, 0x01, 0x0a, 0x0d, 0x42, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x46,
0x69, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x12, 0x2a, 0x0a,
0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75,
0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2b, 0x0a, 0x08, 0x69, 0x6e, 0x73,
0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x69,
0x70, 0x64, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x66, 0x52, 0x08, 0x69, 0x6e,
0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x23, 0x0a, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x04,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x4f, 0x62, 0x6a, 0x65,
0x63, 0x74, 0x52, 0x65, 0x66, 0x52, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e,
0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73,
0x69, 0x7a, 0x65, 0x2a, 0x3f, 0x0a, 0x04, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x52,
0x4f, 0x4c, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10,
0x00, 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x45, 0x41, 0x44, 0x45, 0x52, 0x10, 0x01, 0x12, 0x0a, 0x0a,
0x06, 0x57, 0x52, 0x49, 0x54, 0x45, 0x52, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x4f, 0x57, 0x4e,
0x45, 0x52, 0x10, 0x03, 0x2a, 0x73, 0x0a, 0x12, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x23, 0x0a, 0x1f, 0x52, 0x45,
0x47, 0x49, 0x53, 0x54, 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55,
0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12,
0x0e, 0x0a, 0x0a, 0x52, 0x45, 0x47, 0x49, 0x53, 0x54, 0x45, 0x52, 0x45, 0x44, 0x10, 0x01, 0x12,
0x16, 0x0a, 0x12, 0x41, 0x4c, 0x52, 0x45, 0x41, 0x44, 0x59, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x53,
0x54, 0x45, 0x52, 0x45, 0x44, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x4e, 0x4f, 0x54, 0x5f, 0x55,
0x50, 0x4c, 0x4f, 0x41, 0x44, 0x45, 0x44, 0x10, 0x03, 0x32, 0x84, 0x0d, 0x0a, 0x0a, 0x52, 0x65,
0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x3e, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x50,
0x72, 0x65, 0x66, 0x69, 0x78, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x13, 0x2e,
0x63, 0x69, 0x70, 0x64, 0x2e, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x1a, 0x14, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78,
0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x50, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x49,
0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, 0x65, 0x64, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x4d, 0x65,
0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x13, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x50, 0x72,
0x65, 0x66, 0x69, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x69,
0x70, 0x64, 0x2e, 0x49, 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, 0x65, 0x64, 0x50, 0x72, 0x65, 0x66,
0x69, 0x78, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x42, 0x0a, 0x14, 0x55, 0x70,
0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
0x74, 0x61, 0x12, 0x14, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78,
0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x14, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e,
0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x44,
0x0a, 0x10, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x49, 0x6e, 0x50, 0x72, 0x65, 0x66,
0x69, 0x78, 0x12, 0x13, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x52,
0x6f, 0x6c, 0x65, 0x73, 0x49, 0x6e, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x65, 0x66,
0x69, 0x78, 0x12, 0x17, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72,
0x65, 0x66, 0x69, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x63, 0x69,
0x70, 0x64, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x0b, 0x48, 0x69, 0x64, 0x65, 0x50, 0x61, 0x63,
0x6b, 0x61, 0x67, 0x65, 0x12, 0x14, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x50, 0x61, 0x63, 0x6b,
0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70,
0x74, 0x79, 0x12, 0x3d, 0x0a, 0x0d, 0x55, 0x6e, 0x68, 0x69, 0x64, 0x65, 0x50, 0x61, 0x63, 0x6b,
0x61, 0x67, 0x65, 0x12, 0x14, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x50, 0x61, 0x63, 0x6b, 0x61,
0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74,
0x79, 0x12, 0x3d, 0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x61,
0x67, 0x65, 0x12, 0x14, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67,
0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79,
0x12, 0x42, 0x0a, 0x10, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x49, 0x6e, 0x73, 0x74,
0x61, 0x6e, 0x63, 0x65, 0x12, 0x0e, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x49, 0x6e, 0x73, 0x74,
0x61, 0x6e, 0x63, 0x65, 0x1a, 0x1e, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x52, 0x65, 0x67, 0x69,
0x73, 0x74, 0x65, 0x72, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x73, 0x74,
0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x1a, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x4c, 0x69, 0x73,
0x74, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x1a, 0x1b, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x73,
0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4e,
0x0a, 0x0f, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
0x73, 0x12, 0x1c, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x49,
0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
0x1d, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x49, 0x6e, 0x73,
0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2e,
0x0a, 0x09, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x66, 0x12, 0x09, 0x2e, 0x63, 0x69,
0x70, 0x64, 0x2e, 0x52, 0x65, 0x66, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x3b,
0x0a, 0x09, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x66, 0x12, 0x16, 0x2e, 0x63, 0x69,
0x70, 0x64, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x66, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x39, 0x0a, 0x08, 0x4c,
0x69, 0x73, 0x74, 0x52, 0x65, 0x66, 0x73, 0x12, 0x15, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x4c,
0x69, 0x73, 0x74, 0x52, 0x65, 0x66, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16,
0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x66, 0x73, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x0a, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68,
0x54, 0x61, 0x67, 0x73, 0x12, 0x17, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x41, 0x74, 0x74, 0x61,
0x63, 0x68, 0x54, 0x61, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x3d, 0x0a, 0x0a, 0x44, 0x65, 0x74, 0x61, 0x63, 0x68, 0x54,
0x61, 0x67, 0x73, 0x12, 0x17, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x44, 0x65, 0x74, 0x61, 0x63,
0x68, 0x54, 0x61, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45,
0x6d, 0x70, 0x74, 0x79, 0x12, 0x45, 0x0a, 0x0e, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x4d, 0x65,
0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1b, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x41, 0x74,
0x74, 0x61, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x45, 0x0a, 0x0e, 0x44,
0x65, 0x74, 0x61, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1b, 0x2e,
0x63, 0x69, 0x70, 0x64, 0x2e, 0x44, 0x65, 0x74, 0x61, 0x63, 0x68, 0x4d, 0x65, 0x74, 0x61, 0x64,
0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70,
0x74, 0x79, 0x12, 0x45, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
0x74, 0x61, 0x12, 0x19, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x65,
0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e,
0x63, 0x69, 0x70, 0x64, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x0e, 0x52, 0x65, 0x73,
0x6f, 0x6c, 0x76, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x2e, 0x63, 0x69,
0x70, 0x64, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f,
0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e,
0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x3e, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x49,
0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x12, 0x1b, 0x2e, 0x63, 0x69, 0x70,
0x64, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x55, 0x52, 0x4c,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0f, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x4f,
0x62, 0x6a, 0x65, 0x63, 0x74, 0x55, 0x52, 0x4c, 0x12, 0x51, 0x0a, 0x10, 0x44, 0x65, 0x73, 0x63,
0x72, 0x69, 0x62, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1d, 0x2e, 0x63,
0x69, 0x70, 0x64, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x49, 0x6e, 0x73, 0x74,
0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x63, 0x69,
0x70, 0x64, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61,
0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a, 0x0e, 0x44,
0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x2e,
0x63, 0x69, 0x70, 0x64, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x43, 0x6c, 0x69,
0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x63, 0x69, 0x70,
0x64, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x66, 0x0a, 0x17, 0x44, 0x65, 0x73, 0x63,
0x72, 0x69, 0x62, 0x65, 0x42, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x42, 0x75, 0x6e,
0x64, 0x6c, 0x65, 0x12, 0x24, 0x2e, 0x63, 0x69, 0x70, 0x64, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72,
0x69, 0x62, 0x65, 0x42, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x42, 0x75, 0x6e, 0x64,
0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x63, 0x69, 0x70, 0x64,
0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x42, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72,
0x61, 0x70, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x42, 0x2b, 0x5a, 0x29, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e,
0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x63, 0x69, 0x70, 0x64, 0x2f, 0x61, 0x70,
0x69, 0x2f, 0x63, 0x69, 0x70, 0x64, 0x2f, 0x76, 0x31, 0x3b, 0x61, 0x70, 0x69, 0x62, 0x06, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescOnce sync.Once
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescData = file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDesc
)
func file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescGZIP() []byte {
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescOnce.Do(func() {
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescData = protoimpl.X.CompressGZIP(file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescData)
})
return file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDescData
}
var file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_enumTypes = make([]protoimpl.EnumInfo, 3)
var file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes = make([]protoimpl.MessageInfo, 37)
var file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_goTypes = []interface{}{
(Role)(0), // 0: cipd.Role
(RegistrationStatus)(0), // 1: cipd.RegistrationStatus
(Processor_State)(0), // 2: cipd.Processor.State
(*PrefixRequest)(nil), // 3: cipd.PrefixRequest
(*PrefixMetadata)(nil), // 4: cipd.PrefixMetadata
(*InheritedPrefixMetadata)(nil), // 5: cipd.InheritedPrefixMetadata
(*RolesInPrefixResponse)(nil), // 6: cipd.RolesInPrefixResponse
(*ListPrefixRequest)(nil), // 7: cipd.ListPrefixRequest
(*ListPrefixResponse)(nil), // 8: cipd.ListPrefixResponse
(*PackageRequest)(nil), // 9: cipd.PackageRequest
(*Instance)(nil), // 10: cipd.Instance
(*RegisterInstanceResponse)(nil), // 11: cipd.RegisterInstanceResponse
(*ListInstancesRequest)(nil), // 12: cipd.ListInstancesRequest
(*ListInstancesResponse)(nil), // 13: cipd.ListInstancesResponse
(*SearchInstancesRequest)(nil), // 14: cipd.SearchInstancesRequest
(*SearchInstancesResponse)(nil), // 15: cipd.SearchInstancesResponse
(*Ref)(nil), // 16: cipd.Ref
(*DeleteRefRequest)(nil), // 17: cipd.DeleteRefRequest
(*ListRefsRequest)(nil), // 18: cipd.ListRefsRequest
(*ListRefsResponse)(nil), // 19: cipd.ListRefsResponse
(*Tag)(nil), // 20: cipd.Tag
(*AttachTagsRequest)(nil), // 21: cipd.AttachTagsRequest
(*DetachTagsRequest)(nil), // 22: cipd.DetachTagsRequest
(*InstanceMetadata)(nil), // 23: cipd.InstanceMetadata
(*AttachMetadataRequest)(nil), // 24: cipd.AttachMetadataRequest
(*DetachMetadataRequest)(nil), // 25: cipd.DetachMetadataRequest
(*ListMetadataRequest)(nil), // 26: cipd.ListMetadataRequest
(*ListMetadataResponse)(nil), // 27: cipd.ListMetadataResponse
(*ResolveVersionRequest)(nil), // 28: cipd.ResolveVersionRequest
(*GetInstanceURLRequest)(nil), // 29: cipd.GetInstanceURLRequest
(*Processor)(nil), // 30: cipd.Processor
(*DescribeInstanceRequest)(nil), // 31: cipd.DescribeInstanceRequest
(*DescribeInstanceResponse)(nil), // 32: cipd.DescribeInstanceResponse
(*DescribeClientRequest)(nil), // 33: cipd.DescribeClientRequest
(*DescribeClientResponse)(nil), // 34: cipd.DescribeClientResponse
(*DescribeBootstrapBundleRequest)(nil), // 35: cipd.DescribeBootstrapBundleRequest
(*DescribeBootstrapBundleResponse)(nil), // 36: cipd.DescribeBootstrapBundleResponse
(*PrefixMetadata_ACL)(nil), // 37: cipd.PrefixMetadata.ACL
(*RolesInPrefixResponse_RoleInPrefix)(nil), // 38: cipd.RolesInPrefixResponse.RoleInPrefix
(*DescribeBootstrapBundleResponse_BootstrapFile)(nil), // 39: cipd.DescribeBootstrapBundleResponse.BootstrapFile
(*timestamppb.Timestamp)(nil), // 40: google.protobuf.Timestamp
(*ObjectRef)(nil), // 41: cipd.ObjectRef
(*UploadOperation)(nil), // 42: cipd.UploadOperation
(*structpb.Struct)(nil), // 43: google.protobuf.Struct
(*ObjectURL)(nil), // 44: cipd.ObjectURL
(*status.Status)(nil), // 45: google.rpc.Status
(*emptypb.Empty)(nil), // 46: google.protobuf.Empty
}
var file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_depIdxs = []int32{
40, // 0: cipd.PrefixMetadata.update_time:type_name -> google.protobuf.Timestamp
37, // 1: cipd.PrefixMetadata.acls:type_name -> cipd.PrefixMetadata.ACL
4, // 2: cipd.InheritedPrefixMetadata.per_prefix_metadata:type_name -> cipd.PrefixMetadata
38, // 3: cipd.RolesInPrefixResponse.roles:type_name -> cipd.RolesInPrefixResponse.RoleInPrefix
41, // 4: cipd.Instance.instance:type_name -> cipd.ObjectRef
40, // 5: cipd.Instance.registered_ts:type_name -> google.protobuf.Timestamp
1, // 6: cipd.RegisterInstanceResponse.status:type_name -> cipd.RegistrationStatus
10, // 7: cipd.RegisterInstanceResponse.instance:type_name -> cipd.Instance
42, // 8: cipd.RegisterInstanceResponse.upload_op:type_name -> cipd.UploadOperation
10, // 9: cipd.ListInstancesResponse.instances:type_name -> cipd.Instance
20, // 10: cipd.SearchInstancesRequest.tags:type_name -> cipd.Tag
10, // 11: cipd.SearchInstancesResponse.instances:type_name -> cipd.Instance
41, // 12: cipd.Ref.instance:type_name -> cipd.ObjectRef
40, // 13: cipd.Ref.modified_ts:type_name -> google.protobuf.Timestamp
16, // 14: cipd.ListRefsResponse.refs:type_name -> cipd.Ref
40, // 15: cipd.Tag.attached_ts:type_name -> google.protobuf.Timestamp
41, // 16: cipd.AttachTagsRequest.instance:type_name -> cipd.ObjectRef
20, // 17: cipd.AttachTagsRequest.tags:type_name -> cipd.Tag
41, // 18: cipd.DetachTagsRequest.instance:type_name -> cipd.ObjectRef
20, // 19: cipd.DetachTagsRequest.tags:type_name -> cipd.Tag
40, // 20: cipd.InstanceMetadata.attached_ts:type_name -> google.protobuf.Timestamp
41, // 21: cipd.AttachMetadataRequest.instance:type_name -> cipd.ObjectRef
23, // 22: cipd.AttachMetadataRequest.metadata:type_name -> cipd.InstanceMetadata
41, // 23: cipd.DetachMetadataRequest.instance:type_name -> cipd.ObjectRef
23, // 24: cipd.DetachMetadataRequest.metadata:type_name -> cipd.InstanceMetadata
41, // 25: cipd.ListMetadataRequest.instance:type_name -> cipd.ObjectRef
23, // 26: cipd.ListMetadataResponse.metadata:type_name -> cipd.InstanceMetadata
41, // 27: cipd.GetInstanceURLRequest.instance:type_name -> cipd.ObjectRef
2, // 28: cipd.Processor.state:type_name -> cipd.Processor.State
40, // 29: cipd.Processor.finished_ts:type_name -> google.protobuf.Timestamp
43, // 30: cipd.Processor.result:type_name -> google.protobuf.Struct
41, // 31: cipd.DescribeInstanceRequest.instance:type_name -> cipd.ObjectRef
10, // 32: cipd.DescribeInstanceResponse.instance:type_name -> cipd.Instance
16, // 33: cipd.DescribeInstanceResponse.refs:type_name -> cipd.Ref
20, // 34: cipd.DescribeInstanceResponse.tags:type_name -> cipd.Tag
30, // 35: cipd.DescribeInstanceResponse.processors:type_name -> cipd.Processor
23, // 36: cipd.DescribeInstanceResponse.metadata:type_name -> cipd.InstanceMetadata
41, // 37: cipd.DescribeClientRequest.instance:type_name -> cipd.ObjectRef
10, // 38: cipd.DescribeClientResponse.instance:type_name -> cipd.Instance
41, // 39: cipd.DescribeClientResponse.client_ref:type_name -> cipd.ObjectRef
44, // 40: cipd.DescribeClientResponse.client_binary:type_name -> cipd.ObjectURL
41, // 41: cipd.DescribeClientResponse.client_ref_aliases:type_name -> cipd.ObjectRef
39, // 42: cipd.DescribeBootstrapBundleResponse.files:type_name -> cipd.DescribeBootstrapBundleResponse.BootstrapFile
0, // 43: cipd.PrefixMetadata.ACL.role:type_name -> cipd.Role
0, // 44: cipd.RolesInPrefixResponse.RoleInPrefix.role:type_name -> cipd.Role
45, // 45: cipd.DescribeBootstrapBundleResponse.BootstrapFile.status:type_name -> google.rpc.Status
41, // 46: cipd.DescribeBootstrapBundleResponse.BootstrapFile.instance:type_name -> cipd.ObjectRef
41, // 47: cipd.DescribeBootstrapBundleResponse.BootstrapFile.file:type_name -> cipd.ObjectRef
3, // 48: cipd.Repository.GetPrefixMetadata:input_type -> cipd.PrefixRequest
3, // 49: cipd.Repository.GetInheritedPrefixMetadata:input_type -> cipd.PrefixRequest
4, // 50: cipd.Repository.UpdatePrefixMetadata:input_type -> cipd.PrefixMetadata
3, // 51: cipd.Repository.GetRolesInPrefix:input_type -> cipd.PrefixRequest
7, // 52: cipd.Repository.ListPrefix:input_type -> cipd.ListPrefixRequest
9, // 53: cipd.Repository.HidePackage:input_type -> cipd.PackageRequest
9, // 54: cipd.Repository.UnhidePackage:input_type -> cipd.PackageRequest
9, // 55: cipd.Repository.DeletePackage:input_type -> cipd.PackageRequest
10, // 56: cipd.Repository.RegisterInstance:input_type -> cipd.Instance
12, // 57: cipd.Repository.ListInstances:input_type -> cipd.ListInstancesRequest
14, // 58: cipd.Repository.SearchInstances:input_type -> cipd.SearchInstancesRequest
16, // 59: cipd.Repository.CreateRef:input_type -> cipd.Ref
17, // 60: cipd.Repository.DeleteRef:input_type -> cipd.DeleteRefRequest
18, // 61: cipd.Repository.ListRefs:input_type -> cipd.ListRefsRequest
21, // 62: cipd.Repository.AttachTags:input_type -> cipd.AttachTagsRequest
22, // 63: cipd.Repository.DetachTags:input_type -> cipd.DetachTagsRequest
24, // 64: cipd.Repository.AttachMetadata:input_type -> cipd.AttachMetadataRequest
25, // 65: cipd.Repository.DetachMetadata:input_type -> cipd.DetachMetadataRequest
26, // 66: cipd.Repository.ListMetadata:input_type -> cipd.ListMetadataRequest
28, // 67: cipd.Repository.ResolveVersion:input_type -> cipd.ResolveVersionRequest
29, // 68: cipd.Repository.GetInstanceURL:input_type -> cipd.GetInstanceURLRequest
31, // 69: cipd.Repository.DescribeInstance:input_type -> cipd.DescribeInstanceRequest
33, // 70: cipd.Repository.DescribeClient:input_type -> cipd.DescribeClientRequest
35, // 71: cipd.Repository.DescribeBootstrapBundle:input_type -> cipd.DescribeBootstrapBundleRequest
4, // 72: cipd.Repository.GetPrefixMetadata:output_type -> cipd.PrefixMetadata
5, // 73: cipd.Repository.GetInheritedPrefixMetadata:output_type -> cipd.InheritedPrefixMetadata
4, // 74: cipd.Repository.UpdatePrefixMetadata:output_type -> cipd.PrefixMetadata
6, // 75: cipd.Repository.GetRolesInPrefix:output_type -> cipd.RolesInPrefixResponse
8, // 76: cipd.Repository.ListPrefix:output_type -> cipd.ListPrefixResponse
46, // 77: cipd.Repository.HidePackage:output_type -> google.protobuf.Empty
46, // 78: cipd.Repository.UnhidePackage:output_type -> google.protobuf.Empty
46, // 79: cipd.Repository.DeletePackage:output_type -> google.protobuf.Empty
11, // 80: cipd.Repository.RegisterInstance:output_type -> cipd.RegisterInstanceResponse
13, // 81: cipd.Repository.ListInstances:output_type -> cipd.ListInstancesResponse
15, // 82: cipd.Repository.SearchInstances:output_type -> cipd.SearchInstancesResponse
46, // 83: cipd.Repository.CreateRef:output_type -> google.protobuf.Empty
46, // 84: cipd.Repository.DeleteRef:output_type -> google.protobuf.Empty
19, // 85: cipd.Repository.ListRefs:output_type -> cipd.ListRefsResponse
46, // 86: cipd.Repository.AttachTags:output_type -> google.protobuf.Empty
46, // 87: cipd.Repository.DetachTags:output_type -> google.protobuf.Empty
46, // 88: cipd.Repository.AttachMetadata:output_type -> google.protobuf.Empty
46, // 89: cipd.Repository.DetachMetadata:output_type -> google.protobuf.Empty
27, // 90: cipd.Repository.ListMetadata:output_type -> cipd.ListMetadataResponse
10, // 91: cipd.Repository.ResolveVersion:output_type -> cipd.Instance
44, // 92: cipd.Repository.GetInstanceURL:output_type -> cipd.ObjectURL
32, // 93: cipd.Repository.DescribeInstance:output_type -> cipd.DescribeInstanceResponse
34, // 94: cipd.Repository.DescribeClient:output_type -> cipd.DescribeClientResponse
36, // 95: cipd.Repository.DescribeBootstrapBundle:output_type -> cipd.DescribeBootstrapBundleResponse
72, // [72:96] is the sub-list for method output_type
48, // [48:72] is the sub-list for method input_type
48, // [48:48] is the sub-list for extension type_name
48, // [48:48] is the sub-list for extension extendee
0, // [0:48] is the sub-list for field type_name
}
func init() { file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_init() }
func file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_init() {
if File_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto != nil {
return
}
file_go_chromium_org_luci_cipd_api_cipd_v1_cas_proto_init()
if !protoimpl.UnsafeEnabled {
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PrefixRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PrefixMetadata); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*InheritedPrefixMetadata); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RolesInPrefixResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListPrefixRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListPrefixResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PackageRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Instance); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RegisterInstanceResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListInstancesRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListInstancesResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SearchInstancesRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SearchInstancesResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Ref); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeleteRefRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListRefsRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListRefsResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Tag); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AttachTagsRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DetachTagsRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*InstanceMetadata); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AttachMetadataRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DetachMetadataRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListMetadataRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListMetadataResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ResolveVersionRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetInstanceURLRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Processor); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DescribeInstanceRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DescribeInstanceResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DescribeClientRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DescribeClientResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DescribeBootstrapBundleRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DescribeBootstrapBundleResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PrefixMetadata_ACL); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RolesInPrefixResponse_RoleInPrefix); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DescribeBootstrapBundleResponse_BootstrapFile); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDesc,
NumEnums: 3,
NumMessages: 37,
NumExtensions: 0,
NumServices: 1,
},
GoTypes: file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_goTypes,
DependencyIndexes: file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_depIdxs,
EnumInfos: file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_enumTypes,
MessageInfos: file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_msgTypes,
}.Build()
File_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto = out.File
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_rawDesc = nil
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_goTypes = nil
file_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto_depIdxs = nil
}