api/operator/v1alpha1/operator.pb.go

7413 lines
298 KiB
Go

// Copyright 2019 Istio 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.34.2
// protoc (unknown)
// source: operator/v1alpha1/operator.proto
// $title: IstioOperator Options
// $description: Configuration affecting Istio control plane installation version and shape.
// $location: https://istio.io/docs/reference/config/istio.operator.v1alpha1.html
// $weight: 20
// $mode: package
// Configuration affecting Istio control plane installation version and shape.
// Note: unlike other Istio protos, field names must use camelCase. This is asserted in tests.
// Without camelCase, the `json` tag on the Go struct will not match the user's JSON representation.
// This leads to Kubernetes merge libraries, which rely on this tag, to fail.
// All other usages use jsonpb which does not use the `json` tag.
package v1alpha1
import (
any1 "github.com/golang/protobuf/ptypes/any"
_struct "github.com/golang/protobuf/ptypes/struct"
wrappers "github.com/golang/protobuf/ptypes/wrappers"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
v1 "k8s.io/api/core/v1"
v11 "k8s.io/apimachinery/pkg/apis/meta/v1"
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)
)
// Status describes the current state of a component.
type InstallStatus_Status int32
const (
// Component is not present.
InstallStatus_NONE InstallStatus_Status = 0
// Component is being updated to a different version.
InstallStatus_UPDATING InstallStatus_Status = 1
// Controller has started but not yet completed reconciliation loop for the component.
InstallStatus_RECONCILING InstallStatus_Status = 2
// Component is healthy.
InstallStatus_HEALTHY InstallStatus_Status = 3
// Component is in an error state.
InstallStatus_ERROR InstallStatus_Status = 4
// Overall status only and would not be set as a component status.
// Action is needed from the user for reconciliation to proceed
// e.g. There are proxies still pointing to the control plane revision when try to remove an `IstioOperator` CR.
InstallStatus_ACTION_REQUIRED InstallStatus_Status = 5
)
// Enum value maps for InstallStatus_Status.
var (
InstallStatus_Status_name = map[int32]string{
0: "NONE",
1: "UPDATING",
2: "RECONCILING",
3: "HEALTHY",
4: "ERROR",
5: "ACTION_REQUIRED",
}
InstallStatus_Status_value = map[string]int32{
"NONE": 0,
"UPDATING": 1,
"RECONCILING": 2,
"HEALTHY": 3,
"ERROR": 4,
"ACTION_REQUIRED": 5,
}
)
func (x InstallStatus_Status) Enum() *InstallStatus_Status {
p := new(InstallStatus_Status)
*p = x
return p
}
func (x InstallStatus_Status) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (InstallStatus_Status) Descriptor() protoreflect.EnumDescriptor {
return file_operator_v1alpha1_operator_proto_enumTypes[0].Descriptor()
}
func (InstallStatus_Status) Type() protoreflect.EnumType {
return &file_operator_v1alpha1_operator_proto_enumTypes[0]
}
func (x InstallStatus_Status) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use InstallStatus_Status.Descriptor instead.
func (InstallStatus_Status) EnumDescriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{1, 0}
}
// <!-- go code generation tags
// +kubetype-gen
// +kubetype-gen:groupVersion=install.istio.io/v1alpha1
// +genclient
// +k8s:deepcopy-gen=true
// -->
// IstioOperatorSpec defines the desired installed state of Istio components.
// The spec is a used to define a customization of the default profile values that are supplied with each Istio release.
// Because the spec is a customization API, specifying an empty IstioOperatorSpec results in a default Istio
// component values.
//
// ```yaml
// apiVersion: install.istio.io/v1alpha1
// kind: IstioOperator
// spec:
//
// profile: default
// hub: gcr.io/istio-testing
// tag: latest
// revision: 1-8-0
// meshConfig:
// accessLogFile: /dev/stdout
// enableTracing: true
// components:
// egressGateways:
// - name: istio-egressgateway
// enabled: true
//
// ```
type IstioOperatorSpec struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Path or name for the profile e.g.
//
// * minimal (looks in profiles dir for a file called minimal.yaml)
// * /tmp/istio/install/values/custom/custom-install.yaml (local file path)
//
// default profile is used if this field is unset.
Profile string `protobuf:"bytes,10,opt,name=profile,proto3" json:"profile,omitempty"`
// Path for the install package. e.g.
//
// * /tmp/istio-installer/nightly (local file path)
InstallPackagePath string `protobuf:"bytes,11,opt,name=installPackagePath,proto3" json:"installPackagePath,omitempty"`
// Root for docker image paths e.g. `docker.io/istio`
Hub string `protobuf:"bytes,12,opt,name=hub,proto3" json:"hub,omitempty"`
// Version tag for docker images e.g. `1.7.2`
Tag *_struct.Value `protobuf:"bytes,13,opt,name=tag,proto3" json:"tag,omitempty"`
// $hide_from_docs
// Resource suffix is appended to all resources installed by each component.
// Never implemented; replaced by revision.
//
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
ResourceSuffix string `protobuf:"bytes,14,opt,name=resourceSuffix,proto3" json:"resourceSuffix,omitempty"`
// Namespace to install control plane resources into. If unset, Istio will be installed into the same namespace
// as the `IstioOperator` CR. You must also set `values.global.istioNamespace` if you wish to install Istio in
// a custom namespace.
// If you have enabled CNI, you must exclude this namespace by adding it to the list `values.cni.excludeNamespaces`.
Namespace string `protobuf:"bytes,15,opt,name=namespace,proto3" json:"namespace,omitempty"`
// Identify the revision this installation is associated with.
// This option is currently experimental.
Revision string `protobuf:"bytes,16,opt,name=revision,proto3" json:"revision,omitempty"`
// Compatibility version allows configuring Istio to behave like an older version by tuning various settings to align with a
// previous versions defaults. This accepts a `major.minor` format, such as `1.23`.
// This option is currently experimental.
CompatibilityVersion string `protobuf:"bytes,18,opt,name=compatibilityVersion,proto3" json:"compatibilityVersion,omitempty"`
// Config used by control plane components internally.
MeshConfig *_struct.Struct `protobuf:"bytes,40,opt,name=meshConfig,proto3" json:"meshConfig,omitempty"`
// Kubernetes resource settings, enablement and component-specific settings that are not internal to the
// component.
Components *IstioComponentSetSpec `protobuf:"bytes,50,opt,name=components,proto3" json:"components,omitempty"`
// Deprecated.
// Users should manage the installation of addon components on their own.
// Refer to samples/addons for demo installation of addon components.
//
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
AddonComponents map[string]*ExternalComponentSpec `protobuf:"bytes,51,rep,name=addonComponents,proto3" json:"addonComponents,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// Overrides for default `values.yaml`. This is a validated pass-through to Helm templates.
// See the [Helm installation options](https://istio.io/v1.5/docs/reference/config/installation-options/) for schema details.
// Anything that is available in `IstioOperatorSpec` should be set above rather than using the passthrough. This
// includes Kubernetes resource settings for components in `KubernetesResourcesSpec`.
Values *_struct.Struct `protobuf:"bytes,100,opt,name=values,proto3" json:"values,omitempty"`
// Unvalidated overrides for default `values.yaml`. Used for custom templates where new parameters are added.
UnvalidatedValues *_struct.Struct `protobuf:"bytes,101,opt,name=unvalidatedValues,proto3" json:"unvalidatedValues,omitempty"`
}
func (x *IstioOperatorSpec) Reset() {
*x = IstioOperatorSpec{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *IstioOperatorSpec) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*IstioOperatorSpec) ProtoMessage() {}
func (x *IstioOperatorSpec) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 IstioOperatorSpec.ProtoReflect.Descriptor instead.
func (*IstioOperatorSpec) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{0}
}
func (x *IstioOperatorSpec) GetProfile() string {
if x != nil {
return x.Profile
}
return ""
}
func (x *IstioOperatorSpec) GetInstallPackagePath() string {
if x != nil {
return x.InstallPackagePath
}
return ""
}
func (x *IstioOperatorSpec) GetHub() string {
if x != nil {
return x.Hub
}
return ""
}
func (x *IstioOperatorSpec) GetTag() *_struct.Value {
if x != nil {
return x.Tag
}
return nil
}
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
func (x *IstioOperatorSpec) GetResourceSuffix() string {
if x != nil {
return x.ResourceSuffix
}
return ""
}
func (x *IstioOperatorSpec) GetNamespace() string {
if x != nil {
return x.Namespace
}
return ""
}
func (x *IstioOperatorSpec) GetRevision() string {
if x != nil {
return x.Revision
}
return ""
}
func (x *IstioOperatorSpec) GetCompatibilityVersion() string {
if x != nil {
return x.CompatibilityVersion
}
return ""
}
func (x *IstioOperatorSpec) GetMeshConfig() *_struct.Struct {
if x != nil {
return x.MeshConfig
}
return nil
}
func (x *IstioOperatorSpec) GetComponents() *IstioComponentSetSpec {
if x != nil {
return x.Components
}
return nil
}
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
func (x *IstioOperatorSpec) GetAddonComponents() map[string]*ExternalComponentSpec {
if x != nil {
return x.AddonComponents
}
return nil
}
func (x *IstioOperatorSpec) GetValues() *_struct.Struct {
if x != nil {
return x.Values
}
return nil
}
func (x *IstioOperatorSpec) GetUnvalidatedValues() *_struct.Struct {
if x != nil {
return x.UnvalidatedValues
}
return nil
}
// Observed state of IstioOperator
type InstallStatus struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Overall status of all components controlled by the operator.
//
// * If all components have status `NONE`, overall status is `NONE`.
// * If all components are `HEALTHY`, overall status is `HEALTHY`.
// * If one or more components are `RECONCILING` and others are `HEALTHY`, overall status is `RECONCILING`.
// * If one or more components are `UPDATING` and others are `HEALTHY`, overall status is `UPDATING`.
// * If components are a mix of `RECONCILING`, `UPDATING` and `HEALTHY`, overall status is `UPDATING`.
// * If any component is in `ERROR` state, overall status is `ERROR`.
// * If further action is needed for reconciliation to proceed, overall status is `ACTION_REQUIRED`.
Status InstallStatus_Status `protobuf:"varint,1,opt,name=status,proto3,enum=istio.operator.v1alpha1.InstallStatus_Status" json:"status,omitempty"`
// Optional message providing additional information about the existing overall status.
Message string `protobuf:"bytes,3,opt,name=message,proto3" json:"message,omitempty"`
// Individual status of each component controlled by the operator. The map key is the name of the component.
ComponentStatus map[string]*InstallStatus_VersionStatus `protobuf:"bytes,2,rep,name=componentStatus,proto3" json:"componentStatus,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
}
func (x *InstallStatus) Reset() {
*x = InstallStatus{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *InstallStatus) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*InstallStatus) ProtoMessage() {}
func (x *InstallStatus) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 InstallStatus.ProtoReflect.Descriptor instead.
func (*InstallStatus) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{1}
}
func (x *InstallStatus) GetStatus() InstallStatus_Status {
if x != nil {
return x.Status
}
return InstallStatus_NONE
}
func (x *InstallStatus) GetMessage() string {
if x != nil {
return x.Message
}
return ""
}
func (x *InstallStatus) GetComponentStatus() map[string]*InstallStatus_VersionStatus {
if x != nil {
return x.ComponentStatus
}
return nil
}
// IstioComponentSpec defines the desired installed state of Istio components.
type IstioComponentSetSpec struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Base *BaseComponentSpec `protobuf:"bytes,29,opt,name=base,proto3" json:"base,omitempty"`
Pilot *ComponentSpec `protobuf:"bytes,30,opt,name=pilot,proto3" json:"pilot,omitempty"`
Cni *ComponentSpec `protobuf:"bytes,38,opt,name=cni,proto3" json:"cni,omitempty"`
Ztunnel *ComponentSpec `protobuf:"bytes,42,opt,name=ztunnel,proto3" json:"ztunnel,omitempty"`
// Remote cluster using an external control plane.
IstiodRemote *ComponentSpec `protobuf:"bytes,39,opt,name=istiodRemote,proto3" json:"istiodRemote,omitempty"`
IngressGateways []*GatewaySpec `protobuf:"bytes,40,rep,name=ingressGateways,proto3" json:"ingressGateways,omitempty"`
EgressGateways []*GatewaySpec `protobuf:"bytes,41,rep,name=egressGateways,proto3" json:"egressGateways,omitempty"`
}
func (x *IstioComponentSetSpec) Reset() {
*x = IstioComponentSetSpec{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *IstioComponentSetSpec) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*IstioComponentSetSpec) ProtoMessage() {}
func (x *IstioComponentSetSpec) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 IstioComponentSetSpec.ProtoReflect.Descriptor instead.
func (*IstioComponentSetSpec) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{2}
}
func (x *IstioComponentSetSpec) GetBase() *BaseComponentSpec {
if x != nil {
return x.Base
}
return nil
}
func (x *IstioComponentSetSpec) GetPilot() *ComponentSpec {
if x != nil {
return x.Pilot
}
return nil
}
func (x *IstioComponentSetSpec) GetCni() *ComponentSpec {
if x != nil {
return x.Cni
}
return nil
}
func (x *IstioComponentSetSpec) GetZtunnel() *ComponentSpec {
if x != nil {
return x.Ztunnel
}
return nil
}
func (x *IstioComponentSetSpec) GetIstiodRemote() *ComponentSpec {
if x != nil {
return x.IstiodRemote
}
return nil
}
func (x *IstioComponentSetSpec) GetIngressGateways() []*GatewaySpec {
if x != nil {
return x.IngressGateways
}
return nil
}
func (x *IstioComponentSetSpec) GetEgressGateways() []*GatewaySpec {
if x != nil {
return x.EgressGateways
}
return nil
}
// Configuration for base component.
type BaseComponentSpec struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Selects whether this component is installed.
Enabled *wrappers.BoolValue `protobuf:"bytes,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
// Kubernetes resource spec.
K8S *KubernetesResourcesSpec `protobuf:"bytes,50,opt,name=k8s,proto3" json:"k8s,omitempty"`
}
func (x *BaseComponentSpec) Reset() {
*x = BaseComponentSpec{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *BaseComponentSpec) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*BaseComponentSpec) ProtoMessage() {}
func (x *BaseComponentSpec) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 BaseComponentSpec.ProtoReflect.Descriptor instead.
func (*BaseComponentSpec) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{3}
}
func (x *BaseComponentSpec) GetEnabled() *wrappers.BoolValue {
if x != nil {
return x.Enabled
}
return nil
}
func (x *BaseComponentSpec) GetK8S() *KubernetesResourcesSpec {
if x != nil {
return x.K8S
}
return nil
}
// Configuration for internal components.
type ComponentSpec struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Selects whether this component is installed.
Enabled *wrappers.BoolValue `protobuf:"bytes,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
// Namespace for the component.
Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"`
// Hub for the component (overrides top level hub setting).
Hub string `protobuf:"bytes,10,opt,name=hub,proto3" json:"hub,omitempty"`
// Tag for the component (overrides top level tag setting).
Tag *_struct.Value `protobuf:"bytes,11,opt,name=tag,proto3" json:"tag,omitempty"`
// Arbitrary install time configuration for the component.
Spec *_struct.Struct `protobuf:"bytes,30,opt,name=spec,proto3" json:"spec,omitempty"`
// Kubernetes resource spec.
K8S *KubernetesResourcesSpec `protobuf:"bytes,50,opt,name=k8s,proto3" json:"k8s,omitempty"`
}
func (x *ComponentSpec) Reset() {
*x = ComponentSpec{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ComponentSpec) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ComponentSpec) ProtoMessage() {}
func (x *ComponentSpec) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 ComponentSpec.ProtoReflect.Descriptor instead.
func (*ComponentSpec) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{4}
}
func (x *ComponentSpec) GetEnabled() *wrappers.BoolValue {
if x != nil {
return x.Enabled
}
return nil
}
func (x *ComponentSpec) GetNamespace() string {
if x != nil {
return x.Namespace
}
return ""
}
func (x *ComponentSpec) GetHub() string {
if x != nil {
return x.Hub
}
return ""
}
func (x *ComponentSpec) GetTag() *_struct.Value {
if x != nil {
return x.Tag
}
return nil
}
func (x *ComponentSpec) GetSpec() *_struct.Struct {
if x != nil {
return x.Spec
}
return nil
}
func (x *ComponentSpec) GetK8S() *KubernetesResourcesSpec {
if x != nil {
return x.K8S
}
return nil
}
// Configuration for external components.
type ExternalComponentSpec struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Selects whether this component is installed.
Enabled *wrappers.BoolValue `protobuf:"bytes,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
// Namespace for the component.
Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"`
// Arbitrary install time configuration for the component.
Spec *_struct.Struct `protobuf:"bytes,10,opt,name=spec,proto3" json:"spec,omitempty"`
// Chart path for addon components.
ChartPath string `protobuf:"bytes,30,opt,name=chartPath,proto3" json:"chartPath,omitempty"`
// Optional schema to validate spec against.
Schema *any1.Any `protobuf:"bytes,35,opt,name=schema,proto3" json:"schema,omitempty"`
// Kubernetes resource spec.
K8S *KubernetesResourcesSpec `protobuf:"bytes,50,opt,name=k8s,proto3" json:"k8s,omitempty"`
}
func (x *ExternalComponentSpec) Reset() {
*x = ExternalComponentSpec{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ExternalComponentSpec) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ExternalComponentSpec) ProtoMessage() {}
func (x *ExternalComponentSpec) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 ExternalComponentSpec.ProtoReflect.Descriptor instead.
func (*ExternalComponentSpec) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{5}
}
func (x *ExternalComponentSpec) GetEnabled() *wrappers.BoolValue {
if x != nil {
return x.Enabled
}
return nil
}
func (x *ExternalComponentSpec) GetNamespace() string {
if x != nil {
return x.Namespace
}
return ""
}
func (x *ExternalComponentSpec) GetSpec() *_struct.Struct {
if x != nil {
return x.Spec
}
return nil
}
func (x *ExternalComponentSpec) GetChartPath() string {
if x != nil {
return x.ChartPath
}
return ""
}
func (x *ExternalComponentSpec) GetSchema() *any1.Any {
if x != nil {
return x.Schema
}
return nil
}
func (x *ExternalComponentSpec) GetK8S() *KubernetesResourcesSpec {
if x != nil {
return x.K8S
}
return nil
}
// Configuration for gateways.
type GatewaySpec struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Selects whether this gateway is installed.
Enabled *wrappers.BoolValue `protobuf:"bytes,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
// Namespace for the gateway.
Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"`
// Name for the gateway.
Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
// Labels for the gateway.
Label map[string]string `protobuf:"bytes,4,rep,name=label,proto3" json:"label,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// Hub for the component (overrides top level hub setting).
Hub string `protobuf:"bytes,10,opt,name=hub,proto3" json:"hub,omitempty"`
// Tag for the component (overrides top level tag setting).
Tag *_struct.Value `protobuf:"bytes,11,opt,name=tag,proto3" json:"tag,omitempty"`
// Kubernetes resource spec.
K8S *KubernetesResourcesSpec `protobuf:"bytes,50,opt,name=k8s,proto3" json:"k8s,omitempty"`
}
func (x *GatewaySpec) Reset() {
*x = GatewaySpec{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GatewaySpec) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GatewaySpec) ProtoMessage() {}
func (x *GatewaySpec) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 GatewaySpec.ProtoReflect.Descriptor instead.
func (*GatewaySpec) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{6}
}
func (x *GatewaySpec) GetEnabled() *wrappers.BoolValue {
if x != nil {
return x.Enabled
}
return nil
}
func (x *GatewaySpec) GetNamespace() string {
if x != nil {
return x.Namespace
}
return ""
}
func (x *GatewaySpec) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *GatewaySpec) GetLabel() map[string]string {
if x != nil {
return x.Label
}
return nil
}
func (x *GatewaySpec) GetHub() string {
if x != nil {
return x.Hub
}
return ""
}
func (x *GatewaySpec) GetTag() *_struct.Value {
if x != nil {
return x.Tag
}
return nil
}
func (x *GatewaySpec) GetK8S() *KubernetesResourcesSpec {
if x != nil {
return x.K8S
}
return nil
}
// KubernetesResourcesSpec is a common set of Kubernetes resource configs for components.
type KubernetesResourcesSpec struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Kubernetes affinity.
// [https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity)
Affinity *Affinity `protobuf:"bytes,1,opt,name=affinity,proto3" json:"affinity,omitempty"`
// Deployment environment variables.
// [https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/](https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/)
Env []*EnvVar `protobuf:"bytes,2,rep,name=env,proto3" json:"env,omitempty"`
// Kubernetes HorizontalPodAutoscaler settings.
// [https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/](https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/)
HpaSpec *HorizontalPodAutoscalerSpec `protobuf:"bytes,3,opt,name=hpaSpec,proto3" json:"hpaSpec,omitempty"`
// Kubernetes imagePullPolicy.
// [https://kubernetes.io/docs/concepts/containers/images/](https://kubernetes.io/docs/concepts/containers/images/)
ImagePullPolicy string `protobuf:"bytes,4,opt,name=imagePullPolicy,proto3" json:"imagePullPolicy,omitempty"`
// Kubernetes nodeSelector.
// [https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector)
NodeSelector map[string]string `protobuf:"bytes,5,rep,name=nodeSelector,proto3" json:"nodeSelector,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// Kubernetes PodDisruptionBudget settings.
// [https://kubernetes.io/docs/concepts/workloads/pods/disruptions/#how-disruption-budgets-work](https://kubernetes.io/docs/concepts/workloads/pods/disruptions/#how-disruption-budgets-work)
PodDisruptionBudget *PodDisruptionBudgetSpec `protobuf:"bytes,6,opt,name=podDisruptionBudget,proto3" json:"podDisruptionBudget,omitempty"`
// Kubernetes pod annotations.
// [https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/](https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/)
PodAnnotations map[string]string `protobuf:"bytes,7,rep,name=podAnnotations,proto3" json:"podAnnotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// Kubernetes priorityClassName. Default for all resources unless overridden.
// [https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/#priorityclass](https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/#priorityclass)
PriorityClassName string `protobuf:"bytes,8,opt,name=priorityClassName,proto3" json:"priorityClassName,omitempty"`
// Kubernetes readinessProbe settings.
// [https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/)
// k8s.io.api.core.v1.Probe readiness_probe = 9;
ReadinessProbe *ReadinessProbe `protobuf:"bytes,9,opt,name=readinessProbe,proto3" json:"readinessProbe,omitempty"`
// Kubernetes Deployment replicas setting.
// [https://kubernetes.io/docs/concepts/workloads/controllers/deployment/](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/)
ReplicaCount uint32 `protobuf:"varint,10,opt,name=replicaCount,proto3" json:"replicaCount,omitempty"`
// Kubernetes resources settings.
// [https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#resource-requests-and-limits-of-pod-and-container](https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#resource-requests-and-limits-of-pod-and-container)
Resources *Resources `protobuf:"bytes,11,opt,name=resources,proto3" json:"resources,omitempty"`
// Kubernetes Service settings.
// [https://kubernetes.io/docs/concepts/services-networking/service/](https://kubernetes.io/docs/concepts/services-networking/service/)
Service *ServiceSpec `protobuf:"bytes,12,opt,name=service,proto3" json:"service,omitempty"`
// Kubernetes deployment strategy.
// [https://kubernetes.io/docs/concepts/workloads/controllers/deployment/](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/)
Strategy *DeploymentStrategy `protobuf:"bytes,13,opt,name=strategy,proto3" json:"strategy,omitempty"`
// Kubernetes toleration
// [https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/)
Tolerations []*Toleration `protobuf:"bytes,14,rep,name=tolerations,proto3" json:"tolerations,omitempty"`
// Kubernetes service annotations.
// [https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/](https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/)
ServiceAnnotations map[string]string `protobuf:"bytes,15,rep,name=serviceAnnotations,proto3" json:"serviceAnnotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// Kubernetes pod security context
// [https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod)
SecurityContext *PodSecurityContext `protobuf:"bytes,16,opt,name=securityContext,proto3" json:"securityContext,omitempty"`
// Kubernetes volumes
// [https://kubernetes.io/docs/concepts/storage/volumes/](https://kubernetes.io/docs/concepts/storage/volumes/)
// Volumes defines the collection of Volume to inject into the pod.
Volumes []*v1.Volume `protobuf:"bytes,17,rep,name=volumes,proto3" json:"volumes,omitempty"`
// Kubernetes volumeMounts
// VolumeMounts defines the collection of VolumeMount to inject into containers.
VolumeMounts []*v1.VolumeMount `protobuf:"bytes,18,rep,name=volumeMounts,proto3" json:"volumeMounts,omitempty"`
// Overlays for Kubernetes resources in rendered manifests.
Overlays []*K8SObjectOverlay `protobuf:"bytes,100,rep,name=overlays,proto3" json:"overlays,omitempty"`
}
func (x *KubernetesResourcesSpec) Reset() {
*x = KubernetesResourcesSpec{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *KubernetesResourcesSpec) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*KubernetesResourcesSpec) ProtoMessage() {}
func (x *KubernetesResourcesSpec) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 KubernetesResourcesSpec.ProtoReflect.Descriptor instead.
func (*KubernetesResourcesSpec) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{7}
}
func (x *KubernetesResourcesSpec) GetAffinity() *Affinity {
if x != nil {
return x.Affinity
}
return nil
}
func (x *KubernetesResourcesSpec) GetEnv() []*EnvVar {
if x != nil {
return x.Env
}
return nil
}
func (x *KubernetesResourcesSpec) GetHpaSpec() *HorizontalPodAutoscalerSpec {
if x != nil {
return x.HpaSpec
}
return nil
}
func (x *KubernetesResourcesSpec) GetImagePullPolicy() string {
if x != nil {
return x.ImagePullPolicy
}
return ""
}
func (x *KubernetesResourcesSpec) GetNodeSelector() map[string]string {
if x != nil {
return x.NodeSelector
}
return nil
}
func (x *KubernetesResourcesSpec) GetPodDisruptionBudget() *PodDisruptionBudgetSpec {
if x != nil {
return x.PodDisruptionBudget
}
return nil
}
func (x *KubernetesResourcesSpec) GetPodAnnotations() map[string]string {
if x != nil {
return x.PodAnnotations
}
return nil
}
func (x *KubernetesResourcesSpec) GetPriorityClassName() string {
if x != nil {
return x.PriorityClassName
}
return ""
}
func (x *KubernetesResourcesSpec) GetReadinessProbe() *ReadinessProbe {
if x != nil {
return x.ReadinessProbe
}
return nil
}
func (x *KubernetesResourcesSpec) GetReplicaCount() uint32 {
if x != nil {
return x.ReplicaCount
}
return 0
}
func (x *KubernetesResourcesSpec) GetResources() *Resources {
if x != nil {
return x.Resources
}
return nil
}
func (x *KubernetesResourcesSpec) GetService() *ServiceSpec {
if x != nil {
return x.Service
}
return nil
}
func (x *KubernetesResourcesSpec) GetStrategy() *DeploymentStrategy {
if x != nil {
return x.Strategy
}
return nil
}
func (x *KubernetesResourcesSpec) GetTolerations() []*Toleration {
if x != nil {
return x.Tolerations
}
return nil
}
func (x *KubernetesResourcesSpec) GetServiceAnnotations() map[string]string {
if x != nil {
return x.ServiceAnnotations
}
return nil
}
func (x *KubernetesResourcesSpec) GetSecurityContext() *PodSecurityContext {
if x != nil {
return x.SecurityContext
}
return nil
}
func (x *KubernetesResourcesSpec) GetVolumes() []*v1.Volume {
if x != nil {
return x.Volumes
}
return nil
}
func (x *KubernetesResourcesSpec) GetVolumeMounts() []*v1.VolumeMount {
if x != nil {
return x.VolumeMounts
}
return nil
}
func (x *KubernetesResourcesSpec) GetOverlays() []*K8SObjectOverlay {
if x != nil {
return x.Overlays
}
return nil
}
// Patch for an existing Kubernetes resource.
type K8SObjectOverlay struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Resource API version.
ApiVersion string `protobuf:"bytes,1,opt,name=apiVersion,proto3" json:"apiVersion,omitempty"`
// Resource kind.
Kind string `protobuf:"bytes,2,opt,name=kind,proto3" json:"kind,omitempty"`
// Name of resource.
// Namespace is always the component namespace.
Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
// List of patches to apply to resource.
Patches []*K8SObjectOverlay_PathValue `protobuf:"bytes,4,rep,name=patches,proto3" json:"patches,omitempty"`
}
func (x *K8SObjectOverlay) Reset() {
*x = K8SObjectOverlay{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *K8SObjectOverlay) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*K8SObjectOverlay) ProtoMessage() {}
func (x *K8SObjectOverlay) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 K8SObjectOverlay.ProtoReflect.Descriptor instead.
func (*K8SObjectOverlay) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{8}
}
func (x *K8SObjectOverlay) GetApiVersion() string {
if x != nil {
return x.ApiVersion
}
return ""
}
func (x *K8SObjectOverlay) GetKind() string {
if x != nil {
return x.Kind
}
return ""
}
func (x *K8SObjectOverlay) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *K8SObjectOverlay) GetPatches() []*K8SObjectOverlay_PathValue {
if x != nil {
return x.Patches
}
return nil
}
// See k8s.io.api.core.v1.Affinity.
type Affinity struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
NodeAffinity *NodeAffinity `protobuf:"bytes,1,opt,name=nodeAffinity,proto3" json:"nodeAffinity,omitempty"`
PodAffinity *PodAffinity `protobuf:"bytes,2,opt,name=podAffinity,proto3" json:"podAffinity,omitempty"`
PodAntiAffinity *PodAntiAffinity `protobuf:"bytes,3,opt,name=podAntiAffinity,proto3" json:"podAntiAffinity,omitempty"`
}
func (x *Affinity) Reset() {
*x = Affinity{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Affinity) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Affinity) ProtoMessage() {}
func (x *Affinity) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 Affinity.ProtoReflect.Descriptor instead.
func (*Affinity) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{9}
}
func (x *Affinity) GetNodeAffinity() *NodeAffinity {
if x != nil {
return x.NodeAffinity
}
return nil
}
func (x *Affinity) GetPodAffinity() *PodAffinity {
if x != nil {
return x.PodAffinity
}
return nil
}
func (x *Affinity) GetPodAntiAffinity() *PodAntiAffinity {
if x != nil {
return x.PodAntiAffinity
}
return nil
}
// See k8s.io.api.core.v1.ConfigMapKeySelector.
type ConfigMapKeySelector struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
LocalObjectReference *LocalObjectReference `protobuf:"bytes,1,opt,name=localObjectReference,proto3" json:"localObjectReference,omitempty"`
Key string `protobuf:"bytes,2,opt,name=key,proto3" json:"key,omitempty"`
Optional bool `protobuf:"varint,3,opt,name=optional,proto3" json:"optional,omitempty"`
}
func (x *ConfigMapKeySelector) Reset() {
*x = ConfigMapKeySelector{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ConfigMapKeySelector) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ConfigMapKeySelector) ProtoMessage() {}
func (x *ConfigMapKeySelector) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 ConfigMapKeySelector.ProtoReflect.Descriptor instead.
func (*ConfigMapKeySelector) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{10}
}
func (x *ConfigMapKeySelector) GetLocalObjectReference() *LocalObjectReference {
if x != nil {
return x.LocalObjectReference
}
return nil
}
func (x *ConfigMapKeySelector) GetKey() string {
if x != nil {
return x.Key
}
return ""
}
func (x *ConfigMapKeySelector) GetOptional() bool {
if x != nil {
return x.Optional
}
return false
}
// See k8s.io.api.autoscaling.v2beta2.ContainerResourceMetricSource.
type ContainerResourceMetricSource struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
Target *MetricTarget `protobuf:"bytes,2,opt,name=target,proto3" json:"target,omitempty"`
Container string `protobuf:"bytes,3,opt,name=container,proto3" json:"container,omitempty"`
}
func (x *ContainerResourceMetricSource) Reset() {
*x = ContainerResourceMetricSource{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ContainerResourceMetricSource) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ContainerResourceMetricSource) ProtoMessage() {}
func (x *ContainerResourceMetricSource) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 ContainerResourceMetricSource.ProtoReflect.Descriptor instead.
func (*ContainerResourceMetricSource) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{11}
}
func (x *ContainerResourceMetricSource) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *ContainerResourceMetricSource) GetTarget() *MetricTarget {
if x != nil {
return x.Target
}
return nil
}
func (x *ContainerResourceMetricSource) GetContainer() string {
if x != nil {
return x.Container
}
return ""
}
// See k8s.io.api.autoscaling.v2beta2.ContainerResourceMetricStatus.
type ContainerResourceMetricStatus struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
Current *MetricValueStatus `protobuf:"bytes,2,opt,name=current,proto3" json:"current,omitempty"`
Container string `protobuf:"bytes,3,opt,name=container,proto3" json:"container,omitempty"`
}
func (x *ContainerResourceMetricStatus) Reset() {
*x = ContainerResourceMetricStatus{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ContainerResourceMetricStatus) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ContainerResourceMetricStatus) ProtoMessage() {}
func (x *ContainerResourceMetricStatus) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 ContainerResourceMetricStatus.ProtoReflect.Descriptor instead.
func (*ContainerResourceMetricStatus) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{12}
}
func (x *ContainerResourceMetricStatus) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *ContainerResourceMetricStatus) GetCurrent() *MetricValueStatus {
if x != nil {
return x.Current
}
return nil
}
func (x *ContainerResourceMetricStatus) GetContainer() string {
if x != nil {
return x.Container
}
return ""
}
// See k8s.io.api.core.v1.ClientIPConfig.
type ClientIPConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
TimeoutSeconds int32 `protobuf:"varint,1,opt,name=timeoutSeconds,proto3" json:"timeoutSeconds,omitempty"`
}
func (x *ClientIPConfig) Reset() {
*x = ClientIPConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ClientIPConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ClientIPConfig) ProtoMessage() {}
func (x *ClientIPConfig) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 ClientIPConfig.ProtoReflect.Descriptor instead.
func (*ClientIPConfig) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{13}
}
func (x *ClientIPConfig) GetTimeoutSeconds() int32 {
if x != nil {
return x.TimeoutSeconds
}
return 0
}
// See k8s.io.api.autoscaling.v2beta2.CrossVersionObjectReference.
type CrossVersionObjectReference struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Kind string `protobuf:"bytes,1,opt,name=kind,proto3" json:"kind,omitempty"`
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
ApiVersion string `protobuf:"bytes,3,opt,name=apiVersion,proto3" json:"apiVersion,omitempty"`
}
func (x *CrossVersionObjectReference) Reset() {
*x = CrossVersionObjectReference{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CrossVersionObjectReference) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CrossVersionObjectReference) ProtoMessage() {}
func (x *CrossVersionObjectReference) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 CrossVersionObjectReference.ProtoReflect.Descriptor instead.
func (*CrossVersionObjectReference) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{14}
}
func (x *CrossVersionObjectReference) GetKind() string {
if x != nil {
return x.Kind
}
return ""
}
func (x *CrossVersionObjectReference) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *CrossVersionObjectReference) GetApiVersion() string {
if x != nil {
return x.ApiVersion
}
return ""
}
// See k8s.io.api.apps.v1.DeploymentStrategy.
type DeploymentStrategy struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
RollingUpdate *RollingUpdateDeployment `protobuf:"bytes,2,opt,name=rollingUpdate,proto3" json:"rollingUpdate,omitempty"`
}
func (x *DeploymentStrategy) Reset() {
*x = DeploymentStrategy{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DeploymentStrategy) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DeploymentStrategy) ProtoMessage() {}
func (x *DeploymentStrategy) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 DeploymentStrategy.ProtoReflect.Descriptor instead.
func (*DeploymentStrategy) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{15}
}
func (x *DeploymentStrategy) GetType() string {
if x != nil {
return x.Type
}
return ""
}
func (x *DeploymentStrategy) GetRollingUpdate() *RollingUpdateDeployment {
if x != nil {
return x.RollingUpdate
}
return nil
}
// See k8s.io.api.core.v1.EnvVar.
type EnvVar struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
ValueFrom *EnvVarSource `protobuf:"bytes,3,opt,name=valueFrom,proto3" json:"valueFrom,omitempty"`
}
func (x *EnvVar) Reset() {
*x = EnvVar{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *EnvVar) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*EnvVar) ProtoMessage() {}
func (x *EnvVar) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 EnvVar.ProtoReflect.Descriptor instead.
func (*EnvVar) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{16}
}
func (x *EnvVar) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *EnvVar) GetValue() string {
if x != nil {
return x.Value
}
return ""
}
func (x *EnvVar) GetValueFrom() *EnvVarSource {
if x != nil {
return x.ValueFrom
}
return nil
}
// See k8s.io.api.core.v1.EnvVarSource.
type EnvVarSource struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
FieldRef *ObjectFieldSelector `protobuf:"bytes,1,opt,name=fieldRef,proto3" json:"fieldRef,omitempty"`
ResourceFieldRef *ResourceFieldSelector `protobuf:"bytes,2,opt,name=resourceFieldRef,proto3" json:"resourceFieldRef,omitempty"`
ConfigMapKeyRef *ConfigMapKeySelector `protobuf:"bytes,3,opt,name=configMapKeyRef,proto3" json:"configMapKeyRef,omitempty"`
SecretKeyRef *SecretKeySelector `protobuf:"bytes,4,opt,name=secretKeyRef,proto3" json:"secretKeyRef,omitempty"`
}
func (x *EnvVarSource) Reset() {
*x = EnvVarSource{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[17]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *EnvVarSource) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*EnvVarSource) ProtoMessage() {}
func (x *EnvVarSource) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 EnvVarSource.ProtoReflect.Descriptor instead.
func (*EnvVarSource) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{17}
}
func (x *EnvVarSource) GetFieldRef() *ObjectFieldSelector {
if x != nil {
return x.FieldRef
}
return nil
}
func (x *EnvVarSource) GetResourceFieldRef() *ResourceFieldSelector {
if x != nil {
return x.ResourceFieldRef
}
return nil
}
func (x *EnvVarSource) GetConfigMapKeyRef() *ConfigMapKeySelector {
if x != nil {
return x.ConfigMapKeyRef
}
return nil
}
func (x *EnvVarSource) GetSecretKeyRef() *SecretKeySelector {
if x != nil {
return x.SecretKeyRef
}
return nil
}
// See k8s.io.api.core.v1.ExecAction.
type ExecAction struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Command []string `protobuf:"bytes,1,rep,name=command,proto3" json:"command,omitempty"`
}
func (x *ExecAction) Reset() {
*x = ExecAction{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[18]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ExecAction) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ExecAction) ProtoMessage() {}
func (x *ExecAction) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 ExecAction.ProtoReflect.Descriptor instead.
func (*ExecAction) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{18}
}
func (x *ExecAction) GetCommand() []string {
if x != nil {
return x.Command
}
return nil
}
// See k8s.io.api.autoscaling.v2beta2.ExternalMetricSource.
type ExternalMetricSource struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
MetricName string `protobuf:"bytes,1,opt,name=metricName,proto3" json:"metricName,omitempty"`
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
MetricSelector *v11.LabelSelector `protobuf:"bytes,2,opt,name=metricSelector,proto3" json:"metricSelector,omitempty"`
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
TargetValue *IntOrString `protobuf:"bytes,3,opt,name=targetValue,proto3" json:"targetValue,omitempty"`
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
TargetAverageValue *IntOrString `protobuf:"bytes,4,opt,name=targetAverageValue,proto3" json:"targetAverageValue,omitempty"`
Metric *MetricIdentifier `protobuf:"bytes,5,opt,name=metric,proto3" json:"metric,omitempty"`
Target *MetricTarget `protobuf:"bytes,6,opt,name=target,proto3" json:"target,omitempty"`
}
func (x *ExternalMetricSource) Reset() {
*x = ExternalMetricSource{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[19]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ExternalMetricSource) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ExternalMetricSource) ProtoMessage() {}
func (x *ExternalMetricSource) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 ExternalMetricSource.ProtoReflect.Descriptor instead.
func (*ExternalMetricSource) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{19}
}
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
func (x *ExternalMetricSource) GetMetricName() string {
if x != nil {
return x.MetricName
}
return ""
}
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
func (x *ExternalMetricSource) GetMetricSelector() *v11.LabelSelector {
if x != nil {
return x.MetricSelector
}
return nil
}
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
func (x *ExternalMetricSource) GetTargetValue() *IntOrString {
if x != nil {
return x.TargetValue
}
return nil
}
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
func (x *ExternalMetricSource) GetTargetAverageValue() *IntOrString {
if x != nil {
return x.TargetAverageValue
}
return nil
}
func (x *ExternalMetricSource) GetMetric() *MetricIdentifier {
if x != nil {
return x.Metric
}
return nil
}
func (x *ExternalMetricSource) GetTarget() *MetricTarget {
if x != nil {
return x.Target
}
return nil
}
// See k8s.io.autoscaling.v2beta2.ExternalMetricStatus.
type ExternalMetricStatus struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Metric *MetricIdentifier `protobuf:"bytes,1,opt,name=metric,proto3" json:"metric,omitempty"`
Current *MetricValueStatus `protobuf:"bytes,2,opt,name=current,proto3" json:"current,omitempty"`
}
func (x *ExternalMetricStatus) Reset() {
*x = ExternalMetricStatus{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[20]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ExternalMetricStatus) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ExternalMetricStatus) ProtoMessage() {}
func (x *ExternalMetricStatus) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 ExternalMetricStatus.ProtoReflect.Descriptor instead.
func (*ExternalMetricStatus) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{20}
}
func (x *ExternalMetricStatus) GetMetric() *MetricIdentifier {
if x != nil {
return x.Metric
}
return nil
}
func (x *ExternalMetricStatus) GetCurrent() *MetricValueStatus {
if x != nil {
return x.Current
}
return nil
}
// See k8s.io.api.core.v1.HTTPGetAction.
type HTTPGetAction struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
Port *IntOrString `protobuf:"bytes,2,opt,name=port,proto3" json:"port,omitempty"`
Host string `protobuf:"bytes,3,opt,name=host,proto3" json:"host,omitempty"`
Scheme string `protobuf:"bytes,4,opt,name=scheme,proto3" json:"scheme,omitempty"`
HttpHeaders []*HTTPHeader `protobuf:"bytes,5,rep,name=httpHeaders,proto3" json:"httpHeaders,omitempty"`
}
func (x *HTTPGetAction) Reset() {
*x = HTTPGetAction{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[21]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *HTTPGetAction) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*HTTPGetAction) ProtoMessage() {}
func (x *HTTPGetAction) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 HTTPGetAction.ProtoReflect.Descriptor instead.
func (*HTTPGetAction) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{21}
}
func (x *HTTPGetAction) GetPath() string {
if x != nil {
return x.Path
}
return ""
}
func (x *HTTPGetAction) GetPort() *IntOrString {
if x != nil {
return x.Port
}
return nil
}
func (x *HTTPGetAction) GetHost() string {
if x != nil {
return x.Host
}
return ""
}
func (x *HTTPGetAction) GetScheme() string {
if x != nil {
return x.Scheme
}
return ""
}
func (x *HTTPGetAction) GetHttpHeaders() []*HTTPHeader {
if x != nil {
return x.HttpHeaders
}
return nil
}
// See k8s.io.api.core.v1.HTTPHeader.
type HTTPHeader struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
}
func (x *HTTPHeader) Reset() {
*x = HTTPHeader{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[22]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *HTTPHeader) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*HTTPHeader) ProtoMessage() {}
func (x *HTTPHeader) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 HTTPHeader.ProtoReflect.Descriptor instead.
func (*HTTPHeader) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{22}
}
func (x *HTTPHeader) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *HTTPHeader) GetValue() string {
if x != nil {
return x.Value
}
return ""
}
// See k8s.io.api.autoscaling.v2beta1.HorizontalPodAutoscalerSpec.
type HorizontalPodAutoscalerSpec struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
ScaleTargetRef *CrossVersionObjectReference `protobuf:"bytes,1,opt,name=scaleTargetRef,proto3" json:"scaleTargetRef,omitempty"`
MinReplicas int32 `protobuf:"varint,2,opt,name=minReplicas,proto3" json:"minReplicas,omitempty"`
MaxReplicas int32 `protobuf:"varint,3,opt,name=maxReplicas,proto3" json:"maxReplicas,omitempty"`
Metrics []*MetricSpec `protobuf:"bytes,4,rep,name=metrics,proto3" json:"metrics,omitempty"`
Behavior *HorizontalPodAutoScalerBehavior `protobuf:"bytes,5,opt,name=behavior,proto3" json:"behavior,omitempty"`
}
func (x *HorizontalPodAutoscalerSpec) Reset() {
*x = HorizontalPodAutoscalerSpec{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[23]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *HorizontalPodAutoscalerSpec) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*HorizontalPodAutoscalerSpec) ProtoMessage() {}
func (x *HorizontalPodAutoscalerSpec) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 HorizontalPodAutoscalerSpec.ProtoReflect.Descriptor instead.
func (*HorizontalPodAutoscalerSpec) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{23}
}
func (x *HorizontalPodAutoscalerSpec) GetScaleTargetRef() *CrossVersionObjectReference {
if x != nil {
return x.ScaleTargetRef
}
return nil
}
func (x *HorizontalPodAutoscalerSpec) GetMinReplicas() int32 {
if x != nil {
return x.MinReplicas
}
return 0
}
func (x *HorizontalPodAutoscalerSpec) GetMaxReplicas() int32 {
if x != nil {
return x.MaxReplicas
}
return 0
}
func (x *HorizontalPodAutoscalerSpec) GetMetrics() []*MetricSpec {
if x != nil {
return x.Metrics
}
return nil
}
func (x *HorizontalPodAutoscalerSpec) GetBehavior() *HorizontalPodAutoScalerBehavior {
if x != nil {
return x.Behavior
}
return nil
}
// See k8s.io.autoscaling.v2beta2.HorizontalPodAutoScalerBehavior.
type HorizontalPodAutoScalerBehavior struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
ScaleUp *HPAScalingRules `protobuf:"bytes,1,opt,name=scaleUp,proto3" json:"scaleUp,omitempty"`
ScaleDown *HPAScalingRules `protobuf:"bytes,2,opt,name=scaleDown,proto3" json:"scaleDown,omitempty"`
}
func (x *HorizontalPodAutoScalerBehavior) Reset() {
*x = HorizontalPodAutoScalerBehavior{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[24]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *HorizontalPodAutoScalerBehavior) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*HorizontalPodAutoScalerBehavior) ProtoMessage() {}
func (x *HorizontalPodAutoScalerBehavior) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 HorizontalPodAutoScalerBehavior.ProtoReflect.Descriptor instead.
func (*HorizontalPodAutoScalerBehavior) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{24}
}
func (x *HorizontalPodAutoScalerBehavior) GetScaleUp() *HPAScalingRules {
if x != nil {
return x.ScaleUp
}
return nil
}
func (x *HorizontalPodAutoScalerBehavior) GetScaleDown() *HPAScalingRules {
if x != nil {
return x.ScaleDown
}
return nil
}
// See k8s.io.autoscaling.v2beta2.HPAScalingRules.
type HPAScalingRules struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
StabilizationWindowSeconds int32 `protobuf:"varint,3,opt,name=stabilizationWindowSeconds,proto3" json:"stabilizationWindowSeconds,omitempty"`
SelectPolicy string `protobuf:"bytes,1,opt,name=selectPolicy,proto3" json:"selectPolicy,omitempty"`
Policies []*HPAScalingPolicy `protobuf:"bytes,2,rep,name=policies,proto3" json:"policies,omitempty"`
}
func (x *HPAScalingRules) Reset() {
*x = HPAScalingRules{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[25]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *HPAScalingRules) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*HPAScalingRules) ProtoMessage() {}
func (x *HPAScalingRules) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 HPAScalingRules.ProtoReflect.Descriptor instead.
func (*HPAScalingRules) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{25}
}
func (x *HPAScalingRules) GetStabilizationWindowSeconds() int32 {
if x != nil {
return x.StabilizationWindowSeconds
}
return 0
}
func (x *HPAScalingRules) GetSelectPolicy() string {
if x != nil {
return x.SelectPolicy
}
return ""
}
func (x *HPAScalingRules) GetPolicies() []*HPAScalingPolicy {
if x != nil {
return x.Policies
}
return nil
}
// See k8s.io.autoscaling.v2beta2.HPAScalingPolicy.
type HPAScalingPolicy struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
Value int32 `protobuf:"varint,2,opt,name=value,proto3" json:"value,omitempty"`
PeriodSeconds int32 `protobuf:"varint,3,opt,name=periodSeconds,proto3" json:"periodSeconds,omitempty"`
}
func (x *HPAScalingPolicy) Reset() {
*x = HPAScalingPolicy{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[26]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *HPAScalingPolicy) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*HPAScalingPolicy) ProtoMessage() {}
func (x *HPAScalingPolicy) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 HPAScalingPolicy.ProtoReflect.Descriptor instead.
func (*HPAScalingPolicy) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{26}
}
func (x *HPAScalingPolicy) GetType() string {
if x != nil {
return x.Type
}
return ""
}
func (x *HPAScalingPolicy) GetValue() int32 {
if x != nil {
return x.Value
}
return 0
}
func (x *HPAScalingPolicy) GetPeriodSeconds() int32 {
if x != nil {
return x.PeriodSeconds
}
return 0
}
// See k8s.io.api.core.v1.LocalObjectReference.
type LocalObjectReference struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
}
func (x *LocalObjectReference) Reset() {
*x = LocalObjectReference{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[27]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LocalObjectReference) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LocalObjectReference) ProtoMessage() {}
func (x *LocalObjectReference) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 LocalObjectReference.ProtoReflect.Descriptor instead.
func (*LocalObjectReference) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{27}
}
func (x *LocalObjectReference) GetName() string {
if x != nil {
return x.Name
}
return ""
}
// See k8s.io.autoscaling.v2beta2.MetricIdentifier.
type MetricIdentifier struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Name *string `protobuf:"bytes,1,opt,name=name,proto3,oneof" json:"name,omitempty"`
Selector *v11.LabelSelector `protobuf:"bytes,2,opt,name=selector,proto3" json:"selector,omitempty"`
}
func (x *MetricIdentifier) Reset() {
*x = MetricIdentifier{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[28]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *MetricIdentifier) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*MetricIdentifier) ProtoMessage() {}
func (x *MetricIdentifier) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 MetricIdentifier.ProtoReflect.Descriptor instead.
func (*MetricIdentifier) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{28}
}
func (x *MetricIdentifier) GetName() string {
if x != nil && x.Name != nil {
return *x.Name
}
return ""
}
func (x *MetricIdentifier) GetSelector() *v11.LabelSelector {
if x != nil {
return x.Selector
}
return nil
}
// See k8s.io.autoscaling.v2beta2.MetricSpec.
type MetricSpec struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
Object *ObjectMetricSource `protobuf:"bytes,2,opt,name=object,proto3" json:"object,omitempty"`
Pods *PodsMetricSource `protobuf:"bytes,3,opt,name=pods,proto3" json:"pods,omitempty"`
Resource *ResourceMetricSource `protobuf:"bytes,4,opt,name=resource,proto3" json:"resource,omitempty"`
ContainerResource *ContainerResourceMetricSource `protobuf:"bytes,7,opt,name=containerResource,proto3" json:"containerResource,omitempty"`
External *ExternalMetricSource `protobuf:"bytes,5,opt,name=external,proto3" json:"external,omitempty"`
}
func (x *MetricSpec) Reset() {
*x = MetricSpec{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[29]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *MetricSpec) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*MetricSpec) ProtoMessage() {}
func (x *MetricSpec) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 MetricSpec.ProtoReflect.Descriptor instead.
func (*MetricSpec) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{29}
}
func (x *MetricSpec) GetType() string {
if x != nil {
return x.Type
}
return ""
}
func (x *MetricSpec) GetObject() *ObjectMetricSource {
if x != nil {
return x.Object
}
return nil
}
func (x *MetricSpec) GetPods() *PodsMetricSource {
if x != nil {
return x.Pods
}
return nil
}
func (x *MetricSpec) GetResource() *ResourceMetricSource {
if x != nil {
return x.Resource
}
return nil
}
func (x *MetricSpec) GetContainerResource() *ContainerResourceMetricSource {
if x != nil {
return x.ContainerResource
}
return nil
}
func (x *MetricSpec) GetExternal() *ExternalMetricSource {
if x != nil {
return x.External
}
return nil
}
// See k8s.io.autoscaling.v2beta2.MetricStatus.
type MetricStatus struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
Object *ObjectMetricStatus `protobuf:"bytes,2,opt,name=object,proto3" json:"object,omitempty"`
Pods *PodsMetricStatus `protobuf:"bytes,3,opt,name=pods,proto3" json:"pods,omitempty"`
Resource *ResourceMetricStatus `protobuf:"bytes,4,opt,name=resource,proto3" json:"resource,omitempty"`
ContainerResource *ContainerResourceMetricStatus `protobuf:"bytes,7,opt,name=containerResource,proto3" json:"containerResource,omitempty"`
External *ExternalMetricStatus `protobuf:"bytes,5,opt,name=external,proto3" json:"external,omitempty"`
}
func (x *MetricStatus) Reset() {
*x = MetricStatus{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[30]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *MetricStatus) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*MetricStatus) ProtoMessage() {}
func (x *MetricStatus) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 MetricStatus.ProtoReflect.Descriptor instead.
func (*MetricStatus) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{30}
}
func (x *MetricStatus) GetType() string {
if x != nil {
return x.Type
}
return ""
}
func (x *MetricStatus) GetObject() *ObjectMetricStatus {
if x != nil {
return x.Object
}
return nil
}
func (x *MetricStatus) GetPods() *PodsMetricStatus {
if x != nil {
return x.Pods
}
return nil
}
func (x *MetricStatus) GetResource() *ResourceMetricStatus {
if x != nil {
return x.Resource
}
return nil
}
func (x *MetricStatus) GetContainerResource() *ContainerResourceMetricStatus {
if x != nil {
return x.ContainerResource
}
return nil
}
func (x *MetricStatus) GetExternal() *ExternalMetricStatus {
if x != nil {
return x.External
}
return nil
}
// See k8s.io.autoscaling.v2beta2.MetricTarget.
type MetricTarget struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
Value *IntOrString `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
AverageValue *IntOrString `protobuf:"bytes,3,opt,name=averageValue,proto3" json:"averageValue,omitempty"`
AverageUtilization int32 `protobuf:"varint,4,opt,name=averageUtilization,proto3" json:"averageUtilization,omitempty"`
}
func (x *MetricTarget) Reset() {
*x = MetricTarget{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[31]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *MetricTarget) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*MetricTarget) ProtoMessage() {}
func (x *MetricTarget) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 MetricTarget.ProtoReflect.Descriptor instead.
func (*MetricTarget) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{31}
}
func (x *MetricTarget) GetType() string {
if x != nil {
return x.Type
}
return ""
}
func (x *MetricTarget) GetValue() *IntOrString {
if x != nil {
return x.Value
}
return nil
}
func (x *MetricTarget) GetAverageValue() *IntOrString {
if x != nil {
return x.AverageValue
}
return nil
}
func (x *MetricTarget) GetAverageUtilization() int32 {
if x != nil {
return x.AverageUtilization
}
return 0
}
// See k8s.io.autoscaling.v2beta2.MetricValueStatus.
type MetricValueStatus struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Value *IntOrString `protobuf:"bytes,1,opt,name=value,proto3" json:"value,omitempty"`
AverageValue *IntOrString `protobuf:"bytes,2,opt,name=averageValue,proto3" json:"averageValue,omitempty"`
AverageUtilization int32 `protobuf:"varint,3,opt,name=averageUtilization,proto3" json:"averageUtilization,omitempty"`
}
func (x *MetricValueStatus) Reset() {
*x = MetricValueStatus{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[32]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *MetricValueStatus) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*MetricValueStatus) ProtoMessage() {}
func (x *MetricValueStatus) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 MetricValueStatus.ProtoReflect.Descriptor instead.
func (*MetricValueStatus) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{32}
}
func (x *MetricValueStatus) GetValue() *IntOrString {
if x != nil {
return x.Value
}
return nil
}
func (x *MetricValueStatus) GetAverageValue() *IntOrString {
if x != nil {
return x.AverageValue
}
return nil
}
func (x *MetricValueStatus) GetAverageUtilization() int32 {
if x != nil {
return x.AverageUtilization
}
return 0
}
// See k8s.io.api.core.v1.NodeAffinity.
type NodeAffinity struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
RequiredDuringSchedulingIgnoredDuringExecution *NodeSelector `protobuf:"bytes,1,opt,name=requiredDuringSchedulingIgnoredDuringExecution,proto3" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
PreferredDuringSchedulingIgnoredDuringExecution []*PreferredSchedulingTerm `protobuf:"bytes,2,rep,name=preferredDuringSchedulingIgnoredDuringExecution,proto3" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
}
func (x *NodeAffinity) Reset() {
*x = NodeAffinity{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[33]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *NodeAffinity) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*NodeAffinity) ProtoMessage() {}
func (x *NodeAffinity) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 NodeAffinity.ProtoReflect.Descriptor instead.
func (*NodeAffinity) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{33}
}
func (x *NodeAffinity) GetRequiredDuringSchedulingIgnoredDuringExecution() *NodeSelector {
if x != nil {
return x.RequiredDuringSchedulingIgnoredDuringExecution
}
return nil
}
func (x *NodeAffinity) GetPreferredDuringSchedulingIgnoredDuringExecution() []*PreferredSchedulingTerm {
if x != nil {
return x.PreferredDuringSchedulingIgnoredDuringExecution
}
return nil
}
// See k8s.io.api.core.v1.NodeSelector.
type NodeSelector struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
NodeSelectorTerms []*NodeSelectorTerm `protobuf:"bytes,1,rep,name=nodeSelectorTerms,proto3" json:"nodeSelectorTerms,omitempty"`
}
func (x *NodeSelector) Reset() {
*x = NodeSelector{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[34]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *NodeSelector) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*NodeSelector) ProtoMessage() {}
func (x *NodeSelector) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 NodeSelector.ProtoReflect.Descriptor instead.
func (*NodeSelector) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{34}
}
func (x *NodeSelector) GetNodeSelectorTerms() []*NodeSelectorTerm {
if x != nil {
return x.NodeSelectorTerms
}
return nil
}
// See k8s.io.api.core.v1.NodeSelectorTerm.
type NodeSelectorTerm struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
MatchExpressions []*NodeSelectorRequirement `protobuf:"bytes,1,rep,name=matchExpressions,proto3" json:"matchExpressions,omitempty"`
MatchFields []*NodeSelectorRequirement `protobuf:"bytes,2,rep,name=matchFields,proto3" json:"matchFields,omitempty"`
}
func (x *NodeSelectorTerm) Reset() {
*x = NodeSelectorTerm{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[35]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *NodeSelectorTerm) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*NodeSelectorTerm) ProtoMessage() {}
func (x *NodeSelectorTerm) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 NodeSelectorTerm.ProtoReflect.Descriptor instead.
func (*NodeSelectorTerm) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{35}
}
func (x *NodeSelectorTerm) GetMatchExpressions() []*NodeSelectorRequirement {
if x != nil {
return x.MatchExpressions
}
return nil
}
func (x *NodeSelectorTerm) GetMatchFields() []*NodeSelectorRequirement {
if x != nil {
return x.MatchFields
}
return nil
}
// See k8s.io.api.core.v1.NodeSelectorRequirement.
type NodeSelectorRequirement struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
Operator string `protobuf:"bytes,2,opt,name=operator,proto3" json:"operator,omitempty"`
Values []string `protobuf:"bytes,3,rep,name=values,proto3" json:"values,omitempty"`
}
func (x *NodeSelectorRequirement) Reset() {
*x = NodeSelectorRequirement{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[36]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *NodeSelectorRequirement) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*NodeSelectorRequirement) ProtoMessage() {}
func (x *NodeSelectorRequirement) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_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 NodeSelectorRequirement.ProtoReflect.Descriptor instead.
func (*NodeSelectorRequirement) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{36}
}
func (x *NodeSelectorRequirement) GetKey() string {
if x != nil {
return x.Key
}
return ""
}
func (x *NodeSelectorRequirement) GetOperator() string {
if x != nil {
return x.Operator
}
return ""
}
func (x *NodeSelectorRequirement) GetValues() []string {
if x != nil {
return x.Values
}
return nil
}
// See k8s.io.api.core.v1.ObjectFieldSelector.
type ObjectFieldSelector struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
ApiVersion string `protobuf:"bytes,1,opt,name=apiVersion,proto3" json:"apiVersion,omitempty"`
FieldPath string `protobuf:"bytes,2,opt,name=fieldPath,proto3" json:"fieldPath,omitempty"`
}
func (x *ObjectFieldSelector) Reset() {
*x = ObjectFieldSelector{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[37]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ObjectFieldSelector) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ObjectFieldSelector) ProtoMessage() {}
func (x *ObjectFieldSelector) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[37]
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 ObjectFieldSelector.ProtoReflect.Descriptor instead.
func (*ObjectFieldSelector) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{37}
}
func (x *ObjectFieldSelector) GetApiVersion() string {
if x != nil {
return x.ApiVersion
}
return ""
}
func (x *ObjectFieldSelector) GetFieldPath() string {
if x != nil {
return x.FieldPath
}
return ""
}
// From k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta.
type ObjectMeta struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Name string `protobuf:"bytes,5,opt,name=name,proto3" json:"name,omitempty"`
Namespace string `protobuf:"bytes,6,opt,name=namespace,proto3" json:"namespace,omitempty"`
}
func (x *ObjectMeta) Reset() {
*x = ObjectMeta{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[38]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ObjectMeta) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ObjectMeta) ProtoMessage() {}
func (x *ObjectMeta) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[38]
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 ObjectMeta.ProtoReflect.Descriptor instead.
func (*ObjectMeta) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{38}
}
func (x *ObjectMeta) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *ObjectMeta) GetNamespace() string {
if x != nil {
return x.Namespace
}
return ""
}
// See k8s.io.autoscaling.v2beta2.ObjectMetricSource.
type ObjectMetricSource struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
MetricName string `protobuf:"bytes,2,opt,name=metricName,proto3" json:"metricName,omitempty"`
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
TargetValue *IntOrString `protobuf:"bytes,3,opt,name=targetValue,proto3" json:"targetValue,omitempty"`
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
Selector *v11.LabelSelector `protobuf:"bytes,4,opt,name=selector,proto3" json:"selector,omitempty"`
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
AverageValue *IntOrString `protobuf:"bytes,5,opt,name=averageValue,proto3" json:"averageValue,omitempty"`
// Type changes from CrossVersionObjectReference to ResourceMetricTarget in autoscaling v2beta2/v2 compared with v2beta1
// Change it to dynamic type to keep backward compatible
Target *_struct.Value `protobuf:"bytes,1,opt,name=target,proto3" json:"target,omitempty"`
DescribedObject *CrossVersionObjectReference `protobuf:"bytes,6,opt,name=describedObject,proto3" json:"describedObject,omitempty"`
Metric *MetricIdentifier `protobuf:"bytes,8,opt,name=metric,proto3" json:"metric,omitempty"`
}
func (x *ObjectMetricSource) Reset() {
*x = ObjectMetricSource{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[39]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ObjectMetricSource) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ObjectMetricSource) ProtoMessage() {}
func (x *ObjectMetricSource) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[39]
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 ObjectMetricSource.ProtoReflect.Descriptor instead.
func (*ObjectMetricSource) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{39}
}
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
func (x *ObjectMetricSource) GetMetricName() string {
if x != nil {
return x.MetricName
}
return ""
}
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
func (x *ObjectMetricSource) GetTargetValue() *IntOrString {
if x != nil {
return x.TargetValue
}
return nil
}
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
func (x *ObjectMetricSource) GetSelector() *v11.LabelSelector {
if x != nil {
return x.Selector
}
return nil
}
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
func (x *ObjectMetricSource) GetAverageValue() *IntOrString {
if x != nil {
return x.AverageValue
}
return nil
}
func (x *ObjectMetricSource) GetTarget() *_struct.Value {
if x != nil {
return x.Target
}
return nil
}
func (x *ObjectMetricSource) GetDescribedObject() *CrossVersionObjectReference {
if x != nil {
return x.DescribedObject
}
return nil
}
func (x *ObjectMetricSource) GetMetric() *MetricIdentifier {
if x != nil {
return x.Metric
}
return nil
}
// See k8s.io.autoscaling.v2beta2.ObjectMetricStatus.
type ObjectMetricStatus struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Metric *MetricIdentifier `protobuf:"bytes,1,opt,name=metric,proto3" json:"metric,omitempty"`
Current *MetricValueStatus `protobuf:"bytes,2,opt,name=current,proto3" json:"current,omitempty"`
DescribedObject *CrossVersionObjectReference `protobuf:"bytes,3,opt,name=describedObject,proto3" json:"describedObject,omitempty"`
}
func (x *ObjectMetricStatus) Reset() {
*x = ObjectMetricStatus{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[40]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ObjectMetricStatus) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ObjectMetricStatus) ProtoMessage() {}
func (x *ObjectMetricStatus) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[40]
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 ObjectMetricStatus.ProtoReflect.Descriptor instead.
func (*ObjectMetricStatus) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{40}
}
func (x *ObjectMetricStatus) GetMetric() *MetricIdentifier {
if x != nil {
return x.Metric
}
return nil
}
func (x *ObjectMetricStatus) GetCurrent() *MetricValueStatus {
if x != nil {
return x.Current
}
return nil
}
func (x *ObjectMetricStatus) GetDescribedObject() *CrossVersionObjectReference {
if x != nil {
return x.DescribedObject
}
return nil
}
// See k8s.io.api.core.v1.PodAffinity.
type PodAffinity struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
RequiredDuringSchedulingIgnoredDuringExecution []*PodAffinityTerm `protobuf:"bytes,1,rep,name=requiredDuringSchedulingIgnoredDuringExecution,proto3" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
PreferredDuringSchedulingIgnoredDuringExecution []*WeightedPodAffinityTerm `protobuf:"bytes,2,rep,name=preferredDuringSchedulingIgnoredDuringExecution,proto3" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
}
func (x *PodAffinity) Reset() {
*x = PodAffinity{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[41]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PodAffinity) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PodAffinity) ProtoMessage() {}
func (x *PodAffinity) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[41]
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 PodAffinity.ProtoReflect.Descriptor instead.
func (*PodAffinity) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{41}
}
func (x *PodAffinity) GetRequiredDuringSchedulingIgnoredDuringExecution() []*PodAffinityTerm {
if x != nil {
return x.RequiredDuringSchedulingIgnoredDuringExecution
}
return nil
}
func (x *PodAffinity) GetPreferredDuringSchedulingIgnoredDuringExecution() []*WeightedPodAffinityTerm {
if x != nil {
return x.PreferredDuringSchedulingIgnoredDuringExecution
}
return nil
}
// See k8s.io.api.core.v1.PodAntiAffinity.
type PodAntiAffinity struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
RequiredDuringSchedulingIgnoredDuringExecution []*PodAffinityTerm `protobuf:"bytes,1,rep,name=requiredDuringSchedulingIgnoredDuringExecution,proto3" json:"requiredDuringSchedulingIgnoredDuringExecution,omitempty"`
PreferredDuringSchedulingIgnoredDuringExecution []*WeightedPodAffinityTerm `protobuf:"bytes,2,rep,name=preferredDuringSchedulingIgnoredDuringExecution,proto3" json:"preferredDuringSchedulingIgnoredDuringExecution,omitempty"`
}
func (x *PodAntiAffinity) Reset() {
*x = PodAntiAffinity{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[42]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PodAntiAffinity) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PodAntiAffinity) ProtoMessage() {}
func (x *PodAntiAffinity) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[42]
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 PodAntiAffinity.ProtoReflect.Descriptor instead.
func (*PodAntiAffinity) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{42}
}
func (x *PodAntiAffinity) GetRequiredDuringSchedulingIgnoredDuringExecution() []*PodAffinityTerm {
if x != nil {
return x.RequiredDuringSchedulingIgnoredDuringExecution
}
return nil
}
func (x *PodAntiAffinity) GetPreferredDuringSchedulingIgnoredDuringExecution() []*WeightedPodAffinityTerm {
if x != nil {
return x.PreferredDuringSchedulingIgnoredDuringExecution
}
return nil
}
// See k8s.io.api.core.v1.PodAntiAffinity.
type PodAffinityTerm struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
LabelSelector *v11.LabelSelector `protobuf:"bytes,1,opt,name=labelSelector,proto3" json:"labelSelector,omitempty"`
Namespaces []string `protobuf:"bytes,2,rep,name=namespaces,proto3" json:"namespaces,omitempty"`
TopologyKey string `protobuf:"bytes,3,opt,name=topologyKey,proto3" json:"topologyKey,omitempty"`
}
func (x *PodAffinityTerm) Reset() {
*x = PodAffinityTerm{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[43]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PodAffinityTerm) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PodAffinityTerm) ProtoMessage() {}
func (x *PodAffinityTerm) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[43]
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 PodAffinityTerm.ProtoReflect.Descriptor instead.
func (*PodAffinityTerm) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{43}
}
func (x *PodAffinityTerm) GetLabelSelector() *v11.LabelSelector {
if x != nil {
return x.LabelSelector
}
return nil
}
func (x *PodAffinityTerm) GetNamespaces() []string {
if x != nil {
return x.Namespaces
}
return nil
}
func (x *PodAffinityTerm) GetTopologyKey() string {
if x != nil {
return x.TopologyKey
}
return ""
}
// See k8s.io.api.policy.v1beta1.PodDisruptionBudget.
type PodDisruptionBudgetSpec struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
MinAvailable *IntOrString `protobuf:"bytes,1,opt,name=minAvailable,proto3" json:"minAvailable,omitempty"`
Selector *v11.LabelSelector `protobuf:"bytes,2,opt,name=selector,proto3" json:"selector,omitempty"`
MaxUnavailable *IntOrString `protobuf:"bytes,3,opt,name=maxUnavailable,proto3" json:"maxUnavailable,omitempty"`
}
func (x *PodDisruptionBudgetSpec) Reset() {
*x = PodDisruptionBudgetSpec{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[44]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PodDisruptionBudgetSpec) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PodDisruptionBudgetSpec) ProtoMessage() {}
func (x *PodDisruptionBudgetSpec) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[44]
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 PodDisruptionBudgetSpec.ProtoReflect.Descriptor instead.
func (*PodDisruptionBudgetSpec) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{44}
}
func (x *PodDisruptionBudgetSpec) GetMinAvailable() *IntOrString {
if x != nil {
return x.MinAvailable
}
return nil
}
func (x *PodDisruptionBudgetSpec) GetSelector() *v11.LabelSelector {
if x != nil {
return x.Selector
}
return nil
}
func (x *PodDisruptionBudgetSpec) GetMaxUnavailable() *IntOrString {
if x != nil {
return x.MaxUnavailable
}
return nil
}
// See k8s.io.autoscaling.v2beta2.PodsMetricSource.
type PodsMetricSource struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
MetricName string `protobuf:"bytes,1,opt,name=metricName,proto3" json:"metricName,omitempty"`
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
TargetAverageValue *IntOrString `protobuf:"bytes,2,opt,name=targetAverageValue,proto3" json:"targetAverageValue,omitempty"`
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
Selector *v11.LabelSelector `protobuf:"bytes,3,opt,name=selector,proto3" json:"selector,omitempty"`
// v2beta2/v2 fields
Metric *MetricIdentifier `protobuf:"bytes,4,opt,name=metric,proto3" json:"metric,omitempty"`
Target *MetricTarget `protobuf:"bytes,5,opt,name=target,proto3" json:"target,omitempty"`
}
func (x *PodsMetricSource) Reset() {
*x = PodsMetricSource{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[45]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PodsMetricSource) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PodsMetricSource) ProtoMessage() {}
func (x *PodsMetricSource) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[45]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PodsMetricSource.ProtoReflect.Descriptor instead.
func (*PodsMetricSource) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{45}
}
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
func (x *PodsMetricSource) GetMetricName() string {
if x != nil {
return x.MetricName
}
return ""
}
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
func (x *PodsMetricSource) GetTargetAverageValue() *IntOrString {
if x != nil {
return x.TargetAverageValue
}
return nil
}
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
func (x *PodsMetricSource) GetSelector() *v11.LabelSelector {
if x != nil {
return x.Selector
}
return nil
}
func (x *PodsMetricSource) GetMetric() *MetricIdentifier {
if x != nil {
return x.Metric
}
return nil
}
func (x *PodsMetricSource) GetTarget() *MetricTarget {
if x != nil {
return x.Target
}
return nil
}
// See k8s.io.autoscaling.v2beta2.PodsMetricStatus.
type PodsMetricStatus struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Metric *MetricIdentifier `protobuf:"bytes,1,opt,name=metric,proto3" json:"metric,omitempty"`
Current *MetricValueStatus `protobuf:"bytes,2,opt,name=current,proto3" json:"current,omitempty"`
}
func (x *PodsMetricStatus) Reset() {
*x = PodsMetricStatus{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[46]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PodsMetricStatus) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PodsMetricStatus) ProtoMessage() {}
func (x *PodsMetricStatus) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[46]
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 PodsMetricStatus.ProtoReflect.Descriptor instead.
func (*PodsMetricStatus) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{46}
}
func (x *PodsMetricStatus) GetMetric() *MetricIdentifier {
if x != nil {
return x.Metric
}
return nil
}
func (x *PodsMetricStatus) GetCurrent() *MetricValueStatus {
if x != nil {
return x.Current
}
return nil
}
// See k8s.io.api.core.v1.PreferredSchedulingTerm.
type PreferredSchedulingTerm struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Weight int32 `protobuf:"varint,1,opt,name=weight,proto3" json:"weight,omitempty"`
Preference *NodeSelectorTerm `protobuf:"bytes,2,opt,name=preference,proto3" json:"preference,omitempty"`
}
func (x *PreferredSchedulingTerm) Reset() {
*x = PreferredSchedulingTerm{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[47]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PreferredSchedulingTerm) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PreferredSchedulingTerm) ProtoMessage() {}
func (x *PreferredSchedulingTerm) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[47]
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 PreferredSchedulingTerm.ProtoReflect.Descriptor instead.
func (*PreferredSchedulingTerm) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{47}
}
func (x *PreferredSchedulingTerm) GetWeight() int32 {
if x != nil {
return x.Weight
}
return 0
}
func (x *PreferredSchedulingTerm) GetPreference() *NodeSelectorTerm {
if x != nil {
return x.Preference
}
return nil
}
// See k8s.io.api.core.v1.ReadinessProbe.
type ReadinessProbe struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Exec *ExecAction `protobuf:"bytes,1,opt,name=exec,proto3" json:"exec,omitempty"`
HttpGet *HTTPGetAction `protobuf:"bytes,2,opt,name=httpGet,proto3" json:"httpGet,omitempty"`
TcpSocket *TCPSocketAction `protobuf:"bytes,3,opt,name=tcpSocket,proto3" json:"tcpSocket,omitempty"`
InitialDelaySeconds int32 `protobuf:"varint,4,opt,name=initialDelaySeconds,proto3" json:"initialDelaySeconds,omitempty"`
TimeoutSeconds int32 `protobuf:"varint,5,opt,name=timeoutSeconds,proto3" json:"timeoutSeconds,omitempty"`
PeriodSeconds int32 `protobuf:"varint,6,opt,name=periodSeconds,proto3" json:"periodSeconds,omitempty"`
SuccessThreshold int32 `protobuf:"varint,7,opt,name=successThreshold,proto3" json:"successThreshold,omitempty"`
FailureThreshold int32 `protobuf:"varint,8,opt,name=failureThreshold,proto3" json:"failureThreshold,omitempty"`
}
func (x *ReadinessProbe) Reset() {
*x = ReadinessProbe{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[48]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ReadinessProbe) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ReadinessProbe) ProtoMessage() {}
func (x *ReadinessProbe) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[48]
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 ReadinessProbe.ProtoReflect.Descriptor instead.
func (*ReadinessProbe) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{48}
}
func (x *ReadinessProbe) GetExec() *ExecAction {
if x != nil {
return x.Exec
}
return nil
}
func (x *ReadinessProbe) GetHttpGet() *HTTPGetAction {
if x != nil {
return x.HttpGet
}
return nil
}
func (x *ReadinessProbe) GetTcpSocket() *TCPSocketAction {
if x != nil {
return x.TcpSocket
}
return nil
}
func (x *ReadinessProbe) GetInitialDelaySeconds() int32 {
if x != nil {
return x.InitialDelaySeconds
}
return 0
}
func (x *ReadinessProbe) GetTimeoutSeconds() int32 {
if x != nil {
return x.TimeoutSeconds
}
return 0
}
func (x *ReadinessProbe) GetPeriodSeconds() int32 {
if x != nil {
return x.PeriodSeconds
}
return 0
}
func (x *ReadinessProbe) GetSuccessThreshold() int32 {
if x != nil {
return x.SuccessThreshold
}
return 0
}
func (x *ReadinessProbe) GetFailureThreshold() int32 {
if x != nil {
return x.FailureThreshold
}
return 0
}
// See k8s.io.api.core.v1..
type ResourceFieldSelector struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
ContainerName string `protobuf:"bytes,1,opt,name=containerName,proto3" json:"containerName,omitempty"`
Resource string `protobuf:"bytes,2,opt,name=resource,proto3" json:"resource,omitempty"`
Divisor *IntOrString `protobuf:"bytes,3,opt,name=divisor,proto3" json:"divisor,omitempty"`
}
func (x *ResourceFieldSelector) Reset() {
*x = ResourceFieldSelector{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[49]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ResourceFieldSelector) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ResourceFieldSelector) ProtoMessage() {}
func (x *ResourceFieldSelector) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[49]
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 ResourceFieldSelector.ProtoReflect.Descriptor instead.
func (*ResourceFieldSelector) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{49}
}
func (x *ResourceFieldSelector) GetContainerName() string {
if x != nil {
return x.ContainerName
}
return ""
}
func (x *ResourceFieldSelector) GetResource() string {
if x != nil {
return x.Resource
}
return ""
}
func (x *ResourceFieldSelector) GetDivisor() *IntOrString {
if x != nil {
return x.Divisor
}
return nil
}
// See k8s.io.autoscaling.v2beta2.ResourceMetricSource.
type ResourceMetricSource struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
TargetAverageUtilization int32 `protobuf:"varint,2,opt,name=targetAverageUtilization,proto3" json:"targetAverageUtilization,omitempty"`
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
TargetAverageValue *IntOrString `protobuf:"bytes,3,opt,name=targetAverageValue,proto3" json:"targetAverageValue,omitempty"`
Target *MetricTarget `protobuf:"bytes,4,opt,name=target,proto3" json:"target,omitempty"`
}
func (x *ResourceMetricSource) Reset() {
*x = ResourceMetricSource{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[50]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ResourceMetricSource) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ResourceMetricSource) ProtoMessage() {}
func (x *ResourceMetricSource) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[50]
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 ResourceMetricSource.ProtoReflect.Descriptor instead.
func (*ResourceMetricSource) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{50}
}
func (x *ResourceMetricSource) GetName() string {
if x != nil {
return x.Name
}
return ""
}
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
func (x *ResourceMetricSource) GetTargetAverageUtilization() int32 {
if x != nil {
return x.TargetAverageUtilization
}
return 0
}
// Deprecated: Marked as deprecated in operator/v1alpha1/operator.proto.
func (x *ResourceMetricSource) GetTargetAverageValue() *IntOrString {
if x != nil {
return x.TargetAverageValue
}
return nil
}
func (x *ResourceMetricSource) GetTarget() *MetricTarget {
if x != nil {
return x.Target
}
return nil
}
// See k8s.io.autoscaling.v2beta2.ResourceMetricStatus.
type ResourceMetricStatus struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
Current *MetricValueStatus `protobuf:"bytes,2,opt,name=current,proto3" json:"current,omitempty"`
}
func (x *ResourceMetricStatus) Reset() {
*x = ResourceMetricStatus{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[51]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ResourceMetricStatus) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ResourceMetricStatus) ProtoMessage() {}
func (x *ResourceMetricStatus) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[51]
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 ResourceMetricStatus.ProtoReflect.Descriptor instead.
func (*ResourceMetricStatus) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{51}
}
func (x *ResourceMetricStatus) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *ResourceMetricStatus) GetCurrent() *MetricValueStatus {
if x != nil {
return x.Current
}
return nil
}
// See k8s.io.api.core.v1.ResourceRequirements.
type Resources struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Limits map[string]string `protobuf:"bytes,1,rep,name=limits,proto3" json:"limits,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
Requests map[string]string `protobuf:"bytes,2,rep,name=requests,proto3" json:"requests,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
}
func (x *Resources) Reset() {
*x = Resources{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[52]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Resources) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Resources) ProtoMessage() {}
func (x *Resources) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[52]
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 Resources.ProtoReflect.Descriptor instead.
func (*Resources) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{52}
}
func (x *Resources) GetLimits() map[string]string {
if x != nil {
return x.Limits
}
return nil
}
func (x *Resources) GetRequests() map[string]string {
if x != nil {
return x.Requests
}
return nil
}
// See k8s.io.api.apps.v1.RollingUpdateDeployment.
type RollingUpdateDeployment struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
MaxUnavailable *IntOrString `protobuf:"bytes,1,opt,name=maxUnavailable,proto3" json:"maxUnavailable,omitempty"`
MaxSurge *IntOrString `protobuf:"bytes,2,opt,name=maxSurge,proto3" json:"maxSurge,omitempty"`
}
func (x *RollingUpdateDeployment) Reset() {
*x = RollingUpdateDeployment{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[53]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RollingUpdateDeployment) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RollingUpdateDeployment) ProtoMessage() {}
func (x *RollingUpdateDeployment) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[53]
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 RollingUpdateDeployment.ProtoReflect.Descriptor instead.
func (*RollingUpdateDeployment) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{53}
}
func (x *RollingUpdateDeployment) GetMaxUnavailable() *IntOrString {
if x != nil {
return x.MaxUnavailable
}
return nil
}
func (x *RollingUpdateDeployment) GetMaxSurge() *IntOrString {
if x != nil {
return x.MaxSurge
}
return nil
}
// See k8s.io.api.core.v1.SecretKeySelector.
type SecretKeySelector struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
LocalObjectReference *LocalObjectReference `protobuf:"bytes,1,opt,name=localObjectReference,proto3" json:"localObjectReference,omitempty"`
Key string `protobuf:"bytes,2,opt,name=key,proto3" json:"key,omitempty"`
Optional bool `protobuf:"varint,3,opt,name=optional,proto3" json:"optional,omitempty"`
}
func (x *SecretKeySelector) Reset() {
*x = SecretKeySelector{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[54]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SecretKeySelector) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SecretKeySelector) ProtoMessage() {}
func (x *SecretKeySelector) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[54]
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 SecretKeySelector.ProtoReflect.Descriptor instead.
func (*SecretKeySelector) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{54}
}
func (x *SecretKeySelector) GetLocalObjectReference() *LocalObjectReference {
if x != nil {
return x.LocalObjectReference
}
return nil
}
func (x *SecretKeySelector) GetKey() string {
if x != nil {
return x.Key
}
return ""
}
func (x *SecretKeySelector) GetOptional() bool {
if x != nil {
return x.Optional
}
return false
}
// See k8s.io.api.core.v1.ServiceSpec.
type ServiceSpec struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Ports []*ServicePort `protobuf:"bytes,1,rep,name=ports,proto3" json:"ports,omitempty"`
Selector map[string]string `protobuf:"bytes,2,rep,name=selector,proto3" json:"selector,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
ClusterIP string `protobuf:"bytes,3,opt,name=clusterIP,proto3" json:"clusterIP,omitempty"`
Type string `protobuf:"bytes,4,opt,name=type,proto3" json:"type,omitempty"`
ExternalIPs []string `protobuf:"bytes,5,rep,name=externalIPs,proto3" json:"externalIPs,omitempty"`
SessionAffinity string `protobuf:"bytes,7,opt,name=sessionAffinity,proto3" json:"sessionAffinity,omitempty"`
LoadBalancerIP string `protobuf:"bytes,8,opt,name=loadBalancerIP,proto3" json:"loadBalancerIP,omitempty"`
LoadBalancerSourceRanges []string `protobuf:"bytes,9,rep,name=loadBalancerSourceRanges,proto3" json:"loadBalancerSourceRanges,omitempty"`
ExternalName string `protobuf:"bytes,10,opt,name=externalName,proto3" json:"externalName,omitempty"`
ExternalTrafficPolicy string `protobuf:"bytes,11,opt,name=externalTrafficPolicy,proto3" json:"externalTrafficPolicy,omitempty"`
HealthCheckNodePort int32 `protobuf:"varint,12,opt,name=healthCheckNodePort,proto3" json:"healthCheckNodePort,omitempty"`
PublishNotReadyAddresses bool `protobuf:"varint,13,opt,name=publishNotReadyAddresses,proto3" json:"publishNotReadyAddresses,omitempty"`
SessionAffinityConfig *SessionAffinityConfig `protobuf:"bytes,14,opt,name=sessionAffinityConfig,proto3" json:"sessionAffinityConfig,omitempty"`
LoadBalancerClass string `protobuf:"bytes,15,opt,name=loadBalancerClass,proto3" json:"loadBalancerClass,omitempty"`
}
func (x *ServiceSpec) Reset() {
*x = ServiceSpec{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[55]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ServiceSpec) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ServiceSpec) ProtoMessage() {}
func (x *ServiceSpec) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[55]
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 ServiceSpec.ProtoReflect.Descriptor instead.
func (*ServiceSpec) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{55}
}
func (x *ServiceSpec) GetPorts() []*ServicePort {
if x != nil {
return x.Ports
}
return nil
}
func (x *ServiceSpec) GetSelector() map[string]string {
if x != nil {
return x.Selector
}
return nil
}
func (x *ServiceSpec) GetClusterIP() string {
if x != nil {
return x.ClusterIP
}
return ""
}
func (x *ServiceSpec) GetType() string {
if x != nil {
return x.Type
}
return ""
}
func (x *ServiceSpec) GetExternalIPs() []string {
if x != nil {
return x.ExternalIPs
}
return nil
}
func (x *ServiceSpec) GetSessionAffinity() string {
if x != nil {
return x.SessionAffinity
}
return ""
}
func (x *ServiceSpec) GetLoadBalancerIP() string {
if x != nil {
return x.LoadBalancerIP
}
return ""
}
func (x *ServiceSpec) GetLoadBalancerSourceRanges() []string {
if x != nil {
return x.LoadBalancerSourceRanges
}
return nil
}
func (x *ServiceSpec) GetExternalName() string {
if x != nil {
return x.ExternalName
}
return ""
}
func (x *ServiceSpec) GetExternalTrafficPolicy() string {
if x != nil {
return x.ExternalTrafficPolicy
}
return ""
}
func (x *ServiceSpec) GetHealthCheckNodePort() int32 {
if x != nil {
return x.HealthCheckNodePort
}
return 0
}
func (x *ServiceSpec) GetPublishNotReadyAddresses() bool {
if x != nil {
return x.PublishNotReadyAddresses
}
return false
}
func (x *ServiceSpec) GetSessionAffinityConfig() *SessionAffinityConfig {
if x != nil {
return x.SessionAffinityConfig
}
return nil
}
func (x *ServiceSpec) GetLoadBalancerClass() string {
if x != nil {
return x.LoadBalancerClass
}
return ""
}
// See k8s.io.api.core.v1..
type ServicePort struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
Protocol string `protobuf:"bytes,2,opt,name=protocol,proto3" json:"protocol,omitempty"`
Port int32 `protobuf:"varint,3,opt,name=port,proto3" json:"port,omitempty"`
TargetPort *IntOrString `protobuf:"bytes,4,opt,name=targetPort,proto3" json:"targetPort,omitempty"`
NodePort int32 `protobuf:"varint,5,opt,name=nodePort,proto3" json:"nodePort,omitempty"`
AppProtocol string `protobuf:"bytes,6,opt,name=appProtocol,proto3" json:"appProtocol,omitempty"`
}
func (x *ServicePort) Reset() {
*x = ServicePort{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[56]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ServicePort) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ServicePort) ProtoMessage() {}
func (x *ServicePort) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[56]
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 ServicePort.ProtoReflect.Descriptor instead.
func (*ServicePort) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{56}
}
func (x *ServicePort) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *ServicePort) GetProtocol() string {
if x != nil {
return x.Protocol
}
return ""
}
func (x *ServicePort) GetPort() int32 {
if x != nil {
return x.Port
}
return 0
}
func (x *ServicePort) GetTargetPort() *IntOrString {
if x != nil {
return x.TargetPort
}
return nil
}
func (x *ServicePort) GetNodePort() int32 {
if x != nil {
return x.NodePort
}
return 0
}
func (x *ServicePort) GetAppProtocol() string {
if x != nil {
return x.AppProtocol
}
return ""
}
// See k8s.io.api.core.v1.SessionAffinityConfig.
type SessionAffinityConfig struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
ClientIP *ClientIPConfig `protobuf:"bytes,1,opt,name=clientIP,proto3" json:"clientIP,omitempty"`
}
func (x *SessionAffinityConfig) Reset() {
*x = SessionAffinityConfig{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[57]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SessionAffinityConfig) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SessionAffinityConfig) ProtoMessage() {}
func (x *SessionAffinityConfig) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[57]
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 SessionAffinityConfig.ProtoReflect.Descriptor instead.
func (*SessionAffinityConfig) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{57}
}
func (x *SessionAffinityConfig) GetClientIP() *ClientIPConfig {
if x != nil {
return x.ClientIP
}
return nil
}
// See k8s.io.api.core.v1.TCPSocketAction.
type TCPSocketAction struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Port *IntOrString `protobuf:"bytes,1,opt,name=port,proto3" json:"port,omitempty"`
Host string `protobuf:"bytes,2,opt,name=host,proto3" json:"host,omitempty"`
}
func (x *TCPSocketAction) Reset() {
*x = TCPSocketAction{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[58]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *TCPSocketAction) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*TCPSocketAction) ProtoMessage() {}
func (x *TCPSocketAction) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[58]
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 TCPSocketAction.ProtoReflect.Descriptor instead.
func (*TCPSocketAction) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{58}
}
func (x *TCPSocketAction) GetPort() *IntOrString {
if x != nil {
return x.Port
}
return nil
}
func (x *TCPSocketAction) GetHost() string {
if x != nil {
return x.Host
}
return ""
}
// See k8s.io.api.core.v1.Toleration.
type Toleration struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
Operator string `protobuf:"bytes,2,opt,name=operator,proto3" json:"operator,omitempty"`
Value string `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"`
Effect string `protobuf:"bytes,4,opt,name=effect,proto3" json:"effect,omitempty"`
TolerationSeconds int64 `protobuf:"varint,5,opt,name=tolerationSeconds,proto3" json:"tolerationSeconds,omitempty"`
}
func (x *Toleration) Reset() {
*x = Toleration{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[59]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Toleration) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Toleration) ProtoMessage() {}
func (x *Toleration) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[59]
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 Toleration.ProtoReflect.Descriptor instead.
func (*Toleration) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{59}
}
func (x *Toleration) GetKey() string {
if x != nil {
return x.Key
}
return ""
}
func (x *Toleration) GetOperator() string {
if x != nil {
return x.Operator
}
return ""
}
func (x *Toleration) GetValue() string {
if x != nil {
return x.Value
}
return ""
}
func (x *Toleration) GetEffect() string {
if x != nil {
return x.Effect
}
return ""
}
func (x *Toleration) GetTolerationSeconds() int64 {
if x != nil {
return x.TolerationSeconds
}
return 0
}
// See k8s.io.api.core.v1.WeightedPodAffinityTerm.
type WeightedPodAffinityTerm struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Weight int32 `protobuf:"varint,1,opt,name=weight,proto3" json:"weight,omitempty"`
PodAffinityTerm *PodAffinityTerm `protobuf:"bytes,2,opt,name=podAffinityTerm,proto3" json:"podAffinityTerm,omitempty"`
}
func (x *WeightedPodAffinityTerm) Reset() {
*x = WeightedPodAffinityTerm{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[60]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *WeightedPodAffinityTerm) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*WeightedPodAffinityTerm) ProtoMessage() {}
func (x *WeightedPodAffinityTerm) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[60]
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 WeightedPodAffinityTerm.ProtoReflect.Descriptor instead.
func (*WeightedPodAffinityTerm) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{60}
}
func (x *WeightedPodAffinityTerm) GetWeight() int32 {
if x != nil {
return x.Weight
}
return 0
}
func (x *WeightedPodAffinityTerm) GetPodAffinityTerm() *PodAffinityTerm {
if x != nil {
return x.PodAffinityTerm
}
return nil
}
// See k8s.io.api.core.v1.PodSecurityContext.
type PodSecurityContext struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
SeLinuxOptions *SELinuxOptions `protobuf:"bytes,1,opt,name=seLinuxOptions,proto3" json:"seLinuxOptions,omitempty"`
RunAsUser int64 `protobuf:"varint,2,opt,name=runAsUser,proto3" json:"runAsUser,omitempty"`
RunAsNonRoot bool `protobuf:"varint,3,opt,name=runAsNonRoot,proto3" json:"runAsNonRoot,omitempty"`
SupplementalGroups []int64 `protobuf:"varint,4,rep,packed,name=supplementalGroups,proto3" json:"supplementalGroups,omitempty"`
FsGroup int64 `protobuf:"varint,5,opt,name=fsGroup,proto3" json:"fsGroup,omitempty"`
RunAsGroup int64 `protobuf:"varint,6,opt,name=runAsGroup,proto3" json:"runAsGroup,omitempty"`
Sysctls []*Sysctl `protobuf:"bytes,7,rep,name=sysctls,proto3" json:"sysctls,omitempty"`
WindowsOptions *WindowsSecurityContextOptions `protobuf:"bytes,8,opt,name=windowsOptions,proto3" json:"windowsOptions,omitempty"`
FsGroupChangePolicy string `protobuf:"bytes,9,opt,name=fsGroupChangePolicy,proto3" json:"fsGroupChangePolicy,omitempty"`
SeccompProfile *SeccompProfile `protobuf:"bytes,10,opt,name=seccompProfile,proto3" json:"seccompProfile,omitempty"`
}
func (x *PodSecurityContext) Reset() {
*x = PodSecurityContext{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[61]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PodSecurityContext) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PodSecurityContext) ProtoMessage() {}
func (x *PodSecurityContext) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[61]
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 PodSecurityContext.ProtoReflect.Descriptor instead.
func (*PodSecurityContext) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{61}
}
func (x *PodSecurityContext) GetSeLinuxOptions() *SELinuxOptions {
if x != nil {
return x.SeLinuxOptions
}
return nil
}
func (x *PodSecurityContext) GetRunAsUser() int64 {
if x != nil {
return x.RunAsUser
}
return 0
}
func (x *PodSecurityContext) GetRunAsNonRoot() bool {
if x != nil {
return x.RunAsNonRoot
}
return false
}
func (x *PodSecurityContext) GetSupplementalGroups() []int64 {
if x != nil {
return x.SupplementalGroups
}
return nil
}
func (x *PodSecurityContext) GetFsGroup() int64 {
if x != nil {
return x.FsGroup
}
return 0
}
func (x *PodSecurityContext) GetRunAsGroup() int64 {
if x != nil {
return x.RunAsGroup
}
return 0
}
func (x *PodSecurityContext) GetSysctls() []*Sysctl {
if x != nil {
return x.Sysctls
}
return nil
}
func (x *PodSecurityContext) GetWindowsOptions() *WindowsSecurityContextOptions {
if x != nil {
return x.WindowsOptions
}
return nil
}
func (x *PodSecurityContext) GetFsGroupChangePolicy() string {
if x != nil {
return x.FsGroupChangePolicy
}
return ""
}
func (x *PodSecurityContext) GetSeccompProfile() *SeccompProfile {
if x != nil {
return x.SeccompProfile
}
return nil
}
// See k8s.io.api.core.v1.SELinuxOptions.
type SELinuxOptions struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
User string `protobuf:"bytes,1,opt,name=user,proto3" json:"user,omitempty"`
Role string `protobuf:"bytes,2,opt,name=role,proto3" json:"role,omitempty"`
Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"`
Level string `protobuf:"bytes,4,opt,name=level,proto3" json:"level,omitempty"`
}
func (x *SELinuxOptions) Reset() {
*x = SELinuxOptions{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[62]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SELinuxOptions) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SELinuxOptions) ProtoMessage() {}
func (x *SELinuxOptions) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[62]
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 SELinuxOptions.ProtoReflect.Descriptor instead.
func (*SELinuxOptions) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{62}
}
func (x *SELinuxOptions) GetUser() string {
if x != nil {
return x.User
}
return ""
}
func (x *SELinuxOptions) GetRole() string {
if x != nil {
return x.Role
}
return ""
}
func (x *SELinuxOptions) GetType() string {
if x != nil {
return x.Type
}
return ""
}
func (x *SELinuxOptions) GetLevel() string {
if x != nil {
return x.Level
}
return ""
}
// See k8s.io.api.core.v1.Sysctl.
type Sysctl struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
}
func (x *Sysctl) Reset() {
*x = Sysctl{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[63]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Sysctl) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Sysctl) ProtoMessage() {}
func (x *Sysctl) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[63]
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 Sysctl.ProtoReflect.Descriptor instead.
func (*Sysctl) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{63}
}
func (x *Sysctl) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *Sysctl) GetValue() string {
if x != nil {
return x.Value
}
return ""
}
// See k8s.io.api.core.v1.WindowsSecurityContextOptions.
type WindowsSecurityContextOptions struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
GmsaCredentialSpecName string `protobuf:"bytes,1,opt,name=gmsaCredentialSpecName,proto3" json:"gmsaCredentialSpecName,omitempty"`
GmsaCredentialSpec string `protobuf:"bytes,2,opt,name=gmsaCredentialSpec,proto3" json:"gmsaCredentialSpec,omitempty"`
RunAsUserName string `protobuf:"bytes,3,opt,name=runAsUserName,proto3" json:"runAsUserName,omitempty"`
}
func (x *WindowsSecurityContextOptions) Reset() {
*x = WindowsSecurityContextOptions{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[64]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *WindowsSecurityContextOptions) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*WindowsSecurityContextOptions) ProtoMessage() {}
func (x *WindowsSecurityContextOptions) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[64]
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 WindowsSecurityContextOptions.ProtoReflect.Descriptor instead.
func (*WindowsSecurityContextOptions) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{64}
}
func (x *WindowsSecurityContextOptions) GetGmsaCredentialSpecName() string {
if x != nil {
return x.GmsaCredentialSpecName
}
return ""
}
func (x *WindowsSecurityContextOptions) GetGmsaCredentialSpec() string {
if x != nil {
return x.GmsaCredentialSpec
}
return ""
}
func (x *WindowsSecurityContextOptions) GetRunAsUserName() string {
if x != nil {
return x.RunAsUserName
}
return ""
}
// See k8s.io.api.core.v1.SeccompProfile.
type SeccompProfile struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
LocalhostProfile string `protobuf:"bytes,2,opt,name=localhostProfile,proto3" json:"localhostProfile,omitempty"`
}
func (x *SeccompProfile) Reset() {
*x = SeccompProfile{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[65]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SeccompProfile) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SeccompProfile) ProtoMessage() {}
func (x *SeccompProfile) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[65]
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 SeccompProfile.ProtoReflect.Descriptor instead.
func (*SeccompProfile) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{65}
}
func (x *SeccompProfile) GetType() string {
if x != nil {
return x.Type
}
return ""
}
func (x *SeccompProfile) GetLocalhostProfile() string {
if x != nil {
return x.LocalhostProfile
}
return ""
}
// IntOrString is a type that can hold an int32 or a string. When used in
// JSON or YAML marshalling and unmarshalling, it produces or consumes the
// inner type. This allows you to have, for example, a JSON field that can
// accept a name or number.
type IntOrString struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Type int64 `protobuf:"varint,1,opt,name=type,proto3" json:"type,omitempty"`
IntVal *wrappers.Int32Value `protobuf:"bytes,2,opt,name=intVal,proto3" json:"intVal,omitempty"`
StrVal *wrappers.StringValue `protobuf:"bytes,3,opt,name=strVal,proto3" json:"strVal,omitempty"`
}
func (x *IntOrString) Reset() {
*x = IntOrString{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[66]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *IntOrString) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*IntOrString) ProtoMessage() {}
func (x *IntOrString) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[66]
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 IntOrString.ProtoReflect.Descriptor instead.
func (*IntOrString) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{66}
}
func (x *IntOrString) GetType() int64 {
if x != nil {
return x.Type
}
return 0
}
func (x *IntOrString) GetIntVal() *wrappers.Int32Value {
if x != nil {
return x.IntVal
}
return nil
}
func (x *IntOrString) GetStrVal() *wrappers.StringValue {
if x != nil {
return x.StrVal
}
return nil
}
// VersionStatus is the status and version of a component.
type InstallStatus_VersionStatus struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
Status InstallStatus_Status `protobuf:"varint,2,opt,name=status,proto3,enum=istio.operator.v1alpha1.InstallStatus_Status" json:"status,omitempty"`
Error string `protobuf:"bytes,4,opt,name=error,proto3" json:"error,omitempty"`
}
func (x *InstallStatus_VersionStatus) Reset() {
*x = InstallStatus_VersionStatus{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[68]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *InstallStatus_VersionStatus) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*InstallStatus_VersionStatus) ProtoMessage() {}
func (x *InstallStatus_VersionStatus) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[68]
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 InstallStatus_VersionStatus.ProtoReflect.Descriptor instead.
func (*InstallStatus_VersionStatus) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{1, 0}
}
func (x *InstallStatus_VersionStatus) GetVersion() string {
if x != nil {
return x.Version
}
return ""
}
func (x *InstallStatus_VersionStatus) GetStatus() InstallStatus_Status {
if x != nil {
return x.Status
}
return InstallStatus_NONE
}
func (x *InstallStatus_VersionStatus) GetError() string {
if x != nil {
return x.Error
}
return ""
}
type K8SObjectOverlay_PathValue struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Path of the form a.[key1:value1].b.[:value2]
// Where [key1:value1] is a selector for a key-value pair to identify a list element and [:value] is a value
// selector to identify a list element in a leaf list.
// All path intermediate nodes must exist.
Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
// Value to add, delete or replace.
// For add, the path should be a new leaf.
// For delete, value should be unset.
// For replace, path should reference an existing node.
// All values are strings but are converted into appropriate type based on schema.
Value *_struct.Value `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
}
func (x *K8SObjectOverlay_PathValue) Reset() {
*x = K8SObjectOverlay_PathValue{}
if protoimpl.UnsafeEnabled {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[74]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *K8SObjectOverlay_PathValue) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*K8SObjectOverlay_PathValue) ProtoMessage() {}
func (x *K8SObjectOverlay_PathValue) ProtoReflect() protoreflect.Message {
mi := &file_operator_v1alpha1_operator_proto_msgTypes[74]
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 K8SObjectOverlay_PathValue.ProtoReflect.Descriptor instead.
func (*K8SObjectOverlay_PathValue) Descriptor() ([]byte, []int) {
return file_operator_v1alpha1_operator_proto_rawDescGZIP(), []int{8, 0}
}
func (x *K8SObjectOverlay_PathValue) GetPath() string {
if x != nil {
return x.Path
}
return ""
}
func (x *K8SObjectOverlay_PathValue) GetValue() *_struct.Value {
if x != nil {
return x.Value
}
return nil
}
var File_operator_v1alpha1_operator_proto protoreflect.FileDescriptor
var file_operator_v1alpha1_operator_proto_rawDesc = []byte{
0x0a, 0x20, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70,
0x68, 0x61, 0x31, 0x2f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x12, 0x17, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74,
0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x1a, 0x19, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, 0x6e, 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, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x34, 0x6b, 0x38, 0x73, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69,
0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x72, 0x79, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x61, 0x70,
0x69, 0x73, 0x2f, 0x6d, 0x65, 0x74, 0x61, 0x2f, 0x76, 0x31, 0x2f, 0x67, 0x65, 0x6e, 0x65, 0x72,
0x61, 0x74, 0x65, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x22, 0x6b, 0x38, 0x73, 0x2e,
0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x67,
0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xae,
0x06, 0x0a, 0x11, 0x49, 0x73, 0x74, 0x69, 0x6f, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72,
0x53, 0x70, 0x65, 0x63, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18,
0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x2e,
0x0a, 0x12, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65,
0x50, 0x61, 0x74, 0x68, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x69, 0x6e, 0x73, 0x74,
0x61, 0x6c, 0x6c, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x10,
0x0a, 0x03, 0x68, 0x75, 0x62, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x68, 0x75, 0x62,
0x12, 0x28, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x2a, 0x0a, 0x0e, 0x72, 0x65,
0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x53, 0x75, 0x66, 0x66, 0x69, 0x78, 0x18, 0x0e, 0x20, 0x01,
0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0e, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
0x53, 0x75, 0x66, 0x66, 0x69, 0x78, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70,
0x61, 0x63, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73,
0x70, 0x61, 0x63, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
0x12, 0x32, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74,
0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14,
0x63, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x56, 0x65, 0x72,
0x73, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x0a, 0x0a, 0x6d, 0x65, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66,
0x69, 0x67, 0x18, 0x28, 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, 0x0a, 0x6d, 0x65, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x4e, 0x0a,
0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x32, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x2e, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74,
0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49, 0x73, 0x74, 0x69,
0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x74, 0x53, 0x70, 0x65,
0x63, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x6d, 0x0a,
0x0f, 0x61, 0x64, 0x64, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73,
0x18, 0x33, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f,
0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
0x2e, 0x49, 0x73, 0x74, 0x69, 0x6f, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x53, 0x70,
0x65, 0x63, 0x2e, 0x41, 0x64, 0x64, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e,
0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0f, 0x61, 0x64, 0x64,
0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2f, 0x0a, 0x06,
0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x64, 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, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x45, 0x0a,
0x11, 0x75, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x64, 0x56, 0x61, 0x6c, 0x75,
0x65, 0x73, 0x18, 0x65, 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, 0x11, 0x75, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x64, 0x56, 0x61,
0x6c, 0x75, 0x65, 0x73, 0x1a, 0x72, 0x0a, 0x14, 0x41, 0x64, 0x64, 0x6f, 0x6e, 0x43, 0x6f, 0x6d,
0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03,
0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x44,
0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e,
0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76,
0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x63, 0x52, 0x05, 0x76,
0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x4a, 0x04, 0x08, 0x11, 0x10, 0x12, 0x52, 0x0f,
0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x22,
0xba, 0x04, 0x0a, 0x0d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75,
0x73, 0x12, 0x45, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28,
0x0e, 0x32, 0x2d, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74,
0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x73, 0x74,
0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x12, 0x65, 0x0a, 0x0f, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53,
0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x69, 0x73,
0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61,
0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61,
0x74, 0x75, 0x73, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61,
0x74, 0x75, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0f, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e,
0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x1a, 0x86, 0x01, 0x0a, 0x0d, 0x56, 0x65,
0x72, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x76,
0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65,
0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x45, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18,
0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2d, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70,
0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x53, 0x74,
0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x14, 0x0a, 0x05,
0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72,
0x6f, 0x72, 0x1a, 0x78, 0x0a, 0x14, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53,
0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x4a, 0x0a, 0x05,
0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x69, 0x73,
0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61,
0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61,
0x74, 0x75, 0x73, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75,
0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x5e, 0x0a, 0x06,
0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00,
0x12, 0x0c, 0x0a, 0x08, 0x55, 0x50, 0x44, 0x41, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0f,
0x0a, 0x0b, 0x52, 0x45, 0x43, 0x4f, 0x4e, 0x43, 0x49, 0x4c, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12,
0x0b, 0x0a, 0x07, 0x48, 0x45, 0x41, 0x4c, 0x54, 0x48, 0x59, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05,
0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x43, 0x54, 0x49, 0x4f,
0x4e, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x10, 0x05, 0x22, 0xee, 0x04, 0x0a,
0x15, 0x49, 0x73, 0x74, 0x69, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53,
0x65, 0x74, 0x53, 0x70, 0x65, 0x63, 0x12, 0x3e, 0x0a, 0x04, 0x62, 0x61, 0x73, 0x65, 0x18, 0x1d,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65,
0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x42,
0x61, 0x73, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x63,
0x52, 0x04, 0x62, 0x61, 0x73, 0x65, 0x12, 0x3c, 0x0a, 0x05, 0x70, 0x69, 0x6c, 0x6f, 0x74, 0x18,
0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70,
0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x63, 0x52, 0x05, 0x70,
0x69, 0x6c, 0x6f, 0x74, 0x12, 0x38, 0x0a, 0x03, 0x63, 0x6e, 0x69, 0x18, 0x26, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x26, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74,
0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x70,
0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x63, 0x52, 0x03, 0x63, 0x6e, 0x69, 0x12, 0x40,
0x0a, 0x07, 0x7a, 0x74, 0x75, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x2a, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x26, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72,
0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e,
0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x63, 0x52, 0x07, 0x7a, 0x74, 0x75, 0x6e, 0x6e, 0x65, 0x6c,
0x12, 0x4a, 0x0a, 0x0c, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65,
0x18, 0x27, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f,
0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x63, 0x52, 0x0c,
0x69, 0x73, 0x74, 0x69, 0x6f, 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x12, 0x4e, 0x0a, 0x0f,
0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x73, 0x18,
0x28, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70,
0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x53, 0x70, 0x65, 0x63, 0x52, 0x0f, 0x69, 0x6e, 0x67,
0x72, 0x65, 0x73, 0x73, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x73, 0x12, 0x4c, 0x0a, 0x0e,
0x65, 0x67, 0x72, 0x65, 0x73, 0x73, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x73, 0x18, 0x29,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65,
0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47,
0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x53, 0x70, 0x65, 0x63, 0x52, 0x0e, 0x65, 0x67, 0x72, 0x65,
0x73, 0x73, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x73, 0x4a, 0x04, 0x08, 0x1f, 0x10, 0x20,
0x4a, 0x04, 0x08, 0x20, 0x10, 0x21, 0x4a, 0x04, 0x08, 0x21, 0x10, 0x22, 0x4a, 0x04, 0x08, 0x22,
0x10, 0x23, 0x4a, 0x04, 0x08, 0x23, 0x10, 0x24, 0x4a, 0x04, 0x08, 0x24, 0x10, 0x25, 0x4a, 0x04,
0x08, 0x25, 0x10, 0x26, 0x52, 0x07, 0x63, 0x69, 0x74, 0x61, 0x64, 0x65, 0x6c, 0x52, 0x06, 0x70,
0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x09, 0x74, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x74, 0x72, 0x79,
0x52, 0x06, 0x67, 0x61, 0x6c, 0x6c, 0x65, 0x79, 0x52, 0x0a, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x61,
0x67, 0x65, 0x6e, 0x74, 0x52, 0x05, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x52, 0x10, 0x73, 0x69, 0x64,
0x65, 0x63, 0x61, 0x72, 0x5f, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x22, 0x8d, 0x01,
0x0a, 0x11, 0x42, 0x61, 0x73, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53,
0x70, 0x65, 0x63, 0x12, 0x34, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65,
0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x42, 0x0a, 0x03, 0x6b, 0x38, 0x73,
0x18, 0x32, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f,
0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
0x2e, 0x4b, 0x75, 0x62, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x6f, 0x75,
0x72, 0x63, 0x65, 0x73, 0x53, 0x70, 0x65, 0x63, 0x52, 0x03, 0x6b, 0x38, 0x73, 0x22, 0x90, 0x02,
0x0a, 0x0d, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x63, 0x12,
0x34, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x07, 0x65, 0x6e,
0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61,
0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70,
0x61, 0x63, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x68, 0x75, 0x62, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09,
0x52, 0x03, 0x68, 0x75, 0x62, 0x12, 0x28, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x0b, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12,
0x2b, 0x0a, 0x04, 0x73, 0x70, 0x65, 0x63, 0x18, 0x1e, 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, 0x04, 0x73, 0x70, 0x65, 0x63, 0x12, 0x42, 0x0a, 0x03,
0x6b, 0x38, 0x73, 0x18, 0x32, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x73, 0x74, 0x69,
0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
0x68, 0x61, 0x31, 0x2e, 0x4b, 0x75, 0x62, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x65, 0x73, 0x52, 0x65,
0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x53, 0x70, 0x65, 0x63, 0x52, 0x03, 0x6b, 0x38, 0x73,
0x22, 0xa8, 0x02, 0x0a, 0x15, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x43, 0x6f, 0x6d,
0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x53, 0x70, 0x65, 0x63, 0x12, 0x34, 0x0a, 0x07, 0x65, 0x6e,
0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f,
0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20,
0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x2b,
0x0a, 0x04, 0x73, 0x70, 0x65, 0x63, 0x18, 0x0a, 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, 0x04, 0x73, 0x70, 0x65, 0x63, 0x12, 0x1c, 0x0a, 0x09, 0x63,
0x68, 0x61, 0x72, 0x74, 0x50, 0x61, 0x74, 0x68, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
0x63, 0x68, 0x61, 0x72, 0x74, 0x50, 0x61, 0x74, 0x68, 0x12, 0x2c, 0x0a, 0x06, 0x73, 0x63, 0x68,
0x65, 0x6d, 0x61, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52,
0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x42, 0x0a, 0x03, 0x6b, 0x38, 0x73, 0x18, 0x32,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65,
0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4b,
0x75, 0x62, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
0x65, 0x73, 0x53, 0x70, 0x65, 0x63, 0x52, 0x03, 0x6b, 0x38, 0x73, 0x22, 0xf6, 0x02, 0x0a, 0x0b,
0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x53, 0x70, 0x65, 0x63, 0x12, 0x34, 0x0a, 0x07, 0x65,
0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42,
0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65,
0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02,
0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12,
0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
0x61, 0x6d, 0x65, 0x12, 0x45, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61,
0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x61, 0x74,
0x65, 0x77, 0x61, 0x79, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x45, 0x6e,
0x74, 0x72, 0x79, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x68, 0x75,
0x62, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x68, 0x75, 0x62, 0x12, 0x28, 0x0a, 0x03,
0x74, 0x61, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75,
0x65, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x42, 0x0a, 0x03, 0x6b, 0x38, 0x73, 0x18, 0x32, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72,
0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4b, 0x75,
0x62, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
0x73, 0x53, 0x70, 0x65, 0x63, 0x52, 0x03, 0x6b, 0x38, 0x73, 0x1a, 0x38, 0x0a, 0x0a, 0x4c, 0x61,
0x62, 0x65, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 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,
0x3a, 0x02, 0x38, 0x01, 0x22, 0xd2, 0x0c, 0x0a, 0x17, 0x4b, 0x75, 0x62, 0x65, 0x72, 0x6e, 0x65,
0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x53, 0x70, 0x65, 0x63,
0x12, 0x3d, 0x0a, 0x08, 0x61, 0x66, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61,
0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x66, 0x66,
0x69, 0x6e, 0x69, 0x74, 0x79, 0x52, 0x08, 0x61, 0x66, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79, 0x12,
0x31, 0x0a, 0x03, 0x65, 0x6e, 0x76, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x69,
0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31,
0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x76, 0x56, 0x61, 0x72, 0x52, 0x03, 0x65,
0x6e, 0x76, 0x12, 0x4e, 0x0a, 0x07, 0x68, 0x70, 0x61, 0x53, 0x70, 0x65, 0x63, 0x18, 0x03, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72,
0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x48, 0x6f,
0x72, 0x69, 0x7a, 0x6f, 0x6e, 0x74, 0x61, 0x6c, 0x50, 0x6f, 0x64, 0x41, 0x75, 0x74, 0x6f, 0x73,
0x63, 0x61, 0x6c, 0x65, 0x72, 0x53, 0x70, 0x65, 0x63, 0x52, 0x07, 0x68, 0x70, 0x61, 0x53, 0x70,
0x65, 0x63, 0x12, 0x28, 0x0a, 0x0f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x50, 0x75, 0x6c, 0x6c, 0x50,
0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x69, 0x6d, 0x61,
0x67, 0x65, 0x50, 0x75, 0x6c, 0x6c, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x66, 0x0a, 0x0c,
0x6e, 0x6f, 0x64, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x42, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61,
0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4b, 0x75, 0x62,
0x65, 0x72, 0x6e, 0x65, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73,
0x53, 0x70, 0x65, 0x63, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f,
0x72, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x53, 0x65, 0x6c, 0x65,
0x63, 0x74, 0x6f, 0x72, 0x12, 0x62, 0x0a, 0x13, 0x70, 0x6f, 0x64, 0x44, 0x69, 0x73, 0x72, 0x75,
0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x30, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74,
0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x50, 0x6f, 0x64, 0x44,
0x69, 0x73, 0x72, 0x75, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x53,
0x70, 0x65, 0x63, 0x52, 0x13, 0x70, 0x6f, 0x64, 0x44, 0x69, 0x73, 0x72, 0x75, 0x70, 0x74, 0x69,
0x6f, 0x6e, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x12, 0x6c, 0x0a, 0x0e, 0x70, 0x6f, 0x64, 0x41,
0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x44, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f,
0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4b, 0x75, 0x62, 0x65, 0x72,
0x6e, 0x65, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x53, 0x70,
0x65, 0x63, 0x2e, 0x50, 0x6f, 0x64, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0e, 0x70, 0x6f, 0x64, 0x41, 0x6e, 0x6e, 0x6f, 0x74,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69,
0x74, 0x79, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28,
0x09, 0x52, 0x11, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x43, 0x6c, 0x61, 0x73, 0x73,
0x4e, 0x61, 0x6d, 0x65, 0x12, 0x4f, 0x0a, 0x0e, 0x72, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x65, 0x73,
0x73, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x69,
0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31,
0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x65, 0x73, 0x73,
0x50, 0x72, 0x6f, 0x62, 0x65, 0x52, 0x0e, 0x72, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x65, 0x73, 0x73,
0x50, 0x72, 0x6f, 0x62, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61,
0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, 0x70,
0x6c, 0x69, 0x63, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x40, 0x0a, 0x09, 0x72, 0x65, 0x73,
0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x69,
0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31,
0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73,
0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x3e, 0x0a, 0x07, 0x73,
0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69,
0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31,
0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x70,
0x65, 0x63, 0x52, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x47, 0x0a, 0x08, 0x73,
0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e,
0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76,
0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65,
0x6e, 0x74, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x52, 0x08, 0x73, 0x74, 0x72, 0x61,
0x74, 0x65, 0x67, 0x79, 0x12, 0x45, 0x0a, 0x0b, 0x74, 0x6f, 0x6c, 0x65, 0x72, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x73, 0x74, 0x69,
0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
0x68, 0x61, 0x31, 0x2e, 0x54, 0x6f, 0x6c, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b,
0x74, 0x6f, 0x6c, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x78, 0x0a, 0x12, 0x73,
0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x48, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e,
0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
0x31, 0x2e, 0x4b, 0x75, 0x62, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x6f,
0x75, 0x72, 0x63, 0x65, 0x73, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72,
0x79, 0x52, 0x12, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x55, 0x0a, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b,
0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e,
0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x50, 0x6f, 0x64, 0x53, 0x65, 0x63, 0x75,
0x72, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x0f, 0x73, 0x65, 0x63,
0x75, 0x72, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x34, 0x0a, 0x07,
0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e,
0x6b, 0x38, 0x73, 0x2e, 0x69, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e,
0x76, 0x31, 0x2e, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x52, 0x07, 0x76, 0x6f, 0x6c, 0x75, 0x6d,
0x65, 0x73, 0x12, 0x43, 0x0a, 0x0c, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x4d, 0x6f, 0x75, 0x6e,
0x74, 0x73, 0x18, 0x12, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6b, 0x38, 0x73, 0x2e, 0x69,
0x6f, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x6f,
0x6c, 0x75, 0x6d, 0x65, 0x4d, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0c, 0x76, 0x6f, 0x6c, 0x75, 0x6d,
0x65, 0x4d, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x45, 0x0a, 0x08, 0x6f, 0x76, 0x65, 0x72, 0x6c,
0x61, 0x79, 0x73, 0x18, 0x64, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x73, 0x74, 0x69,
0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
0x68, 0x61, 0x31, 0x2e, 0x4b, 0x38, 0x73, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x4f, 0x76, 0x65,
0x72, 0x6c, 0x61, 0x79, 0x52, 0x08, 0x6f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x73, 0x1a, 0x3f,
0x0a, 0x11, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x45, 0x6e,
0x74, 0x72, 0x79, 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, 0x3a, 0x02, 0x38, 0x01, 0x1a,
0x41, 0x0a, 0x13, 0x50, 0x6f, 0x64, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75,
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02,
0x38, 0x01, 0x1a, 0x45, 0x0a, 0x17, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x6e, 0x6e,
0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a,
0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xf8, 0x01, 0x0a, 0x10, 0x4b, 0x38,
0x73, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x12, 0x1e,
0x0a, 0x0a, 0x61, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01,
0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x12,
0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69,
0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x4d, 0x0a, 0x07, 0x70, 0x61, 0x74, 0x63, 0x68, 0x65,
0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e,
0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
0x31, 0x2e, 0x4b, 0x38, 0x73, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x4f, 0x76, 0x65, 0x72, 0x6c,
0x61, 0x79, 0x2e, 0x50, 0x61, 0x74, 0x68, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x07, 0x70, 0x61,
0x74, 0x63, 0x68, 0x65, 0x73, 0x1a, 0x4d, 0x0a, 0x09, 0x50, 0x61, 0x74, 0x68, 0x56, 0x61, 0x6c,
0x75, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x2c, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18,
0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x76,
0x61, 0x6c, 0x75, 0x65, 0x22, 0xf1, 0x01, 0x0a, 0x08, 0x41, 0x66, 0x66, 0x69, 0x6e, 0x69, 0x74,
0x79, 0x12, 0x49, 0x0a, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x41, 0x66, 0x66, 0x69, 0x6e, 0x69, 0x74,
0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e,
0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
0x31, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x41, 0x66, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79, 0x52, 0x0c,
0x6e, 0x6f, 0x64, 0x65, 0x41, 0x66, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79, 0x12, 0x46, 0x0a, 0x0b,
0x70, 0x6f, 0x64, 0x41, 0x66, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x24, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74,
0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x50, 0x6f, 0x64, 0x41,
0x66, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79, 0x52, 0x0b, 0x70, 0x6f, 0x64, 0x41, 0x66, 0x66, 0x69,
0x6e, 0x69, 0x74, 0x79, 0x12, 0x52, 0x0a, 0x0f, 0x70, 0x6f, 0x64, 0x41, 0x6e, 0x74, 0x69, 0x41,
0x66, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e,
0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76,
0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x50, 0x6f, 0x64, 0x41, 0x6e, 0x74, 0x69, 0x41,
0x66, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79, 0x52, 0x0f, 0x70, 0x6f, 0x64, 0x41, 0x6e, 0x74, 0x69,
0x41, 0x66, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79, 0x22, 0xa7, 0x01, 0x0a, 0x14, 0x43, 0x6f, 0x6e,
0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x4b, 0x65, 0x79, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f,
0x72, 0x12, 0x61, 0x0a, 0x14, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74,
0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x2d, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72,
0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x4f,
0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x14,
0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x66, 0x65, 0x72,
0x65, 0x6e, 0x63, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x61, 0x6c, 0x22, 0x90, 0x01, 0x0a, 0x1d, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72,
0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x6f,
0x75, 0x72, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3d, 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67,
0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f,
0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
0x61, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52,
0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x74, 0x61,
0x69, 0x6e, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x74,
0x61, 0x69, 0x6e, 0x65, 0x72, 0x22, 0x97, 0x01, 0x0a, 0x1d, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69,
0x6e, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69,
0x63, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x44, 0x0a, 0x07, 0x63,
0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x69,
0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31,
0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x56, 0x61, 0x6c,
0x75, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x07, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e,
0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x18, 0x03,
0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x22,
0x38, 0x0a, 0x0e, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x50, 0x43, 0x6f, 0x6e, 0x66, 0x69,
0x67, 0x12, 0x26, 0x0a, 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x53, 0x65, 0x63, 0x6f,
0x6e, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x6f,
0x75, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0x65, 0x0a, 0x1b, 0x43, 0x72, 0x6f,
0x73, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52,
0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04,
0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03,
0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
0x22, 0x80, 0x01, 0x0a, 0x12, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x53,
0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x56, 0x0a, 0x0d, 0x72,
0x6f, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61,
0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x6f, 0x6c,
0x6c, 0x69, 0x6e, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79,
0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0d, 0x72, 0x6f, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x55, 0x70, 0x64,
0x61, 0x74, 0x65, 0x22, 0x77, 0x0a, 0x06, 0x45, 0x6e, 0x76, 0x56, 0x61, 0x72, 0x12, 0x12, 0x0a,
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x43, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65,
0x46, 0x72, 0x6f, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x73, 0x74,
0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c,
0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x76, 0x56, 0x61, 0x72, 0x53, 0x6f, 0x75, 0x72, 0x63,
0x65, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x22, 0xdd, 0x02, 0x0a,
0x0c, 0x45, 0x6e, 0x76, 0x56, 0x61, 0x72, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x48, 0x0a,
0x08, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x52, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x2c, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72,
0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74,
0x46, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x08, 0x66,
0x69, 0x65, 0x6c, 0x64, 0x52, 0x65, 0x66, 0x12, 0x5a, 0x0a, 0x10, 0x72, 0x65, 0x73, 0x6f, 0x75,
0x72, 0x63, 0x65, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x52, 0x65, 0x66, 0x18, 0x02, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x2e, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74,
0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f,
0x75, 0x72, 0x63, 0x65, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f,
0x72, 0x52, 0x10, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x46, 0x69, 0x65, 0x6c, 0x64,
0x52, 0x65, 0x66, 0x12, 0x57, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70,
0x4b, 0x65, 0x79, 0x52, 0x65, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x69,
0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31,
0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x70,
0x4b, 0x65, 0x79, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x0f, 0x63, 0x6f, 0x6e,
0x66, 0x69, 0x67, 0x4d, 0x61, 0x70, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x66, 0x12, 0x4e, 0x0a, 0x0c,
0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x66, 0x18, 0x04, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61,
0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x63,
0x72, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x0c,
0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x66, 0x22, 0x26, 0x0a, 0x0a,
0x45, 0x78, 0x65, 0x63, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f,
0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d,
0x6d, 0x61, 0x6e, 0x64, 0x22, 0xc3, 0x03, 0x0a, 0x14, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61,
0x6c, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x22, 0x0a,
0x0a, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0a, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x4e, 0x61, 0x6d,
0x65, 0x12, 0x5f, 0x0a, 0x0e, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x65, 0x6c, 0x65, 0x63,
0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x6b, 0x38, 0x73, 0x2e,
0x69, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x72, 0x79, 0x2e,
0x70, 0x6b, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x76, 0x31,
0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x42, 0x02,
0x18, 0x01, 0x52, 0x0e, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74,
0x6f, 0x72, 0x12, 0x4a, 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x75,
0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e,
0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
0x31, 0x2e, 0x49, 0x6e, 0x74, 0x4f, 0x72, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x42, 0x02, 0x18,
0x01, 0x52, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x58,
0x0a, 0x12, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x56,
0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x73, 0x74,
0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c,
0x70, 0x68, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x4f, 0x72, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67,
0x42, 0x02, 0x18, 0x01, 0x52, 0x12, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x76, 0x65, 0x72,
0x61, 0x67, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x41, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x72,
0x69, 0x63, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f,
0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
0x61, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66,
0x69, 0x65, 0x72, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x12, 0x3d, 0x0a, 0x06, 0x74,
0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x73,
0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61,
0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x54, 0x61, 0x72, 0x67,
0x65, 0x74, 0x52, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x22, 0x9f, 0x01, 0x0a, 0x14, 0x45,
0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x74, 0x61,
0x74, 0x75, 0x73, 0x12, 0x41, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72,
0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4d, 0x65,
0x74, 0x72, 0x69, 0x63, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x06,
0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x12, 0x44, 0x0a, 0x07, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e,
0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e,
0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
0x31, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x61,
0x74, 0x75, 0x73, 0x52, 0x07, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x22, 0xd0, 0x01, 0x0a,
0x0d, 0x48, 0x54, 0x54, 0x50, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12,
0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61,
0x74, 0x68, 0x12, 0x38, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x24, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f,
0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x4f, 0x72,
0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04,
0x68, 0x6f, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74,
0x12, 0x16, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x12, 0x45, 0x0a, 0x0b, 0x68, 0x74, 0x74, 0x70,
0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e,
0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76,
0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x48, 0x54, 0x54, 0x50, 0x48, 0x65, 0x61, 0x64,
0x65, 0x72, 0x52, 0x0b, 0x68, 0x74, 0x74, 0x70, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x22,
0x36, 0x0a, 0x0a, 0x48, 0x54, 0x54, 0x50, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x12, 0x0a,
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xd4, 0x02, 0x0a, 0x1b, 0x48, 0x6f, 0x72, 0x69,
0x7a, 0x6f, 0x6e, 0x74, 0x61, 0x6c, 0x50, 0x6f, 0x64, 0x41, 0x75, 0x74, 0x6f, 0x73, 0x63, 0x61,
0x6c, 0x65, 0x72, 0x53, 0x70, 0x65, 0x63, 0x12, 0x5c, 0x0a, 0x0e, 0x73, 0x63, 0x61, 0x6c, 0x65,
0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x34, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72,
0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x56,
0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x66, 0x65,
0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x0e, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x54, 0x61, 0x72, 0x67,
0x65, 0x74, 0x52, 0x65, 0x66, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x70, 0x6c,
0x69, 0x63, 0x61, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x52,
0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x52, 0x65,
0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x6d, 0x61,
0x78, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x12, 0x3d, 0x0a, 0x07, 0x6d, 0x65, 0x74,
0x72, 0x69, 0x63, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x73, 0x74,
0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c,
0x70, 0x68, 0x61, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x70, 0x65, 0x63, 0x52,
0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x54, 0x0a, 0x08, 0x62, 0x65, 0x68, 0x61,
0x76, 0x69, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x69, 0x73, 0x74,
0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c,
0x70, 0x68, 0x61, 0x31, 0x2e, 0x48, 0x6f, 0x72, 0x69, 0x7a, 0x6f, 0x6e, 0x74, 0x61, 0x6c, 0x50,
0x6f, 0x64, 0x41, 0x75, 0x74, 0x6f, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x72, 0x42, 0x65, 0x68, 0x61,
0x76, 0x69, 0x6f, 0x72, 0x52, 0x08, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x22, 0xad,
0x01, 0x0a, 0x1f, 0x48, 0x6f, 0x72, 0x69, 0x7a, 0x6f, 0x6e, 0x74, 0x61, 0x6c, 0x50, 0x6f, 0x64,
0x41, 0x75, 0x74, 0x6f, 0x53, 0x63, 0x61, 0x6c, 0x65, 0x72, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69,
0x6f, 0x72, 0x12, 0x42, 0x0a, 0x07, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x55, 0x70, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72,
0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x48, 0x50,
0x41, 0x53, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x07, 0x73,
0x63, 0x61, 0x6c, 0x65, 0x55, 0x70, 0x12, 0x46, 0x0a, 0x09, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x44,
0x6f, 0x77, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x73, 0x74, 0x69,
0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
0x68, 0x61, 0x31, 0x2e, 0x48, 0x50, 0x41, 0x53, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x52, 0x75,
0x6c, 0x65, 0x73, 0x52, 0x09, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x44, 0x6f, 0x77, 0x6e, 0x22, 0xbc,
0x01, 0x0a, 0x0f, 0x48, 0x50, 0x41, 0x53, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c,
0x65, 0x73, 0x12, 0x3e, 0x0a, 0x1a, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73,
0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x1a, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x7a,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x53, 0x65, 0x63, 0x6f, 0x6e,
0x64, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x50, 0x6f, 0x6c, 0x69,
0x63, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74,
0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x45, 0x0a, 0x08, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69,
0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f,
0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
0x61, 0x31, 0x2e, 0x48, 0x50, 0x41, 0x53, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x6c,
0x69, 0x63, 0x79, 0x52, 0x08, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x22, 0x62, 0x0a,
0x10, 0x48, 0x50, 0x41, 0x53, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x6c, 0x69, 0x63,
0x79, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x70,
0x65, 0x72, 0x69, 0x6f, 0x64, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01,
0x28, 0x05, 0x52, 0x0d, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64,
0x73, 0x22, 0x2a, 0x0a, 0x14, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74,
0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x85, 0x01,
0x0a, 0x10, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69,
0x65, 0x72, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x48, 0x00, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x4f, 0x0a, 0x08, 0x73,
0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e,
0x6b, 0x38, 0x73, 0x2e, 0x69, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e,
0x65, 0x72, 0x79, 0x2e, 0x70, 0x6b, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x6d, 0x65, 0x74,
0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74,
0x6f, 0x72, 0x52, 0x08, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x42, 0x07, 0x0a, 0x05,
0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xa0, 0x03, 0x0a, 0x0a, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63,
0x53, 0x70, 0x65, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01,
0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x43, 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65,
0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f,
0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
0x61, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53,
0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x3d, 0x0a,
0x04, 0x70, 0x6f, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x73,
0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61,
0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x50, 0x6f, 0x64, 0x73, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63,
0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x04, 0x70, 0x6f, 0x64, 0x73, 0x12, 0x49, 0x0a, 0x08,
0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d,
0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e,
0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x08, 0x72,
0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x64, 0x0a, 0x11, 0x63, 0x6f, 0x6e, 0x74, 0x61,
0x69, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x36, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61,
0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e,
0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65,
0x74, 0x72, 0x69, 0x63, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x11, 0x63, 0x6f, 0x6e, 0x74,
0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x49, 0x0a,
0x08, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x2d, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72,
0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e,
0x61, 0x6c, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x08,
0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x22, 0xa2, 0x03, 0x0a, 0x0c, 0x4d, 0x65, 0x74,
0x72, 0x69, 0x63, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70,
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x43, 0x0a,
0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e,
0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76,
0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x4d, 0x65,
0x74, 0x72, 0x69, 0x63, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65,
0x63, 0x74, 0x12, 0x3d, 0x0a, 0x04, 0x70, 0x6f, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x29, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f,
0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x50, 0x6f, 0x64, 0x73, 0x4d,
0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x04, 0x70, 0x6f, 0x64,
0x73, 0x12, 0x49, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x04, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72,
0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x65,
0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x74, 0x61, 0x74,
0x75, 0x73, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x64, 0x0a, 0x11,
0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e,
0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75,
0x72, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52,
0x11, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72,
0x63, 0x65, 0x12, 0x49, 0x0a, 0x08, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x18, 0x05,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65,
0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45,
0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x74, 0x61,
0x74, 0x75, 0x73, 0x52, 0x08, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x22, 0xd8, 0x01,
0x0a, 0x0c, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x12,
0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79,
0x70, 0x65, 0x12, 0x3a, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x24, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74,
0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x4f,
0x72, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x48,
0x0a, 0x0c, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65,
0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49,
0x6e, 0x74, 0x4f, 0x72, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x0c, 0x61, 0x76, 0x65, 0x72,
0x61, 0x67, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x2e, 0x0a, 0x12, 0x61, 0x76, 0x65, 0x72,
0x61, 0x67, 0x65, 0x55, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04,
0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x55, 0x74, 0x69,
0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xc9, 0x01, 0x0a, 0x11, 0x4d, 0x65, 0x74,
0x72, 0x69, 0x63, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x3a,
0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e,
0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76,
0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x4f, 0x72, 0x53, 0x74, 0x72,
0x69, 0x6e, 0x67, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x48, 0x0a, 0x0c, 0x61, 0x76,
0x65, 0x72, 0x61, 0x67, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x24, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f,
0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x4f, 0x72,
0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x0c, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x56,
0x61, 0x6c, 0x75, 0x65, 0x12, 0x2e, 0x0a, 0x12, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x55,
0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05,
0x52, 0x12, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x55, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x22, 0xbb, 0x02, 0x0a, 0x0c, 0x4e, 0x6f, 0x64, 0x65, 0x41, 0x66, 0x66,
0x69, 0x6e, 0x69, 0x74, 0x79, 0x12, 0x8d, 0x01, 0x0a, 0x2e, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72,
0x65, 0x64, 0x44, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69,
0x6e, 0x67, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x44, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x45,
0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25,
0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e,
0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x65, 0x6c,
0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x2e, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x44,
0x75, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x49,
0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x44, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x45, 0x78, 0x65, 0x63,
0x75, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x9a, 0x01, 0x0a, 0x2f, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72,
0x72, 0x65, 0x64, 0x44, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c,
0x69, 0x6e, 0x67, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x44, 0x75, 0x72, 0x69, 0x6e, 0x67,
0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x30, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72,
0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x65, 0x66, 0x65, 0x72,
0x72, 0x65, 0x64, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x54, 0x65, 0x72,
0x6d, 0x52, 0x2f, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x44, 0x75, 0x72, 0x69,
0x6e, 0x67, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x49, 0x67, 0x6e, 0x6f,
0x72, 0x65, 0x64, 0x44, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69,
0x6f, 0x6e, 0x22, 0x67, 0x0a, 0x0c, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74,
0x6f, 0x72, 0x12, 0x57, 0x0a, 0x11, 0x6e, 0x6f, 0x64, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74,
0x6f, 0x72, 0x54, 0x65, 0x72, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e,
0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76,
0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x65, 0x6c, 0x65,
0x63, 0x74, 0x6f, 0x72, 0x54, 0x65, 0x72, 0x6d, 0x52, 0x11, 0x6e, 0x6f, 0x64, 0x65, 0x53, 0x65,
0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x54, 0x65, 0x72, 0x6d, 0x73, 0x22, 0xc4, 0x01, 0x0a, 0x10,
0x4e, 0x6f, 0x64, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x54, 0x65, 0x72, 0x6d,
0x12, 0x5c, 0x0a, 0x10, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x45, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73,
0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x73, 0x74,
0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c,
0x70, 0x68, 0x61, 0x31, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f,
0x72, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x10, 0x6d, 0x61,
0x74, 0x63, 0x68, 0x45, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x52,
0x0a, 0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x02, 0x20,
0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72,
0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4e, 0x6f,
0x64, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72,
0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x46, 0x69, 0x65, 0x6c,
0x64, 0x73, 0x22, 0x5f, 0x0a, 0x17, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74,
0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x10, 0x0a,
0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x76,
0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x76, 0x61, 0x6c,
0x75, 0x65, 0x73, 0x22, 0x53, 0x0a, 0x13, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x46, 0x69, 0x65,
0x6c, 0x64, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70,
0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a,
0x61, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x69,
0x65, 0x6c, 0x64, 0x50, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x66,
0x69, 0x65, 0x6c, 0x64, 0x50, 0x61, 0x74, 0x68, 0x22, 0x3e, 0x0a, 0x0a, 0x4f, 0x62, 0x6a, 0x65,
0x63, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05,
0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61,
0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e,
0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0xfa, 0x03, 0x0a, 0x12, 0x4f, 0x62, 0x6a,
0x65, 0x63, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12,
0x22, 0x0a, 0x0a, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20,
0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0a, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x4e,
0x61, 0x6d, 0x65, 0x12, 0x4a, 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x56, 0x61, 0x6c,
0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f,
0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x4f, 0x72, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x42, 0x02,
0x18, 0x01, 0x52, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12,
0x53, 0x0a, 0x08, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x33, 0x2e, 0x6b, 0x38, 0x73, 0x2e, 0x69, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x6d, 0x61,
0x63, 0x68, 0x69, 0x6e, 0x65, 0x72, 0x79, 0x2e, 0x70, 0x6b, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x73,
0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x53, 0x65,
0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x42, 0x02, 0x18, 0x01, 0x52, 0x08, 0x73, 0x65, 0x6c, 0x65,
0x63, 0x74, 0x6f, 0x72, 0x12, 0x4c, 0x0a, 0x0c, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x56,
0x61, 0x6c, 0x75, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x73, 0x74,
0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c,
0x70, 0x68, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x4f, 0x72, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67,
0x42, 0x02, 0x18, 0x01, 0x52, 0x0c, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x56, 0x61, 0x6c,
0x75, 0x65, 0x12, 0x2e, 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x74, 0x61, 0x72, 0x67,
0x65, 0x74, 0x12, 0x5e, 0x0a, 0x0f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x4f,
0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x69, 0x73,
0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61,
0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69,
0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63,
0x65, 0x52, 0x0f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x4f, 0x62, 0x6a, 0x65,
0x63, 0x74, 0x12, 0x41, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x18, 0x08, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61,
0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4d, 0x65, 0x74,
0x72, 0x69, 0x63, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x06, 0x6d,
0x65, 0x74, 0x72, 0x69, 0x63, 0x22, 0xfd, 0x01, 0x0a, 0x12, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74,
0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x41, 0x0a, 0x06,
0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69,
0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31,
0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x49, 0x64, 0x65,
0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x12,
0x44, 0x0a, 0x07, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x2a, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f,
0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69,
0x63, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x07, 0x63, 0x75,
0x72, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x5e, 0x0a, 0x0f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62,
0x65, 0x64, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34,
0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e,
0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x56, 0x65,
0x72, 0x73, 0x69, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x66, 0x65, 0x72,
0x65, 0x6e, 0x63, 0x65, 0x52, 0x0f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x4f,
0x62, 0x6a, 0x65, 0x63, 0x74, 0x22, 0xbd, 0x02, 0x0a, 0x0b, 0x50, 0x6f, 0x64, 0x41, 0x66, 0x66,
0x69, 0x6e, 0x69, 0x74, 0x79, 0x12, 0x90, 0x01, 0x0a, 0x2e, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72,
0x65, 0x64, 0x44, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69,
0x6e, 0x67, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x44, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x45,
0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28,
0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e,
0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x50, 0x6f, 0x64, 0x41, 0x66, 0x66, 0x69,
0x6e, 0x69, 0x74, 0x79, 0x54, 0x65, 0x72, 0x6d, 0x52, 0x2e, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72,
0x65, 0x64, 0x44, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69,
0x6e, 0x67, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x44, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x45,
0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x9a, 0x01, 0x0a, 0x2f, 0x70, 0x72, 0x65,
0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x44, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x63, 0x68, 0x65,
0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x44, 0x75, 0x72,
0x69, 0x6e, 0x67, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61,
0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x57, 0x65, 0x69,
0x67, 0x68, 0x74, 0x65, 0x64, 0x50, 0x6f, 0x64, 0x41, 0x66, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79,
0x54, 0x65, 0x72, 0x6d, 0x52, 0x2f, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x44,
0x75, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x49,
0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x44, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x45, 0x78, 0x65, 0x63,
0x75, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xc1, 0x02, 0x0a, 0x0f, 0x50, 0x6f, 0x64, 0x41, 0x6e, 0x74,
0x69, 0x41, 0x66, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79, 0x12, 0x90, 0x01, 0x0a, 0x2e, 0x72, 0x65,
0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x44, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x63, 0x68, 0x65,
0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x44, 0x75, 0x72,
0x69, 0x6e, 0x67, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61,
0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x50, 0x6f, 0x64,
0x41, 0x66, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79, 0x54, 0x65, 0x72, 0x6d, 0x52, 0x2e, 0x72, 0x65,
0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x44, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x63, 0x68, 0x65,
0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x44, 0x75, 0x72,
0x69, 0x6e, 0x67, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x9a, 0x01, 0x0a,
0x2f, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x44, 0x75, 0x72, 0x69, 0x6e, 0x67,
0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65,
0x64, 0x44, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e,
0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f,
0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
0x2e, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x65, 0x64, 0x50, 0x6f, 0x64, 0x41, 0x66, 0x66, 0x69,
0x6e, 0x69, 0x74, 0x79, 0x54, 0x65, 0x72, 0x6d, 0x52, 0x2f, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72,
0x72, 0x65, 0x64, 0x44, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c,
0x69, 0x6e, 0x67, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x44, 0x75, 0x72, 0x69, 0x6e, 0x67,
0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xae, 0x01, 0x0a, 0x0f, 0x50, 0x6f,
0x64, 0x41, 0x66, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79, 0x54, 0x65, 0x72, 0x6d, 0x12, 0x59, 0x0a,
0x0d, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x01,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x6b, 0x38, 0x73, 0x2e, 0x69, 0x6f, 0x2e, 0x61, 0x70,
0x69, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x72, 0x79, 0x2e, 0x70, 0x6b, 0x67, 0x2e, 0x61,
0x70, 0x69, 0x73, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x61, 0x62, 0x65,
0x6c, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x0d, 0x6c, 0x61, 0x62, 0x65, 0x6c,
0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x61, 0x6d, 0x65,
0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x61,
0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x74, 0x6f, 0x70, 0x6f,
0x6c, 0x6f, 0x67, 0x79, 0x4b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x74,
0x6f, 0x70, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x4b, 0x65, 0x79, 0x22, 0x82, 0x02, 0x0a, 0x17, 0x50,
0x6f, 0x64, 0x44, 0x69, 0x73, 0x72, 0x75, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x75, 0x64, 0x67,
0x65, 0x74, 0x53, 0x70, 0x65, 0x63, 0x12, 0x48, 0x0a, 0x0c, 0x6d, 0x69, 0x6e, 0x41, 0x76, 0x61,
0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69,
0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31,
0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x4f, 0x72, 0x53, 0x74, 0x72, 0x69,
0x6e, 0x67, 0x52, 0x0c, 0x6d, 0x69, 0x6e, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65,
0x12, 0x4f, 0x0a, 0x08, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x33, 0x2e, 0x6b, 0x38, 0x73, 0x2e, 0x69, 0x6f, 0x2e, 0x61, 0x70, 0x69, 0x6d,
0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x72, 0x79, 0x2e, 0x70, 0x6b, 0x67, 0x2e, 0x61, 0x70, 0x69,
0x73, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x53,
0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x08, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f,
0x72, 0x12, 0x4c, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x55, 0x6e, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61,
0x62, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x73, 0x74, 0x69,
0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
0x68, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x4f, 0x72, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52,
0x0e, 0x6d, 0x61, 0x78, 0x55, 0x6e, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x22,
0xe7, 0x02, 0x0a, 0x10, 0x50, 0x6f, 0x64, 0x73, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x6f,
0x75, 0x72, 0x63, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x4e, 0x61,
0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0a, 0x6d, 0x65,
0x74, 0x72, 0x69, 0x63, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x58, 0x0a, 0x12, 0x74, 0x61, 0x72, 0x67,
0x65, 0x74, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65,
0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49,
0x6e, 0x74, 0x4f, 0x72, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x42, 0x02, 0x18, 0x01, 0x52, 0x12,
0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x56, 0x61, 0x6c,
0x75, 0x65, 0x12, 0x53, 0x0a, 0x08, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x03,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x6b, 0x38, 0x73, 0x2e, 0x69, 0x6f, 0x2e, 0x61, 0x70,
0x69, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x72, 0x79, 0x2e, 0x70, 0x6b, 0x67, 0x2e, 0x61,
0x70, 0x69, 0x73, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x61, 0x62, 0x65,
0x6c, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x42, 0x02, 0x18, 0x01, 0x52, 0x08, 0x73,
0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x41, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x72, 0x69,
0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e,
0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
0x31, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69,
0x65, 0x72, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x12, 0x3d, 0x0a, 0x06, 0x74, 0x61,
0x72, 0x67, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x73, 0x74,
0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c,
0x70, 0x68, 0x61, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x54, 0x61, 0x72, 0x67, 0x65,
0x74, 0x52, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x22, 0x9b, 0x01, 0x0a, 0x10, 0x50, 0x6f,
0x64, 0x73, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x41,
0x0a, 0x06, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29,
0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e,
0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x49,
0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x72, 0x69,
0x63, 0x12, 0x44, 0x0a, 0x07, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61,
0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4d, 0x65, 0x74,
0x72, 0x69, 0x63, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x07,
0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x22, 0x7c, 0x0a, 0x17, 0x50, 0x72, 0x65, 0x66, 0x65,
0x72, 0x72, 0x65, 0x64, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x54, 0x65,
0x72, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x01, 0x20, 0x01,
0x28, 0x05, 0x52, 0x06, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x49, 0x0a, 0x0a, 0x70, 0x72,
0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29,
0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e,
0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x53, 0x65, 0x6c,
0x65, 0x63, 0x74, 0x6f, 0x72, 0x54, 0x65, 0x72, 0x6d, 0x52, 0x0a, 0x70, 0x72, 0x65, 0x66, 0x65,
0x72, 0x65, 0x6e, 0x63, 0x65, 0x22, 0xab, 0x03, 0x0a, 0x0e, 0x52, 0x65, 0x61, 0x64, 0x69, 0x6e,
0x65, 0x73, 0x73, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x12, 0x37, 0x0a, 0x04, 0x65, 0x78, 0x65, 0x63,
0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f,
0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
0x2e, 0x45, 0x78, 0x65, 0x63, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x04, 0x65, 0x78, 0x65,
0x63, 0x12, 0x40, 0x0a, 0x07, 0x68, 0x74, 0x74, 0x70, 0x47, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61,
0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x48, 0x54, 0x54,
0x50, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x68, 0x74, 0x74, 0x70,
0x47, 0x65, 0x74, 0x12, 0x46, 0x0a, 0x09, 0x74, 0x63, 0x70, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74,
0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f,
0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
0x2e, 0x54, 0x43, 0x50, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e,
0x52, 0x09, 0x74, 0x63, 0x70, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x30, 0x0a, 0x13, 0x69,
0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x63, 0x6f, 0x6e,
0x64, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x13, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61,
0x6c, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x26, 0x0a,
0x0e, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18,
0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x53, 0x65,
0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x53,
0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x70, 0x65,
0x72, 0x69, 0x6f, 0x64, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x73,
0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18,
0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x68,
0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x66, 0x61, 0x69, 0x6c, 0x75,
0x72, 0x65, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28,
0x05, 0x52, 0x10, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68,
0x6f, 0x6c, 0x64, 0x22, 0x99, 0x01, 0x0a, 0x15, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
0x46, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x24, 0x0a,
0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x4e,
0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18,
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12,
0x3e, 0x0a, 0x07, 0x64, 0x69, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x24, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f,
0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x4f, 0x72,
0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x64, 0x69, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x22,
0x83, 0x02, 0x0a, 0x14, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x72,
0x69, 0x63, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3e, 0x0a, 0x18,
0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x55, 0x74, 0x69,
0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x02,
0x18, 0x01, 0x52, 0x18, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67,
0x65, 0x55, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x58, 0x0a, 0x12,
0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x56, 0x61, 0x6c,
0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f,
0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x4f, 0x72, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x42, 0x02,
0x18, 0x01, 0x52, 0x12, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x41, 0x76, 0x65, 0x72, 0x61, 0x67,
0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x3d, 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74,
0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f,
0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x06, 0x74,
0x61, 0x72, 0x67, 0x65, 0x74, 0x22, 0x70, 0x0a, 0x14, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a,
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
0x65, 0x12, 0x44, 0x0a, 0x07, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61,
0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4d, 0x65, 0x74,
0x72, 0x69, 0x63, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x07,
0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x22, 0x99, 0x02, 0x0a, 0x09, 0x52, 0x65, 0x73, 0x6f,
0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x46, 0x0a, 0x06, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x18,
0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70,
0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x2e, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73,
0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x12, 0x4c, 0x0a,
0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x30, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72,
0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72,
0x63, 0x65, 0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72,
0x79, 0x52, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x4c,
0x69, 0x6d, 0x69, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05,
0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c,
0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3b, 0x0a, 0x0d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c,
0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a,
0x02, 0x38, 0x01, 0x22, 0xa9, 0x01, 0x0a, 0x17, 0x52, 0x6f, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x55,
0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x12,
0x4c, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x55, 0x6e, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c,
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e,
0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
0x31, 0x2e, 0x49, 0x6e, 0x74, 0x4f, 0x72, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x0e, 0x6d,
0x61, 0x78, 0x55, 0x6e, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x40, 0x0a,
0x08, 0x6d, 0x61, 0x78, 0x53, 0x75, 0x72, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x24, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72,
0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x4f, 0x72, 0x53,
0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x53, 0x75, 0x72, 0x67, 0x65, 0x22,
0xa4, 0x01, 0x0a, 0x11, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x53, 0x65, 0x6c,
0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x61, 0x0a, 0x14, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x4f, 0x62,
0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72,
0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x6f,
0x63, 0x61, 0x6c, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e,
0x63, 0x65, 0x52, 0x14, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52,
0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70,
0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6f, 0x70,
0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x22, 0x94, 0x06, 0x0a, 0x0b, 0x53, 0x65, 0x72, 0x76, 0x69,
0x63, 0x65, 0x53, 0x70, 0x65, 0x63, 0x12, 0x3a, 0x0a, 0x05, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x18,
0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70,
0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x52, 0x05, 0x70, 0x6f, 0x72,
0x74, 0x73, 0x12, 0x4e, 0x0a, 0x08, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x02,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65,
0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53,
0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x53, 0x65, 0x6c, 0x65, 0x63,
0x74, 0x6f, 0x72, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74,
0x6f, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x50, 0x18,
0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x50,
0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
0x74, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
0x49, 0x50, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x65, 0x78, 0x74, 0x65, 0x72,
0x6e, 0x61, 0x6c, 0x49, 0x50, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f,
0x6e, 0x41, 0x66, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52,
0x0f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x41, 0x66, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79,
0x12, 0x26, 0x0a, 0x0e, 0x6c, 0x6f, 0x61, 0x64, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x72,
0x49, 0x50, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6c, 0x6f, 0x61, 0x64, 0x42, 0x61,
0x6c, 0x61, 0x6e, 0x63, 0x65, 0x72, 0x49, 0x50, 0x12, 0x3a, 0x0a, 0x18, 0x6c, 0x6f, 0x61, 0x64,
0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x72, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x61,
0x6e, 0x67, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x18, 0x6c, 0x6f, 0x61, 0x64,
0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x72, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x61,
0x6e, 0x67, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x78, 0x74, 0x65,
0x72, 0x6e, 0x61, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x34, 0x0a, 0x15, 0x65, 0x78, 0x74, 0x65,
0x72, 0x6e, 0x61, 0x6c, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x50, 0x6f, 0x6c, 0x69, 0x63,
0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61,
0x6c, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x30,
0x0a, 0x13, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4e, 0x6f, 0x64,
0x65, 0x50, 0x6f, 0x72, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x13, 0x68, 0x65, 0x61,
0x6c, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4e, 0x6f, 0x64, 0x65, 0x50, 0x6f, 0x72, 0x74,
0x12, 0x3a, 0x0a, 0x18, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4e, 0x6f, 0x74, 0x52, 0x65,
0x61, 0x64, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x01,
0x28, 0x08, 0x52, 0x18, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4e, 0x6f, 0x74, 0x52, 0x65,
0x61, 0x64, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x64, 0x0a, 0x15,
0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x41, 0x66, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79, 0x43,
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x69, 0x73,
0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61,
0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x41, 0x66, 0x66,
0x69, 0x6e, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x15, 0x73, 0x65, 0x73,
0x73, 0x69, 0x6f, 0x6e, 0x41, 0x66, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66,
0x69, 0x67, 0x12, 0x2c, 0x0a, 0x11, 0x6c, 0x6f, 0x61, 0x64, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63,
0x65, 0x72, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x6c,
0x6f, 0x61, 0x64, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x72, 0x43, 0x6c, 0x61, 0x73, 0x73,
0x1a, 0x3b, 0x0a, 0x0d, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x45, 0x6e, 0x74, 0x72,
0x79, 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, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xd5, 0x01,
0x0a, 0x0b, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x12, 0x0a,
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x02, 0x20,
0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x12, 0x0a,
0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x6f, 0x72,
0x74, 0x12, 0x44, 0x0a, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50, 0x6f, 0x72, 0x74, 0x18,
0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70,
0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
0x49, 0x6e, 0x74, 0x4f, 0x72, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x0a, 0x74, 0x61, 0x72,
0x67, 0x65, 0x74, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x6f, 0x64, 0x65, 0x50,
0x6f, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6e, 0x6f, 0x64, 0x65, 0x50,
0x6f, 0x72, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x70, 0x70, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63,
0x6f, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x70, 0x70, 0x50, 0x72, 0x6f,
0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x22, 0x5c, 0x0a, 0x15, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e,
0x41, 0x66, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x43,
0x0a, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x50, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x27, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f,
0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x6c, 0x69, 0x65, 0x6e,
0x74, 0x49, 0x50, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e,
0x74, 0x49, 0x50, 0x22, 0x5f, 0x0a, 0x0f, 0x54, 0x43, 0x50, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74,
0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x38, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x01,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65,
0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49,
0x6e, 0x74, 0x4f, 0x72, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74,
0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
0x68, 0x6f, 0x73, 0x74, 0x22, 0x96, 0x01, 0x0a, 0x0a, 0x54, 0x6f, 0x6c, 0x65, 0x72, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f,
0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f,
0x72, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x66, 0x66, 0x65, 0x63,
0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x12,
0x2c, 0x0a, 0x11, 0x74, 0x6f, 0x6c, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x63,
0x6f, 0x6e, 0x64, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, 0x74, 0x6f, 0x6c, 0x65,
0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0x85, 0x01,
0x0a, 0x17, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x65, 0x64, 0x50, 0x6f, 0x64, 0x41, 0x66, 0x66,
0x69, 0x6e, 0x69, 0x74, 0x79, 0x54, 0x65, 0x72, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x77, 0x65, 0x69,
0x67, 0x68, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x77, 0x65, 0x69, 0x67, 0x68,
0x74, 0x12, 0x52, 0x0a, 0x0f, 0x70, 0x6f, 0x64, 0x41, 0x66, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79,
0x54, 0x65, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x73, 0x74,
0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c,
0x70, 0x68, 0x61, 0x31, 0x2e, 0x50, 0x6f, 0x64, 0x41, 0x66, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79,
0x54, 0x65, 0x72, 0x6d, 0x52, 0x0f, 0x70, 0x6f, 0x64, 0x41, 0x66, 0x66, 0x69, 0x6e, 0x69, 0x74,
0x79, 0x54, 0x65, 0x72, 0x6d, 0x22, 0xaf, 0x04, 0x0a, 0x12, 0x50, 0x6f, 0x64, 0x53, 0x65, 0x63,
0x75, 0x72, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x4f, 0x0a, 0x0e,
0x73, 0x65, 0x4c, 0x69, 0x6e, 0x75, 0x78, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65,
0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53,
0x45, 0x4c, 0x69, 0x6e, 0x75, 0x78, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0e, 0x73,
0x65, 0x4c, 0x69, 0x6e, 0x75, 0x78, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1c, 0x0a,
0x09, 0x72, 0x75, 0x6e, 0x41, 0x73, 0x55, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03,
0x52, 0x09, 0x72, 0x75, 0x6e, 0x41, 0x73, 0x55, 0x73, 0x65, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x72,
0x75, 0x6e, 0x41, 0x73, 0x4e, 0x6f, 0x6e, 0x52, 0x6f, 0x6f, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28,
0x08, 0x52, 0x0c, 0x72, 0x75, 0x6e, 0x41, 0x73, 0x4e, 0x6f, 0x6e, 0x52, 0x6f, 0x6f, 0x74, 0x12,
0x2e, 0x0a, 0x12, 0x73, 0x75, 0x70, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x47,
0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x03, 0x52, 0x12, 0x73, 0x75, 0x70,
0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12,
0x18, 0x0a, 0x07, 0x66, 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03,
0x52, 0x07, 0x66, 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x75, 0x6e,
0x41, 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x72,
0x75, 0x6e, 0x41, 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x39, 0x0a, 0x07, 0x73, 0x79, 0x73,
0x63, 0x74, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x69, 0x73, 0x74,
0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c,
0x70, 0x68, 0x61, 0x31, 0x2e, 0x53, 0x79, 0x73, 0x63, 0x74, 0x6c, 0x52, 0x07, 0x73, 0x79, 0x73,
0x63, 0x74, 0x6c, 0x73, 0x12, 0x5e, 0x0a, 0x0e, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x73, 0x4f,
0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x69,
0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x76, 0x31,
0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x73, 0x53, 0x65,
0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x4f, 0x70, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0e, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x73, 0x4f, 0x70, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x12, 0x30, 0x0a, 0x13, 0x66, 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x43,
0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28,
0x09, 0x52, 0x13, 0x66, 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65,
0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x4f, 0x0a, 0x0e, 0x73, 0x65, 0x63, 0x63, 0x6f, 0x6d,
0x70, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27,
0x2e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2e,
0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x63, 0x63, 0x6f, 0x6d, 0x70,
0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x0e, 0x73, 0x65, 0x63, 0x63, 0x6f, 0x6d, 0x70,
0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x22, 0x62, 0x0a, 0x0e, 0x53, 0x45, 0x4c, 0x69, 0x6e,
0x75, 0x78, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65,
0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x12, 0x0a,
0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x6f, 0x6c,
0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x04,
0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0x32, 0x0a, 0x06, 0x53,
0x79, 0x73, 0x63, 0x74, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c,
0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22,
0xad, 0x01, 0x0a, 0x1d, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x73, 0x53, 0x65, 0x63, 0x75, 0x72,
0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x12, 0x36, 0x0a, 0x16, 0x67, 0x6d, 0x73, 0x61, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74,
0x69, 0x61, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x52, 0x16, 0x67, 0x6d, 0x73, 0x61, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61,
0x6c, 0x53, 0x70, 0x65, 0x63, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x12, 0x67, 0x6d, 0x73,
0x61, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x18,
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x67, 0x6d, 0x73, 0x61, 0x43, 0x72, 0x65, 0x64, 0x65,
0x6e, 0x74, 0x69, 0x61, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x12, 0x24, 0x0a, 0x0d, 0x72, 0x75, 0x6e,
0x41, 0x73, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
0x52, 0x0d, 0x72, 0x75, 0x6e, 0x41, 0x73, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22,
0x50, 0x0a, 0x0e, 0x53, 0x65, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c,
0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x68, 0x6f,
0x73, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
0x10, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x68, 0x6f, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c,
0x65, 0x22, 0x8c, 0x01, 0x0a, 0x0b, 0x49, 0x6e, 0x74, 0x4f, 0x72, 0x53, 0x74, 0x72, 0x69, 0x6e,
0x67, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52,
0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x33, 0x0a, 0x06, 0x69, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x18,
0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c,
0x75, 0x65, 0x52, 0x06, 0x69, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x12, 0x34, 0x0a, 0x06, 0x73, 0x74,
0x72, 0x56, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72,
0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x73, 0x74, 0x72, 0x56, 0x61, 0x6c,
0x42, 0x20, 0x5a, 0x1e, 0x69, 0x73, 0x74, 0x69, 0x6f, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69,
0x2f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_operator_v1alpha1_operator_proto_rawDescOnce sync.Once
file_operator_v1alpha1_operator_proto_rawDescData = file_operator_v1alpha1_operator_proto_rawDesc
)
func file_operator_v1alpha1_operator_proto_rawDescGZIP() []byte {
file_operator_v1alpha1_operator_proto_rawDescOnce.Do(func() {
file_operator_v1alpha1_operator_proto_rawDescData = protoimpl.X.CompressGZIP(file_operator_v1alpha1_operator_proto_rawDescData)
})
return file_operator_v1alpha1_operator_proto_rawDescData
}
var file_operator_v1alpha1_operator_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_operator_v1alpha1_operator_proto_msgTypes = make([]protoimpl.MessageInfo, 78)
var file_operator_v1alpha1_operator_proto_goTypes = []any{
(InstallStatus_Status)(0), // 0: istio.operator.v1alpha1.InstallStatus.Status
(*IstioOperatorSpec)(nil), // 1: istio.operator.v1alpha1.IstioOperatorSpec
(*InstallStatus)(nil), // 2: istio.operator.v1alpha1.InstallStatus
(*IstioComponentSetSpec)(nil), // 3: istio.operator.v1alpha1.IstioComponentSetSpec
(*BaseComponentSpec)(nil), // 4: istio.operator.v1alpha1.BaseComponentSpec
(*ComponentSpec)(nil), // 5: istio.operator.v1alpha1.ComponentSpec
(*ExternalComponentSpec)(nil), // 6: istio.operator.v1alpha1.ExternalComponentSpec
(*GatewaySpec)(nil), // 7: istio.operator.v1alpha1.GatewaySpec
(*KubernetesResourcesSpec)(nil), // 8: istio.operator.v1alpha1.KubernetesResourcesSpec
(*K8SObjectOverlay)(nil), // 9: istio.operator.v1alpha1.K8sObjectOverlay
(*Affinity)(nil), // 10: istio.operator.v1alpha1.Affinity
(*ConfigMapKeySelector)(nil), // 11: istio.operator.v1alpha1.ConfigMapKeySelector
(*ContainerResourceMetricSource)(nil), // 12: istio.operator.v1alpha1.ContainerResourceMetricSource
(*ContainerResourceMetricStatus)(nil), // 13: istio.operator.v1alpha1.ContainerResourceMetricStatus
(*ClientIPConfig)(nil), // 14: istio.operator.v1alpha1.ClientIPConfig
(*CrossVersionObjectReference)(nil), // 15: istio.operator.v1alpha1.CrossVersionObjectReference
(*DeploymentStrategy)(nil), // 16: istio.operator.v1alpha1.DeploymentStrategy
(*EnvVar)(nil), // 17: istio.operator.v1alpha1.EnvVar
(*EnvVarSource)(nil), // 18: istio.operator.v1alpha1.EnvVarSource
(*ExecAction)(nil), // 19: istio.operator.v1alpha1.ExecAction
(*ExternalMetricSource)(nil), // 20: istio.operator.v1alpha1.ExternalMetricSource
(*ExternalMetricStatus)(nil), // 21: istio.operator.v1alpha1.ExternalMetricStatus
(*HTTPGetAction)(nil), // 22: istio.operator.v1alpha1.HTTPGetAction
(*HTTPHeader)(nil), // 23: istio.operator.v1alpha1.HTTPHeader
(*HorizontalPodAutoscalerSpec)(nil), // 24: istio.operator.v1alpha1.HorizontalPodAutoscalerSpec
(*HorizontalPodAutoScalerBehavior)(nil), // 25: istio.operator.v1alpha1.HorizontalPodAutoScalerBehavior
(*HPAScalingRules)(nil), // 26: istio.operator.v1alpha1.HPAScalingRules
(*HPAScalingPolicy)(nil), // 27: istio.operator.v1alpha1.HPAScalingPolicy
(*LocalObjectReference)(nil), // 28: istio.operator.v1alpha1.LocalObjectReference
(*MetricIdentifier)(nil), // 29: istio.operator.v1alpha1.MetricIdentifier
(*MetricSpec)(nil), // 30: istio.operator.v1alpha1.MetricSpec
(*MetricStatus)(nil), // 31: istio.operator.v1alpha1.MetricStatus
(*MetricTarget)(nil), // 32: istio.operator.v1alpha1.MetricTarget
(*MetricValueStatus)(nil), // 33: istio.operator.v1alpha1.MetricValueStatus
(*NodeAffinity)(nil), // 34: istio.operator.v1alpha1.NodeAffinity
(*NodeSelector)(nil), // 35: istio.operator.v1alpha1.NodeSelector
(*NodeSelectorTerm)(nil), // 36: istio.operator.v1alpha1.NodeSelectorTerm
(*NodeSelectorRequirement)(nil), // 37: istio.operator.v1alpha1.NodeSelectorRequirement
(*ObjectFieldSelector)(nil), // 38: istio.operator.v1alpha1.ObjectFieldSelector
(*ObjectMeta)(nil), // 39: istio.operator.v1alpha1.ObjectMeta
(*ObjectMetricSource)(nil), // 40: istio.operator.v1alpha1.ObjectMetricSource
(*ObjectMetricStatus)(nil), // 41: istio.operator.v1alpha1.ObjectMetricStatus
(*PodAffinity)(nil), // 42: istio.operator.v1alpha1.PodAffinity
(*PodAntiAffinity)(nil), // 43: istio.operator.v1alpha1.PodAntiAffinity
(*PodAffinityTerm)(nil), // 44: istio.operator.v1alpha1.PodAffinityTerm
(*PodDisruptionBudgetSpec)(nil), // 45: istio.operator.v1alpha1.PodDisruptionBudgetSpec
(*PodsMetricSource)(nil), // 46: istio.operator.v1alpha1.PodsMetricSource
(*PodsMetricStatus)(nil), // 47: istio.operator.v1alpha1.PodsMetricStatus
(*PreferredSchedulingTerm)(nil), // 48: istio.operator.v1alpha1.PreferredSchedulingTerm
(*ReadinessProbe)(nil), // 49: istio.operator.v1alpha1.ReadinessProbe
(*ResourceFieldSelector)(nil), // 50: istio.operator.v1alpha1.ResourceFieldSelector
(*ResourceMetricSource)(nil), // 51: istio.operator.v1alpha1.ResourceMetricSource
(*ResourceMetricStatus)(nil), // 52: istio.operator.v1alpha1.ResourceMetricStatus
(*Resources)(nil), // 53: istio.operator.v1alpha1.Resources
(*RollingUpdateDeployment)(nil), // 54: istio.operator.v1alpha1.RollingUpdateDeployment
(*SecretKeySelector)(nil), // 55: istio.operator.v1alpha1.SecretKeySelector
(*ServiceSpec)(nil), // 56: istio.operator.v1alpha1.ServiceSpec
(*ServicePort)(nil), // 57: istio.operator.v1alpha1.ServicePort
(*SessionAffinityConfig)(nil), // 58: istio.operator.v1alpha1.SessionAffinityConfig
(*TCPSocketAction)(nil), // 59: istio.operator.v1alpha1.TCPSocketAction
(*Toleration)(nil), // 60: istio.operator.v1alpha1.Toleration
(*WeightedPodAffinityTerm)(nil), // 61: istio.operator.v1alpha1.WeightedPodAffinityTerm
(*PodSecurityContext)(nil), // 62: istio.operator.v1alpha1.PodSecurityContext
(*SELinuxOptions)(nil), // 63: istio.operator.v1alpha1.SELinuxOptions
(*Sysctl)(nil), // 64: istio.operator.v1alpha1.Sysctl
(*WindowsSecurityContextOptions)(nil), // 65: istio.operator.v1alpha1.WindowsSecurityContextOptions
(*SeccompProfile)(nil), // 66: istio.operator.v1alpha1.SeccompProfile
(*IntOrString)(nil), // 67: istio.operator.v1alpha1.IntOrString
nil, // 68: istio.operator.v1alpha1.IstioOperatorSpec.AddonComponentsEntry
(*InstallStatus_VersionStatus)(nil), // 69: istio.operator.v1alpha1.InstallStatus.VersionStatus
nil, // 70: istio.operator.v1alpha1.InstallStatus.ComponentStatusEntry
nil, // 71: istio.operator.v1alpha1.GatewaySpec.LabelEntry
nil, // 72: istio.operator.v1alpha1.KubernetesResourcesSpec.NodeSelectorEntry
nil, // 73: istio.operator.v1alpha1.KubernetesResourcesSpec.PodAnnotationsEntry
nil, // 74: istio.operator.v1alpha1.KubernetesResourcesSpec.ServiceAnnotationsEntry
(*K8SObjectOverlay_PathValue)(nil), // 75: istio.operator.v1alpha1.K8sObjectOverlay.PathValue
nil, // 76: istio.operator.v1alpha1.Resources.LimitsEntry
nil, // 77: istio.operator.v1alpha1.Resources.RequestsEntry
nil, // 78: istio.operator.v1alpha1.ServiceSpec.SelectorEntry
(*_struct.Value)(nil), // 79: google.protobuf.Value
(*_struct.Struct)(nil), // 80: google.protobuf.Struct
(*wrappers.BoolValue)(nil), // 81: google.protobuf.BoolValue
(*any1.Any)(nil), // 82: google.protobuf.Any
(*v1.Volume)(nil), // 83: k8s.io.api.core.v1.Volume
(*v1.VolumeMount)(nil), // 84: k8s.io.api.core.v1.VolumeMount
(*v11.LabelSelector)(nil), // 85: k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector
(*wrappers.Int32Value)(nil), // 86: google.protobuf.Int32Value
(*wrappers.StringValue)(nil), // 87: google.protobuf.StringValue
}
var file_operator_v1alpha1_operator_proto_depIdxs = []int32{
79, // 0: istio.operator.v1alpha1.IstioOperatorSpec.tag:type_name -> google.protobuf.Value
80, // 1: istio.operator.v1alpha1.IstioOperatorSpec.meshConfig:type_name -> google.protobuf.Struct
3, // 2: istio.operator.v1alpha1.IstioOperatorSpec.components:type_name -> istio.operator.v1alpha1.IstioComponentSetSpec
68, // 3: istio.operator.v1alpha1.IstioOperatorSpec.addonComponents:type_name -> istio.operator.v1alpha1.IstioOperatorSpec.AddonComponentsEntry
80, // 4: istio.operator.v1alpha1.IstioOperatorSpec.values:type_name -> google.protobuf.Struct
80, // 5: istio.operator.v1alpha1.IstioOperatorSpec.unvalidatedValues:type_name -> google.protobuf.Struct
0, // 6: istio.operator.v1alpha1.InstallStatus.status:type_name -> istio.operator.v1alpha1.InstallStatus.Status
70, // 7: istio.operator.v1alpha1.InstallStatus.componentStatus:type_name -> istio.operator.v1alpha1.InstallStatus.ComponentStatusEntry
4, // 8: istio.operator.v1alpha1.IstioComponentSetSpec.base:type_name -> istio.operator.v1alpha1.BaseComponentSpec
5, // 9: istio.operator.v1alpha1.IstioComponentSetSpec.pilot:type_name -> istio.operator.v1alpha1.ComponentSpec
5, // 10: istio.operator.v1alpha1.IstioComponentSetSpec.cni:type_name -> istio.operator.v1alpha1.ComponentSpec
5, // 11: istio.operator.v1alpha1.IstioComponentSetSpec.ztunnel:type_name -> istio.operator.v1alpha1.ComponentSpec
5, // 12: istio.operator.v1alpha1.IstioComponentSetSpec.istiodRemote:type_name -> istio.operator.v1alpha1.ComponentSpec
7, // 13: istio.operator.v1alpha1.IstioComponentSetSpec.ingressGateways:type_name -> istio.operator.v1alpha1.GatewaySpec
7, // 14: istio.operator.v1alpha1.IstioComponentSetSpec.egressGateways:type_name -> istio.operator.v1alpha1.GatewaySpec
81, // 15: istio.operator.v1alpha1.BaseComponentSpec.enabled:type_name -> google.protobuf.BoolValue
8, // 16: istio.operator.v1alpha1.BaseComponentSpec.k8s:type_name -> istio.operator.v1alpha1.KubernetesResourcesSpec
81, // 17: istio.operator.v1alpha1.ComponentSpec.enabled:type_name -> google.protobuf.BoolValue
79, // 18: istio.operator.v1alpha1.ComponentSpec.tag:type_name -> google.protobuf.Value
80, // 19: istio.operator.v1alpha1.ComponentSpec.spec:type_name -> google.protobuf.Struct
8, // 20: istio.operator.v1alpha1.ComponentSpec.k8s:type_name -> istio.operator.v1alpha1.KubernetesResourcesSpec
81, // 21: istio.operator.v1alpha1.ExternalComponentSpec.enabled:type_name -> google.protobuf.BoolValue
80, // 22: istio.operator.v1alpha1.ExternalComponentSpec.spec:type_name -> google.protobuf.Struct
82, // 23: istio.operator.v1alpha1.ExternalComponentSpec.schema:type_name -> google.protobuf.Any
8, // 24: istio.operator.v1alpha1.ExternalComponentSpec.k8s:type_name -> istio.operator.v1alpha1.KubernetesResourcesSpec
81, // 25: istio.operator.v1alpha1.GatewaySpec.enabled:type_name -> google.protobuf.BoolValue
71, // 26: istio.operator.v1alpha1.GatewaySpec.label:type_name -> istio.operator.v1alpha1.GatewaySpec.LabelEntry
79, // 27: istio.operator.v1alpha1.GatewaySpec.tag:type_name -> google.protobuf.Value
8, // 28: istio.operator.v1alpha1.GatewaySpec.k8s:type_name -> istio.operator.v1alpha1.KubernetesResourcesSpec
10, // 29: istio.operator.v1alpha1.KubernetesResourcesSpec.affinity:type_name -> istio.operator.v1alpha1.Affinity
17, // 30: istio.operator.v1alpha1.KubernetesResourcesSpec.env:type_name -> istio.operator.v1alpha1.EnvVar
24, // 31: istio.operator.v1alpha1.KubernetesResourcesSpec.hpaSpec:type_name -> istio.operator.v1alpha1.HorizontalPodAutoscalerSpec
72, // 32: istio.operator.v1alpha1.KubernetesResourcesSpec.nodeSelector:type_name -> istio.operator.v1alpha1.KubernetesResourcesSpec.NodeSelectorEntry
45, // 33: istio.operator.v1alpha1.KubernetesResourcesSpec.podDisruptionBudget:type_name -> istio.operator.v1alpha1.PodDisruptionBudgetSpec
73, // 34: istio.operator.v1alpha1.KubernetesResourcesSpec.podAnnotations:type_name -> istio.operator.v1alpha1.KubernetesResourcesSpec.PodAnnotationsEntry
49, // 35: istio.operator.v1alpha1.KubernetesResourcesSpec.readinessProbe:type_name -> istio.operator.v1alpha1.ReadinessProbe
53, // 36: istio.operator.v1alpha1.KubernetesResourcesSpec.resources:type_name -> istio.operator.v1alpha1.Resources
56, // 37: istio.operator.v1alpha1.KubernetesResourcesSpec.service:type_name -> istio.operator.v1alpha1.ServiceSpec
16, // 38: istio.operator.v1alpha1.KubernetesResourcesSpec.strategy:type_name -> istio.operator.v1alpha1.DeploymentStrategy
60, // 39: istio.operator.v1alpha1.KubernetesResourcesSpec.tolerations:type_name -> istio.operator.v1alpha1.Toleration
74, // 40: istio.operator.v1alpha1.KubernetesResourcesSpec.serviceAnnotations:type_name -> istio.operator.v1alpha1.KubernetesResourcesSpec.ServiceAnnotationsEntry
62, // 41: istio.operator.v1alpha1.KubernetesResourcesSpec.securityContext:type_name -> istio.operator.v1alpha1.PodSecurityContext
83, // 42: istio.operator.v1alpha1.KubernetesResourcesSpec.volumes:type_name -> k8s.io.api.core.v1.Volume
84, // 43: istio.operator.v1alpha1.KubernetesResourcesSpec.volumeMounts:type_name -> k8s.io.api.core.v1.VolumeMount
9, // 44: istio.operator.v1alpha1.KubernetesResourcesSpec.overlays:type_name -> istio.operator.v1alpha1.K8sObjectOverlay
75, // 45: istio.operator.v1alpha1.K8sObjectOverlay.patches:type_name -> istio.operator.v1alpha1.K8sObjectOverlay.PathValue
34, // 46: istio.operator.v1alpha1.Affinity.nodeAffinity:type_name -> istio.operator.v1alpha1.NodeAffinity
42, // 47: istio.operator.v1alpha1.Affinity.podAffinity:type_name -> istio.operator.v1alpha1.PodAffinity
43, // 48: istio.operator.v1alpha1.Affinity.podAntiAffinity:type_name -> istio.operator.v1alpha1.PodAntiAffinity
28, // 49: istio.operator.v1alpha1.ConfigMapKeySelector.localObjectReference:type_name -> istio.operator.v1alpha1.LocalObjectReference
32, // 50: istio.operator.v1alpha1.ContainerResourceMetricSource.target:type_name -> istio.operator.v1alpha1.MetricTarget
33, // 51: istio.operator.v1alpha1.ContainerResourceMetricStatus.current:type_name -> istio.operator.v1alpha1.MetricValueStatus
54, // 52: istio.operator.v1alpha1.DeploymentStrategy.rollingUpdate:type_name -> istio.operator.v1alpha1.RollingUpdateDeployment
18, // 53: istio.operator.v1alpha1.EnvVar.valueFrom:type_name -> istio.operator.v1alpha1.EnvVarSource
38, // 54: istio.operator.v1alpha1.EnvVarSource.fieldRef:type_name -> istio.operator.v1alpha1.ObjectFieldSelector
50, // 55: istio.operator.v1alpha1.EnvVarSource.resourceFieldRef:type_name -> istio.operator.v1alpha1.ResourceFieldSelector
11, // 56: istio.operator.v1alpha1.EnvVarSource.configMapKeyRef:type_name -> istio.operator.v1alpha1.ConfigMapKeySelector
55, // 57: istio.operator.v1alpha1.EnvVarSource.secretKeyRef:type_name -> istio.operator.v1alpha1.SecretKeySelector
85, // 58: istio.operator.v1alpha1.ExternalMetricSource.metricSelector:type_name -> k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector
67, // 59: istio.operator.v1alpha1.ExternalMetricSource.targetValue:type_name -> istio.operator.v1alpha1.IntOrString
67, // 60: istio.operator.v1alpha1.ExternalMetricSource.targetAverageValue:type_name -> istio.operator.v1alpha1.IntOrString
29, // 61: istio.operator.v1alpha1.ExternalMetricSource.metric:type_name -> istio.operator.v1alpha1.MetricIdentifier
32, // 62: istio.operator.v1alpha1.ExternalMetricSource.target:type_name -> istio.operator.v1alpha1.MetricTarget
29, // 63: istio.operator.v1alpha1.ExternalMetricStatus.metric:type_name -> istio.operator.v1alpha1.MetricIdentifier
33, // 64: istio.operator.v1alpha1.ExternalMetricStatus.current:type_name -> istio.operator.v1alpha1.MetricValueStatus
67, // 65: istio.operator.v1alpha1.HTTPGetAction.port:type_name -> istio.operator.v1alpha1.IntOrString
23, // 66: istio.operator.v1alpha1.HTTPGetAction.httpHeaders:type_name -> istio.operator.v1alpha1.HTTPHeader
15, // 67: istio.operator.v1alpha1.HorizontalPodAutoscalerSpec.scaleTargetRef:type_name -> istio.operator.v1alpha1.CrossVersionObjectReference
30, // 68: istio.operator.v1alpha1.HorizontalPodAutoscalerSpec.metrics:type_name -> istio.operator.v1alpha1.MetricSpec
25, // 69: istio.operator.v1alpha1.HorizontalPodAutoscalerSpec.behavior:type_name -> istio.operator.v1alpha1.HorizontalPodAutoScalerBehavior
26, // 70: istio.operator.v1alpha1.HorizontalPodAutoScalerBehavior.scaleUp:type_name -> istio.operator.v1alpha1.HPAScalingRules
26, // 71: istio.operator.v1alpha1.HorizontalPodAutoScalerBehavior.scaleDown:type_name -> istio.operator.v1alpha1.HPAScalingRules
27, // 72: istio.operator.v1alpha1.HPAScalingRules.policies:type_name -> istio.operator.v1alpha1.HPAScalingPolicy
85, // 73: istio.operator.v1alpha1.MetricIdentifier.selector:type_name -> k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector
40, // 74: istio.operator.v1alpha1.MetricSpec.object:type_name -> istio.operator.v1alpha1.ObjectMetricSource
46, // 75: istio.operator.v1alpha1.MetricSpec.pods:type_name -> istio.operator.v1alpha1.PodsMetricSource
51, // 76: istio.operator.v1alpha1.MetricSpec.resource:type_name -> istio.operator.v1alpha1.ResourceMetricSource
12, // 77: istio.operator.v1alpha1.MetricSpec.containerResource:type_name -> istio.operator.v1alpha1.ContainerResourceMetricSource
20, // 78: istio.operator.v1alpha1.MetricSpec.external:type_name -> istio.operator.v1alpha1.ExternalMetricSource
41, // 79: istio.operator.v1alpha1.MetricStatus.object:type_name -> istio.operator.v1alpha1.ObjectMetricStatus
47, // 80: istio.operator.v1alpha1.MetricStatus.pods:type_name -> istio.operator.v1alpha1.PodsMetricStatus
52, // 81: istio.operator.v1alpha1.MetricStatus.resource:type_name -> istio.operator.v1alpha1.ResourceMetricStatus
13, // 82: istio.operator.v1alpha1.MetricStatus.containerResource:type_name -> istio.operator.v1alpha1.ContainerResourceMetricStatus
21, // 83: istio.operator.v1alpha1.MetricStatus.external:type_name -> istio.operator.v1alpha1.ExternalMetricStatus
67, // 84: istio.operator.v1alpha1.MetricTarget.value:type_name -> istio.operator.v1alpha1.IntOrString
67, // 85: istio.operator.v1alpha1.MetricTarget.averageValue:type_name -> istio.operator.v1alpha1.IntOrString
67, // 86: istio.operator.v1alpha1.MetricValueStatus.value:type_name -> istio.operator.v1alpha1.IntOrString
67, // 87: istio.operator.v1alpha1.MetricValueStatus.averageValue:type_name -> istio.operator.v1alpha1.IntOrString
35, // 88: istio.operator.v1alpha1.NodeAffinity.requiredDuringSchedulingIgnoredDuringExecution:type_name -> istio.operator.v1alpha1.NodeSelector
48, // 89: istio.operator.v1alpha1.NodeAffinity.preferredDuringSchedulingIgnoredDuringExecution:type_name -> istio.operator.v1alpha1.PreferredSchedulingTerm
36, // 90: istio.operator.v1alpha1.NodeSelector.nodeSelectorTerms:type_name -> istio.operator.v1alpha1.NodeSelectorTerm
37, // 91: istio.operator.v1alpha1.NodeSelectorTerm.matchExpressions:type_name -> istio.operator.v1alpha1.NodeSelectorRequirement
37, // 92: istio.operator.v1alpha1.NodeSelectorTerm.matchFields:type_name -> istio.operator.v1alpha1.NodeSelectorRequirement
67, // 93: istio.operator.v1alpha1.ObjectMetricSource.targetValue:type_name -> istio.operator.v1alpha1.IntOrString
85, // 94: istio.operator.v1alpha1.ObjectMetricSource.selector:type_name -> k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector
67, // 95: istio.operator.v1alpha1.ObjectMetricSource.averageValue:type_name -> istio.operator.v1alpha1.IntOrString
79, // 96: istio.operator.v1alpha1.ObjectMetricSource.target:type_name -> google.protobuf.Value
15, // 97: istio.operator.v1alpha1.ObjectMetricSource.describedObject:type_name -> istio.operator.v1alpha1.CrossVersionObjectReference
29, // 98: istio.operator.v1alpha1.ObjectMetricSource.metric:type_name -> istio.operator.v1alpha1.MetricIdentifier
29, // 99: istio.operator.v1alpha1.ObjectMetricStatus.metric:type_name -> istio.operator.v1alpha1.MetricIdentifier
33, // 100: istio.operator.v1alpha1.ObjectMetricStatus.current:type_name -> istio.operator.v1alpha1.MetricValueStatus
15, // 101: istio.operator.v1alpha1.ObjectMetricStatus.describedObject:type_name -> istio.operator.v1alpha1.CrossVersionObjectReference
44, // 102: istio.operator.v1alpha1.PodAffinity.requiredDuringSchedulingIgnoredDuringExecution:type_name -> istio.operator.v1alpha1.PodAffinityTerm
61, // 103: istio.operator.v1alpha1.PodAffinity.preferredDuringSchedulingIgnoredDuringExecution:type_name -> istio.operator.v1alpha1.WeightedPodAffinityTerm
44, // 104: istio.operator.v1alpha1.PodAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution:type_name -> istio.operator.v1alpha1.PodAffinityTerm
61, // 105: istio.operator.v1alpha1.PodAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution:type_name -> istio.operator.v1alpha1.WeightedPodAffinityTerm
85, // 106: istio.operator.v1alpha1.PodAffinityTerm.labelSelector:type_name -> k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector
67, // 107: istio.operator.v1alpha1.PodDisruptionBudgetSpec.minAvailable:type_name -> istio.operator.v1alpha1.IntOrString
85, // 108: istio.operator.v1alpha1.PodDisruptionBudgetSpec.selector:type_name -> k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector
67, // 109: istio.operator.v1alpha1.PodDisruptionBudgetSpec.maxUnavailable:type_name -> istio.operator.v1alpha1.IntOrString
67, // 110: istio.operator.v1alpha1.PodsMetricSource.targetAverageValue:type_name -> istio.operator.v1alpha1.IntOrString
85, // 111: istio.operator.v1alpha1.PodsMetricSource.selector:type_name -> k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector
29, // 112: istio.operator.v1alpha1.PodsMetricSource.metric:type_name -> istio.operator.v1alpha1.MetricIdentifier
32, // 113: istio.operator.v1alpha1.PodsMetricSource.target:type_name -> istio.operator.v1alpha1.MetricTarget
29, // 114: istio.operator.v1alpha1.PodsMetricStatus.metric:type_name -> istio.operator.v1alpha1.MetricIdentifier
33, // 115: istio.operator.v1alpha1.PodsMetricStatus.current:type_name -> istio.operator.v1alpha1.MetricValueStatus
36, // 116: istio.operator.v1alpha1.PreferredSchedulingTerm.preference:type_name -> istio.operator.v1alpha1.NodeSelectorTerm
19, // 117: istio.operator.v1alpha1.ReadinessProbe.exec:type_name -> istio.operator.v1alpha1.ExecAction
22, // 118: istio.operator.v1alpha1.ReadinessProbe.httpGet:type_name -> istio.operator.v1alpha1.HTTPGetAction
59, // 119: istio.operator.v1alpha1.ReadinessProbe.tcpSocket:type_name -> istio.operator.v1alpha1.TCPSocketAction
67, // 120: istio.operator.v1alpha1.ResourceFieldSelector.divisor:type_name -> istio.operator.v1alpha1.IntOrString
67, // 121: istio.operator.v1alpha1.ResourceMetricSource.targetAverageValue:type_name -> istio.operator.v1alpha1.IntOrString
32, // 122: istio.operator.v1alpha1.ResourceMetricSource.target:type_name -> istio.operator.v1alpha1.MetricTarget
33, // 123: istio.operator.v1alpha1.ResourceMetricStatus.current:type_name -> istio.operator.v1alpha1.MetricValueStatus
76, // 124: istio.operator.v1alpha1.Resources.limits:type_name -> istio.operator.v1alpha1.Resources.LimitsEntry
77, // 125: istio.operator.v1alpha1.Resources.requests:type_name -> istio.operator.v1alpha1.Resources.RequestsEntry
67, // 126: istio.operator.v1alpha1.RollingUpdateDeployment.maxUnavailable:type_name -> istio.operator.v1alpha1.IntOrString
67, // 127: istio.operator.v1alpha1.RollingUpdateDeployment.maxSurge:type_name -> istio.operator.v1alpha1.IntOrString
28, // 128: istio.operator.v1alpha1.SecretKeySelector.localObjectReference:type_name -> istio.operator.v1alpha1.LocalObjectReference
57, // 129: istio.operator.v1alpha1.ServiceSpec.ports:type_name -> istio.operator.v1alpha1.ServicePort
78, // 130: istio.operator.v1alpha1.ServiceSpec.selector:type_name -> istio.operator.v1alpha1.ServiceSpec.SelectorEntry
58, // 131: istio.operator.v1alpha1.ServiceSpec.sessionAffinityConfig:type_name -> istio.operator.v1alpha1.SessionAffinityConfig
67, // 132: istio.operator.v1alpha1.ServicePort.targetPort:type_name -> istio.operator.v1alpha1.IntOrString
14, // 133: istio.operator.v1alpha1.SessionAffinityConfig.clientIP:type_name -> istio.operator.v1alpha1.ClientIPConfig
67, // 134: istio.operator.v1alpha1.TCPSocketAction.port:type_name -> istio.operator.v1alpha1.IntOrString
44, // 135: istio.operator.v1alpha1.WeightedPodAffinityTerm.podAffinityTerm:type_name -> istio.operator.v1alpha1.PodAffinityTerm
63, // 136: istio.operator.v1alpha1.PodSecurityContext.seLinuxOptions:type_name -> istio.operator.v1alpha1.SELinuxOptions
64, // 137: istio.operator.v1alpha1.PodSecurityContext.sysctls:type_name -> istio.operator.v1alpha1.Sysctl
65, // 138: istio.operator.v1alpha1.PodSecurityContext.windowsOptions:type_name -> istio.operator.v1alpha1.WindowsSecurityContextOptions
66, // 139: istio.operator.v1alpha1.PodSecurityContext.seccompProfile:type_name -> istio.operator.v1alpha1.SeccompProfile
86, // 140: istio.operator.v1alpha1.IntOrString.intVal:type_name -> google.protobuf.Int32Value
87, // 141: istio.operator.v1alpha1.IntOrString.strVal:type_name -> google.protobuf.StringValue
6, // 142: istio.operator.v1alpha1.IstioOperatorSpec.AddonComponentsEntry.value:type_name -> istio.operator.v1alpha1.ExternalComponentSpec
0, // 143: istio.operator.v1alpha1.InstallStatus.VersionStatus.status:type_name -> istio.operator.v1alpha1.InstallStatus.Status
69, // 144: istio.operator.v1alpha1.InstallStatus.ComponentStatusEntry.value:type_name -> istio.operator.v1alpha1.InstallStatus.VersionStatus
79, // 145: istio.operator.v1alpha1.K8sObjectOverlay.PathValue.value:type_name -> google.protobuf.Value
146, // [146:146] is the sub-list for method output_type
146, // [146:146] is the sub-list for method input_type
146, // [146:146] is the sub-list for extension type_name
146, // [146:146] is the sub-list for extension extendee
0, // [0:146] is the sub-list for field type_name
}
func init() { file_operator_v1alpha1_operator_proto_init() }
func file_operator_v1alpha1_operator_proto_init() {
if File_operator_v1alpha1_operator_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_operator_v1alpha1_operator_proto_msgTypes[0].Exporter = func(v any, i int) any {
switch v := v.(*IstioOperatorSpec); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[1].Exporter = func(v any, i int) any {
switch v := v.(*InstallStatus); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[2].Exporter = func(v any, i int) any {
switch v := v.(*IstioComponentSetSpec); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[3].Exporter = func(v any, i int) any {
switch v := v.(*BaseComponentSpec); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[4].Exporter = func(v any, i int) any {
switch v := v.(*ComponentSpec); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[5].Exporter = func(v any, i int) any {
switch v := v.(*ExternalComponentSpec); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[6].Exporter = func(v any, i int) any {
switch v := v.(*GatewaySpec); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[7].Exporter = func(v any, i int) any {
switch v := v.(*KubernetesResourcesSpec); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[8].Exporter = func(v any, i int) any {
switch v := v.(*K8SObjectOverlay); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[9].Exporter = func(v any, i int) any {
switch v := v.(*Affinity); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[10].Exporter = func(v any, i int) any {
switch v := v.(*ConfigMapKeySelector); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[11].Exporter = func(v any, i int) any {
switch v := v.(*ContainerResourceMetricSource); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[12].Exporter = func(v any, i int) any {
switch v := v.(*ContainerResourceMetricStatus); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[13].Exporter = func(v any, i int) any {
switch v := v.(*ClientIPConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[14].Exporter = func(v any, i int) any {
switch v := v.(*CrossVersionObjectReference); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[15].Exporter = func(v any, i int) any {
switch v := v.(*DeploymentStrategy); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[16].Exporter = func(v any, i int) any {
switch v := v.(*EnvVar); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[17].Exporter = func(v any, i int) any {
switch v := v.(*EnvVarSource); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[18].Exporter = func(v any, i int) any {
switch v := v.(*ExecAction); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[19].Exporter = func(v any, i int) any {
switch v := v.(*ExternalMetricSource); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[20].Exporter = func(v any, i int) any {
switch v := v.(*ExternalMetricStatus); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[21].Exporter = func(v any, i int) any {
switch v := v.(*HTTPGetAction); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[22].Exporter = func(v any, i int) any {
switch v := v.(*HTTPHeader); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[23].Exporter = func(v any, i int) any {
switch v := v.(*HorizontalPodAutoscalerSpec); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[24].Exporter = func(v any, i int) any {
switch v := v.(*HorizontalPodAutoScalerBehavior); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[25].Exporter = func(v any, i int) any {
switch v := v.(*HPAScalingRules); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[26].Exporter = func(v any, i int) any {
switch v := v.(*HPAScalingPolicy); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[27].Exporter = func(v any, i int) any {
switch v := v.(*LocalObjectReference); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[28].Exporter = func(v any, i int) any {
switch v := v.(*MetricIdentifier); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[29].Exporter = func(v any, i int) any {
switch v := v.(*MetricSpec); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[30].Exporter = func(v any, i int) any {
switch v := v.(*MetricStatus); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[31].Exporter = func(v any, i int) any {
switch v := v.(*MetricTarget); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[32].Exporter = func(v any, i int) any {
switch v := v.(*MetricValueStatus); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[33].Exporter = func(v any, i int) any {
switch v := v.(*NodeAffinity); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[34].Exporter = func(v any, i int) any {
switch v := v.(*NodeSelector); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[35].Exporter = func(v any, i int) any {
switch v := v.(*NodeSelectorTerm); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[36].Exporter = func(v any, i int) any {
switch v := v.(*NodeSelectorRequirement); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[37].Exporter = func(v any, i int) any {
switch v := v.(*ObjectFieldSelector); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[38].Exporter = func(v any, i int) any {
switch v := v.(*ObjectMeta); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[39].Exporter = func(v any, i int) any {
switch v := v.(*ObjectMetricSource); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[40].Exporter = func(v any, i int) any {
switch v := v.(*ObjectMetricStatus); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[41].Exporter = func(v any, i int) any {
switch v := v.(*PodAffinity); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[42].Exporter = func(v any, i int) any {
switch v := v.(*PodAntiAffinity); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[43].Exporter = func(v any, i int) any {
switch v := v.(*PodAffinityTerm); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[44].Exporter = func(v any, i int) any {
switch v := v.(*PodDisruptionBudgetSpec); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[45].Exporter = func(v any, i int) any {
switch v := v.(*PodsMetricSource); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[46].Exporter = func(v any, i int) any {
switch v := v.(*PodsMetricStatus); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[47].Exporter = func(v any, i int) any {
switch v := v.(*PreferredSchedulingTerm); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[48].Exporter = func(v any, i int) any {
switch v := v.(*ReadinessProbe); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[49].Exporter = func(v any, i int) any {
switch v := v.(*ResourceFieldSelector); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[50].Exporter = func(v any, i int) any {
switch v := v.(*ResourceMetricSource); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[51].Exporter = func(v any, i int) any {
switch v := v.(*ResourceMetricStatus); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[52].Exporter = func(v any, i int) any {
switch v := v.(*Resources); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[53].Exporter = func(v any, i int) any {
switch v := v.(*RollingUpdateDeployment); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[54].Exporter = func(v any, i int) any {
switch v := v.(*SecretKeySelector); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[55].Exporter = func(v any, i int) any {
switch v := v.(*ServiceSpec); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[56].Exporter = func(v any, i int) any {
switch v := v.(*ServicePort); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[57].Exporter = func(v any, i int) any {
switch v := v.(*SessionAffinityConfig); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[58].Exporter = func(v any, i int) any {
switch v := v.(*TCPSocketAction); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[59].Exporter = func(v any, i int) any {
switch v := v.(*Toleration); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[60].Exporter = func(v any, i int) any {
switch v := v.(*WeightedPodAffinityTerm); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[61].Exporter = func(v any, i int) any {
switch v := v.(*PodSecurityContext); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[62].Exporter = func(v any, i int) any {
switch v := v.(*SELinuxOptions); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[63].Exporter = func(v any, i int) any {
switch v := v.(*Sysctl); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[64].Exporter = func(v any, i int) any {
switch v := v.(*WindowsSecurityContextOptions); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[65].Exporter = func(v any, i int) any {
switch v := v.(*SeccompProfile); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[66].Exporter = func(v any, i int) any {
switch v := v.(*IntOrString); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[68].Exporter = func(v any, i int) any {
switch v := v.(*InstallStatus_VersionStatus); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_operator_v1alpha1_operator_proto_msgTypes[74].Exporter = func(v any, i int) any {
switch v := v.(*K8SObjectOverlay_PathValue); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
file_operator_v1alpha1_operator_proto_msgTypes[28].OneofWrappers = []any{}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_operator_v1alpha1_operator_proto_rawDesc,
NumEnums: 1,
NumMessages: 78,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_operator_v1alpha1_operator_proto_goTypes,
DependencyIndexes: file_operator_v1alpha1_operator_proto_depIdxs,
EnumInfos: file_operator_v1alpha1_operator_proto_enumTypes,
MessageInfos: file_operator_v1alpha1_operator_proto_msgTypes,
}.Build()
File_operator_v1alpha1_operator_proto = out.File
file_operator_v1alpha1_operator_proto_rawDesc = nil
file_operator_v1alpha1_operator_proto_goTypes = nil
file_operator_v1alpha1_operator_proto_depIdxs = nil
}