From 6d9b77f7815eccdf9766141215f1814265bfc069 Mon Sep 17 00:00:00 2001 From: Sanju Pal <101255220+SanjuPal01@users.noreply.github.com> Date: Thu, 12 Dec 2024 09:20:15 +0530 Subject: [PATCH 01/18] Sanju/remove pg password from a2 platform file (#8674) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Storing password in secret helper Signed-off-by: “SanjuPal01” * Adding Dex Component Changes Signed-off-by: “SanjuPal01” * Reading password from secret helper in notification-service Signed-off-by: “SanjuPal01” --------- Signed-off-by: “SanjuPal01” --- .../pg_gateway/config_request.pb.a2svc.go | 154 +- api/config/shared/global.go | 26 +- api/config/shared/global.pb.a2svc.go | 120 ++ api/config/shared/global.pb.go | 1387 +++++++++-------- api/config/shared/global.proto | 13 +- api/config/shared/global_test.go | 4 +- .../pkg/server/gather-logs.go | 16 +- .../habitat/config/run_environment.sh | 1 + components/automate-dex/habitat/hooks/run | 1 + .../automate-dex/habitat/templates/config.yml | 2 +- .../notifications-service/habitat/hooks/run | 6 +- .../habitat/templates/pg-env | 2 +- lib/platform/config/config.go | 24 +- 13 files changed, 1082 insertions(+), 674 deletions(-) diff --git a/api/config/pg_gateway/config_request.pb.a2svc.go b/api/config/pg_gateway/config_request.pb.a2svc.go index dbb72362f8f..eead3af5cfc 100644 --- a/api/config/pg_gateway/config_request.pb.a2svc.go +++ b/api/config/pg_gateway/config_request.pb.a2svc.go @@ -4,8 +4,10 @@ package pg_gateway import ( + shared "github.com/chef/automate/api/config/shared" a2conf "github.com/chef/automate/components/automate-grpc/protoc-gen-a2-config/api/a2conf" wrappers "github.com/golang/protobuf/ptypes/wrappers" + wrapperspb "google.golang.org/protobuf/types/known/wrapperspb" ) // ServiceName returns the name of the service this config belongs to @@ -71,15 +73,161 @@ func (m *ConfigRequest) GetPort(name string) (uint16, error) { // ListSecrets lists all the secrets exposed by the config func (m *ConfigRequest) ListSecrets() []a2conf.SecretInfo { - return []a2conf.SecretInfo{} + return []a2conf.SecretInfo{a2conf.SecretInfo{ + EnvironmentVariable: "AUTOMATE_SECRET_PG_SUPERUSER_PASSWORD", + Name: "pg_superuser_password", + }, a2conf.SecretInfo{ + EnvironmentVariable: "AUTOMATE_SECRET_PG_DBUSER_PASSWORD", + Name: "pg_dbuser_password", + }} } // GetSecret gets a secret by name. Returns nil if it is not set func (m *ConfigRequest) GetSecret(name string) *wrappers.StringValue { - return nil + if m == nil { + return nil + } + switch name { + case "pg_superuser_password": + v0 := m.V1 + if v0 == nil { + return nil + } + v1 := v0.Sys + if v1 == nil { + return nil + } + v2 := v1.Service + if v2 == nil { + return nil + } + v3 := v2.ExternalPostgresql + if v3 == nil { + return nil + } + v4 := v3.Auth + if v4 == nil { + return nil + } + v5 := v4.Password + if v5 == nil { + return nil + } + v6 := v5.Superuser + if v6 == nil { + return nil + } + v7 := v6.Password + return v7 + case "pg_dbuser_password": + v0 := m.V1 + if v0 == nil { + return nil + } + v1 := v0.Sys + if v1 == nil { + return nil + } + v2 := v1.Service + if v2 == nil { + return nil + } + v3 := v2.ExternalPostgresql + if v3 == nil { + return nil + } + v4 := v3.Auth + if v4 == nil { + return nil + } + v5 := v4.Password + if v5 == nil { + return nil + } + v6 := v5.Dbuser + if v6 == nil { + return nil + } + v7 := v6.Password + return v7 + default: + return nil + } } // SetSecret sets a secret by name. Returns ErrSecretNotFound if the secret does not exist func (m *ConfigRequest) SetSecret(name string, value *wrappers.StringValue) error { - return a2conf.ErrSecretNotFound + switch name { + case "pg_superuser_password": + v0 := &m.V1 + if *v0 == nil { + *v0 = &ConfigRequest_V1{} + } + v1 := &(*v0).Sys + if *v1 == nil { + *v1 = &ConfigRequest_V1_System{} + } + v2 := &(*v1).Service + if *v2 == nil { + *v2 = &ConfigRequest_V1_System_Service{} + } + v3 := &(*v2).ExternalPostgresql + if *v3 == nil { + *v3 = &shared.External_Postgresql{} + } + v4 := &(*v3).Auth + if *v4 == nil { + *v4 = &shared.External_Postgresql_Authentication{} + } + v5 := &(*v4).Password + if *v5 == nil { + *v5 = &shared.External_Postgresql_Authentication_PasswordAuthentication{} + } + v6 := &(*v5).Superuser + if *v6 == nil { + *v6 = &shared.External_Postgresql_Authentication_PasswordAuthentication_SuperUser{} + } + v7 := &(*v6).Password + if *v7 == nil { + *v7 = &wrapperspb.StringValue{} + } + *v7 = value + case "pg_dbuser_password": + v0 := &m.V1 + if *v0 == nil { + *v0 = &ConfigRequest_V1{} + } + v1 := &(*v0).Sys + if *v1 == nil { + *v1 = &ConfigRequest_V1_System{} + } + v2 := &(*v1).Service + if *v2 == nil { + *v2 = &ConfigRequest_V1_System_Service{} + } + v3 := &(*v2).ExternalPostgresql + if *v3 == nil { + *v3 = &shared.External_Postgresql{} + } + v4 := &(*v3).Auth + if *v4 == nil { + *v4 = &shared.External_Postgresql_Authentication{} + } + v5 := &(*v4).Password + if *v5 == nil { + *v5 = &shared.External_Postgresql_Authentication_PasswordAuthentication{} + } + v6 := &(*v5).Dbuser + if *v6 == nil { + *v6 = &shared.External_Postgresql_Authentication_PasswordAuthentication_DBUser{} + } + v7 := &(*v6).Password + if *v7 == nil { + *v7 = &wrapperspb.StringValue{} + } + *v7 = value + default: + return a2conf.ErrSecretNotFound + } + return nil } diff --git a/api/config/shared/global.go b/api/config/shared/global.go index 9adf550e000..2d8907e3da4 100644 --- a/api/config/shared/global.go +++ b/api/config/shared/global.go @@ -257,7 +257,7 @@ func (c *GlobalConfig) Validate() error { // nolint gocyclo "show", "userconfig.es_password", } - execGetPass := exec.Command(getLatestPlatformToolsPath()+"/bin/secrets-helper", args...) + execGetPass := exec.Command(GetLatestPlatformToolsPath()+"/bin/secrets-helper", args...) getPass, err := execGetPass.Output() if err != nil || string(getPass) == "" { cfgErr.AddMissingKey("global.v1.external.elasticsearch.auth.basic_auth.password") @@ -314,7 +314,7 @@ func (c *GlobalConfig) Validate() error { // nolint gocyclo "show", "userconfig.os_password", } - execGetPass := exec.Command(getLatestPlatformToolsPath()+"/bin/secrets-helper", args...) + execGetPass := exec.Command(GetLatestPlatformToolsPath()+"/bin/secrets-helper", args...) getPass, err := execGetPass.Output() if err != nil || string(getPass) == "" { cfgErr.AddMissingKey("global.v1.external.opensearch.auth.basic_auth.password") @@ -348,7 +348,15 @@ func (c *GlobalConfig) Validate() error { // nolint gocyclo cfgErr.AddMissingKey("global.v1.external.postgresql.auth.password.superuser.username") } if sp == "" { - cfgErr.AddMissingKey("global.v1.external.postgresql.auth.password.superuser.password") + args := []string{ + "show", + "userconfig.pg_superuser_password", + } + execGetPass := exec.Command(GetLatestPlatformToolsPath()+"/bin/secrets-helper", args...) + getPass, err := execGetPass.Output() + if err != nil || string(getPass) == "" { + cfgErr.AddMissingKey("global.v1.external.postgresql.auth.password.superuser.password") + } } // dbuser username and password @@ -358,7 +366,15 @@ func (c *GlobalConfig) Validate() error { // nolint gocyclo cfgErr.AddMissingKey("global.v1.external.postgresql.auth.password.dbuser.username") } if dp == "" { - cfgErr.AddMissingKey("global.v1.external.postgresql.auth.password.dbuser.password") + args := []string{ + "show", + "userconfig.pg_dbuser_password", + } + execGetPass := exec.Command(GetLatestPlatformToolsPath()+"/bin/secrets-helper", args...) + getPass, err := execGetPass.Output() + if err != nil || string(getPass) == "" { + cfgErr.AddMissingKey("global.v1.external.postgresql.auth.password.dbuser.password") + } } } } @@ -448,7 +464,7 @@ func (c *GlobalConfig) ValidateReDirectSysLogConfig() error { return nil } -func getLatestPlatformToolsPath() string { +func GetLatestPlatformToolsPath() string { cmd, err := exec.Command("/bin/sh", "-c", habPkgPlatformToolsPath).Output() if err != nil { fmt.Printf("error %s", err) diff --git a/api/config/shared/global.pb.a2svc.go b/api/config/shared/global.pb.a2svc.go index 0396ccbbc5a..029b1395fc5 100644 --- a/api/config/shared/global.pb.a2svc.go +++ b/api/config/shared/global.pb.a2svc.go @@ -41,6 +41,12 @@ func (m *GlobalConfig) ListSecrets() []a2conf.SecretInfo { return []a2conf.SecretInfo{a2conf.SecretInfo{ EnvironmentVariable: "AUTOMATE_SECRET_ES_PASSWORD", Name: "es_password", + }, a2conf.SecretInfo{ + EnvironmentVariable: "AUTOMATE_SECRET_PG_SUPERUSER_PASSWORD", + Name: "pg_superuser_password", + }, a2conf.SecretInfo{ + EnvironmentVariable: "AUTOMATE_SECRET_PG_DBUSER_PASSWORD", + Name: "pg_dbuser_password", }, a2conf.SecretInfo{ EnvironmentVariable: "AUTOMATE_SECRET_OS_PASSWORD", Name: "os_password", @@ -79,6 +85,60 @@ func (m *GlobalConfig) GetSecret(name string) *wrappers.StringValue { } v5 := v4.Password return v5 + case "pg_superuser_password": + v0 := m.V1 + if v0 == nil { + return nil + } + v1 := v0.External + if v1 == nil { + return nil + } + v2 := v1.Postgresql + if v2 == nil { + return nil + } + v3 := v2.Auth + if v3 == nil { + return nil + } + v4 := v3.Password + if v4 == nil { + return nil + } + v5 := v4.Superuser + if v5 == nil { + return nil + } + v6 := v5.Password + return v6 + case "pg_dbuser_password": + v0 := m.V1 + if v0 == nil { + return nil + } + v1 := v0.External + if v1 == nil { + return nil + } + v2 := v1.Postgresql + if v2 == nil { + return nil + } + v3 := v2.Auth + if v3 == nil { + return nil + } + v4 := v3.Password + if v4 == nil { + return nil + } + v5 := v4.Dbuser + if v5 == nil { + return nil + } + v6 := v5.Password + return v6 case "os_password": v0 := m.V1 if v0 == nil { @@ -151,6 +211,66 @@ func (m *GlobalConfig) SetSecret(name string, value *wrappers.StringValue) error *v5 = &wrapperspb.StringValue{} } *v5 = value + case "pg_superuser_password": + v0 := &m.V1 + if *v0 == nil { + *v0 = &V1{} + } + v1 := &(*v0).External + if *v1 == nil { + *v1 = &External{} + } + v2 := &(*v1).Postgresql + if *v2 == nil { + *v2 = &External_Postgresql{} + } + v3 := &(*v2).Auth + if *v3 == nil { + *v3 = &External_Postgresql_Authentication{} + } + v4 := &(*v3).Password + if *v4 == nil { + *v4 = &External_Postgresql_Authentication_PasswordAuthentication{} + } + v5 := &(*v4).Superuser + if *v5 == nil { + *v5 = &External_Postgresql_Authentication_PasswordAuthentication_SuperUser{} + } + v6 := &(*v5).Password + if *v6 == nil { + *v6 = &wrapperspb.StringValue{} + } + *v6 = value + case "pg_dbuser_password": + v0 := &m.V1 + if *v0 == nil { + *v0 = &V1{} + } + v1 := &(*v0).External + if *v1 == nil { + *v1 = &External{} + } + v2 := &(*v1).Postgresql + if *v2 == nil { + *v2 = &External_Postgresql{} + } + v3 := &(*v2).Auth + if *v3 == nil { + *v3 = &External_Postgresql_Authentication{} + } + v4 := &(*v3).Password + if *v4 == nil { + *v4 = &External_Postgresql_Authentication_PasswordAuthentication{} + } + v5 := &(*v4).Dbuser + if *v5 == nil { + *v5 = &External_Postgresql_Authentication_PasswordAuthentication_DBUser{} + } + v6 := &(*v5).Password + if *v6 == nil { + *v6 = &wrapperspb.StringValue{} + } + *v6 = value case "os_password": v0 := &m.V1 if *v0 == nil { diff --git a/api/config/shared/global.pb.go b/api/config/shared/global.pb.go index 77d2eeed17c..c7e8a63af4f 100644 --- a/api/config/shared/global.pb.go +++ b/api/config/shared/global.pb.go @@ -2843,8 +2843,8 @@ type External_Postgresql_Authentication_PasswordAuthentication struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Superuser *External_Postgresql_Authentication_PasswordAuthentication_User `protobuf:"bytes,1,opt,name=superuser,proto3" json:"superuser,omitempty" toml:"superuser,omitempty" mapstructure:"superuser,omitempty"` - Dbuser *External_Postgresql_Authentication_PasswordAuthentication_User `protobuf:"bytes,2,opt,name=dbuser,proto3" json:"dbuser,omitempty" toml:"dbuser,omitempty" mapstructure:"dbuser,omitempty"` + Superuser *External_Postgresql_Authentication_PasswordAuthentication_SuperUser `protobuf:"bytes,1,opt,name=superuser,proto3" json:"superuser,omitempty" toml:"superuser,omitempty" mapstructure:"superuser,omitempty"` + Dbuser *External_Postgresql_Authentication_PasswordAuthentication_DBUser `protobuf:"bytes,2,opt,name=dbuser,proto3" json:"dbuser,omitempty" toml:"dbuser,omitempty" mapstructure:"dbuser,omitempty"` } func (x *External_Postgresql_Authentication_PasswordAuthentication) Reset() { @@ -2879,21 +2879,21 @@ func (*External_Postgresql_Authentication_PasswordAuthentication) Descriptor() ( return file_config_shared_global_proto_rawDescGZIP(), []int{3, 3, 1, 0} } -func (x *External_Postgresql_Authentication_PasswordAuthentication) GetSuperuser() *External_Postgresql_Authentication_PasswordAuthentication_User { +func (x *External_Postgresql_Authentication_PasswordAuthentication) GetSuperuser() *External_Postgresql_Authentication_PasswordAuthentication_SuperUser { if x != nil { return x.Superuser } return nil } -func (x *External_Postgresql_Authentication_PasswordAuthentication) GetDbuser() *External_Postgresql_Authentication_PasswordAuthentication_User { +func (x *External_Postgresql_Authentication_PasswordAuthentication) GetDbuser() *External_Postgresql_Authentication_PasswordAuthentication_DBUser { if x != nil { return x.Dbuser } return nil } -type External_Postgresql_Authentication_PasswordAuthentication_User struct { +type External_Postgresql_Authentication_PasswordAuthentication_SuperUser struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -2902,8 +2902,8 @@ type External_Postgresql_Authentication_PasswordAuthentication_User struct { Password *wrapperspb.StringValue `protobuf:"bytes,2,opt,name=password,proto3" json:"password,omitempty" toml:"password,omitempty" mapstructure:"password,omitempty"` } -func (x *External_Postgresql_Authentication_PasswordAuthentication_User) Reset() { - *x = External_Postgresql_Authentication_PasswordAuthentication_User{} +func (x *External_Postgresql_Authentication_PasswordAuthentication_SuperUser) Reset() { + *x = External_Postgresql_Authentication_PasswordAuthentication_SuperUser{} if protoimpl.UnsafeEnabled { mi := &file_config_shared_global_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2911,13 +2911,13 @@ func (x *External_Postgresql_Authentication_PasswordAuthentication_User) Reset() } } -func (x *External_Postgresql_Authentication_PasswordAuthentication_User) String() string { +func (x *External_Postgresql_Authentication_PasswordAuthentication_SuperUser) String() string { return protoimpl.X.MessageStringOf(x) } -func (*External_Postgresql_Authentication_PasswordAuthentication_User) ProtoMessage() {} +func (*External_Postgresql_Authentication_PasswordAuthentication_SuperUser) ProtoMessage() {} -func (x *External_Postgresql_Authentication_PasswordAuthentication_User) ProtoReflect() protoreflect.Message { +func (x *External_Postgresql_Authentication_PasswordAuthentication_SuperUser) ProtoReflect() protoreflect.Message { mi := &file_config_shared_global_proto_msgTypes[43] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2929,19 +2929,74 @@ func (x *External_Postgresql_Authentication_PasswordAuthentication_User) ProtoRe return mi.MessageOf(x) } -// Deprecated: Use External_Postgresql_Authentication_PasswordAuthentication_User.ProtoReflect.Descriptor instead. -func (*External_Postgresql_Authentication_PasswordAuthentication_User) Descriptor() ([]byte, []int) { +// Deprecated: Use External_Postgresql_Authentication_PasswordAuthentication_SuperUser.ProtoReflect.Descriptor instead. +func (*External_Postgresql_Authentication_PasswordAuthentication_SuperUser) Descriptor() ([]byte, []int) { return file_config_shared_global_proto_rawDescGZIP(), []int{3, 3, 1, 0, 0} } -func (x *External_Postgresql_Authentication_PasswordAuthentication_User) GetUsername() *wrapperspb.StringValue { +func (x *External_Postgresql_Authentication_PasswordAuthentication_SuperUser) GetUsername() *wrapperspb.StringValue { if x != nil { return x.Username } return nil } -func (x *External_Postgresql_Authentication_PasswordAuthentication_User) GetPassword() *wrapperspb.StringValue { +func (x *External_Postgresql_Authentication_PasswordAuthentication_SuperUser) GetPassword() *wrapperspb.StringValue { + if x != nil { + return x.Password + } + return nil +} + +type External_Postgresql_Authentication_PasswordAuthentication_DBUser struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Username *wrapperspb.StringValue `protobuf:"bytes,1,opt,name=username,proto3" json:"username,omitempty" toml:"username,omitempty" mapstructure:"username,omitempty"` + Password *wrapperspb.StringValue `protobuf:"bytes,2,opt,name=password,proto3" json:"password,omitempty" toml:"password,omitempty" mapstructure:"password,omitempty"` +} + +func (x *External_Postgresql_Authentication_PasswordAuthentication_DBUser) Reset() { + *x = External_Postgresql_Authentication_PasswordAuthentication_DBUser{} + if protoimpl.UnsafeEnabled { + mi := &file_config_shared_global_proto_msgTypes[44] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *External_Postgresql_Authentication_PasswordAuthentication_DBUser) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*External_Postgresql_Authentication_PasswordAuthentication_DBUser) ProtoMessage() {} + +func (x *External_Postgresql_Authentication_PasswordAuthentication_DBUser) ProtoReflect() protoreflect.Message { + mi := &file_config_shared_global_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 External_Postgresql_Authentication_PasswordAuthentication_DBUser.ProtoReflect.Descriptor instead. +func (*External_Postgresql_Authentication_PasswordAuthentication_DBUser) Descriptor() ([]byte, []int) { + return file_config_shared_global_proto_rawDescGZIP(), []int{3, 3, 1, 0, 1} +} + +func (x *External_Postgresql_Authentication_PasswordAuthentication_DBUser) GetUsername() *wrapperspb.StringValue { + if x != nil { + return x.Username + } + return nil +} + +func (x *External_Postgresql_Authentication_PasswordAuthentication_DBUser) GetPassword() *wrapperspb.StringValue { if x != nil { return x.Password } @@ -2960,7 +3015,7 @@ type External_Automate_Authentication struct { func (x *External_Automate_Authentication) Reset() { *x = External_Automate_Authentication{} if protoimpl.UnsafeEnabled { - mi := &file_config_shared_global_proto_msgTypes[44] + mi := &file_config_shared_global_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2973,7 +3028,7 @@ func (x *External_Automate_Authentication) String() string { func (*External_Automate_Authentication) ProtoMessage() {} func (x *External_Automate_Authentication) ProtoReflect() protoreflect.Message { - mi := &file_config_shared_global_proto_msgTypes[44] + mi := &file_config_shared_global_proto_msgTypes[45] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3015,7 +3070,7 @@ type External_Automate_SSL struct { func (x *External_Automate_SSL) Reset() { *x = External_Automate_SSL{} if protoimpl.UnsafeEnabled { - mi := &file_config_shared_global_proto_msgTypes[45] + mi := &file_config_shared_global_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3028,7 +3083,7 @@ func (x *External_Automate_SSL) String() string { func (*External_Automate_SSL) ProtoMessage() {} func (x *External_Automate_SSL) ProtoReflect() protoreflect.Message { - mi := &file_config_shared_global_proto_msgTypes[45] + mi := &file_config_shared_global_proto_msgTypes[46] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3071,7 +3126,7 @@ type Backups_Filesystem struct { func (x *Backups_Filesystem) Reset() { *x = Backups_Filesystem{} if protoimpl.UnsafeEnabled { - mi := &file_config_shared_global_proto_msgTypes[46] + mi := &file_config_shared_global_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3084,7 +3139,7 @@ func (x *Backups_Filesystem) String() string { func (*Backups_Filesystem) ProtoMessage() {} func (x *Backups_Filesystem) ProtoReflect() protoreflect.Message { - mi := &file_config_shared_global_proto_msgTypes[46] + mi := &file_config_shared_global_proto_msgTypes[47] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3136,7 +3191,7 @@ type Backups_S3 struct { func (x *Backups_S3) Reset() { *x = Backups_S3{} if protoimpl.UnsafeEnabled { - mi := &file_config_shared_global_proto_msgTypes[47] + mi := &file_config_shared_global_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3149,7 +3204,7 @@ func (x *Backups_S3) String() string { func (*Backups_S3) ProtoMessage() {} func (x *Backups_S3) ProtoReflect() protoreflect.Message { - mi := &file_config_shared_global_proto_msgTypes[47] + mi := &file_config_shared_global_proto_msgTypes[48] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3214,7 +3269,7 @@ type Backups_GCS struct { func (x *Backups_GCS) Reset() { *x = Backups_GCS{} if protoimpl.UnsafeEnabled { - mi := &file_config_shared_global_proto_msgTypes[48] + mi := &file_config_shared_global_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3227,7 +3282,7 @@ func (x *Backups_GCS) String() string { func (*Backups_GCS) ProtoMessage() {} func (x *Backups_GCS) ProtoReflect() protoreflect.Message { - mi := &file_config_shared_global_proto_msgTypes[48] + mi := &file_config_shared_global_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3284,7 +3339,7 @@ type Backups_S3_AWSCredentials struct { func (x *Backups_S3_AWSCredentials) Reset() { *x = Backups_S3_AWSCredentials{} if protoimpl.UnsafeEnabled { - mi := &file_config_shared_global_proto_msgTypes[49] + mi := &file_config_shared_global_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3297,7 +3352,7 @@ func (x *Backups_S3_AWSCredentials) String() string { func (*Backups_S3_AWSCredentials) ProtoMessage() {} func (x *Backups_S3_AWSCredentials) ProtoReflect() protoreflect.Message { - mi := &file_config_shared_global_proto_msgTypes[49] + mi := &file_config_shared_global_proto_msgTypes[50] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3362,7 +3417,7 @@ type Backups_S3_Elasticsearch struct { func (x *Backups_S3_Elasticsearch) Reset() { *x = Backups_S3_Elasticsearch{} if protoimpl.UnsafeEnabled { - mi := &file_config_shared_global_proto_msgTypes[50] + mi := &file_config_shared_global_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3375,7 +3430,7 @@ func (x *Backups_S3_Elasticsearch) String() string { func (*Backups_S3_Elasticsearch) ProtoMessage() {} func (x *Backups_S3_Elasticsearch) ProtoReflect() protoreflect.Message { - mi := &file_config_shared_global_proto_msgTypes[50] + mi := &file_config_shared_global_proto_msgTypes[51] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3517,7 +3572,7 @@ type Backups_S3_Opensearch struct { func (x *Backups_S3_Opensearch) Reset() { *x = Backups_S3_Opensearch{} if protoimpl.UnsafeEnabled { - mi := &file_config_shared_global_proto_msgTypes[51] + mi := &file_config_shared_global_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3530,7 +3585,7 @@ func (x *Backups_S3_Opensearch) String() string { func (*Backups_S3_Opensearch) ProtoMessage() {} func (x *Backups_S3_Opensearch) ProtoReflect() protoreflect.Message { - mi := &file_config_shared_global_proto_msgTypes[51] + mi := &file_config_shared_global_proto_msgTypes[52] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3657,7 +3712,7 @@ type Backups_S3_Bucket struct { func (x *Backups_S3_Bucket) Reset() { *x = Backups_S3_Bucket{} if protoimpl.UnsafeEnabled { - mi := &file_config_shared_global_proto_msgTypes[52] + mi := &file_config_shared_global_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3670,7 +3725,7 @@ func (x *Backups_S3_Bucket) String() string { func (*Backups_S3_Bucket) ProtoMessage() {} func (x *Backups_S3_Bucket) ProtoReflect() protoreflect.Message { - mi := &file_config_shared_global_proto_msgTypes[52] + mi := &file_config_shared_global_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3718,7 +3773,7 @@ type Backups_S3_SSL struct { func (x *Backups_S3_SSL) Reset() { *x = Backups_S3_SSL{} if protoimpl.UnsafeEnabled { - mi := &file_config_shared_global_proto_msgTypes[53] + mi := &file_config_shared_global_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3731,7 +3786,7 @@ func (x *Backups_S3_SSL) String() string { func (*Backups_S3_SSL) ProtoMessage() {} func (x *Backups_S3_SSL) ProtoReflect() protoreflect.Message { - mi := &file_config_shared_global_proto_msgTypes[53] + mi := &file_config_shared_global_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3765,7 +3820,7 @@ type Backups_GCS_GCPCredentials struct { func (x *Backups_GCS_GCPCredentials) Reset() { *x = Backups_GCS_GCPCredentials{} if protoimpl.UnsafeEnabled { - mi := &file_config_shared_global_proto_msgTypes[54] + mi := &file_config_shared_global_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3778,7 +3833,7 @@ func (x *Backups_GCS_GCPCredentials) String() string { func (*Backups_GCS_GCPCredentials) ProtoMessage() {} func (x *Backups_GCS_GCPCredentials) ProtoReflect() protoreflect.Message { - mi := &file_config_shared_global_proto_msgTypes[54] + mi := &file_config_shared_global_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3821,7 +3876,7 @@ type Backups_GCS_Elasticsearch struct { func (x *Backups_GCS_Elasticsearch) Reset() { *x = Backups_GCS_Elasticsearch{} if protoimpl.UnsafeEnabled { - mi := &file_config_shared_global_proto_msgTypes[55] + mi := &file_config_shared_global_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3834,7 +3889,7 @@ func (x *Backups_GCS_Elasticsearch) String() string { func (*Backups_GCS_Elasticsearch) ProtoMessage() {} func (x *Backups_GCS_Elasticsearch) ProtoReflect() protoreflect.Message { - mi := &file_config_shared_global_proto_msgTypes[55] + mi := &file_config_shared_global_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3919,7 +3974,7 @@ type Backups_GCS_Opensearch struct { func (x *Backups_GCS_Opensearch) Reset() { *x = Backups_GCS_Opensearch{} if protoimpl.UnsafeEnabled { - mi := &file_config_shared_global_proto_msgTypes[56] + mi := &file_config_shared_global_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3932,7 +3987,7 @@ func (x *Backups_GCS_Opensearch) String() string { func (*Backups_GCS_Opensearch) ProtoMessage() {} func (x *Backups_GCS_Opensearch) ProtoReflect() protoreflect.Message { - mi := &file_config_shared_global_proto_msgTypes[56] + mi := &file_config_shared_global_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4009,7 +4064,7 @@ type Backups_GCS_Bucket struct { func (x *Backups_GCS_Bucket) Reset() { *x = Backups_GCS_Bucket{} if protoimpl.UnsafeEnabled { - mi := &file_config_shared_global_proto_msgTypes[57] + mi := &file_config_shared_global_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4022,7 +4077,7 @@ func (x *Backups_GCS_Bucket) String() string { func (*Backups_GCS_Bucket) ProtoMessage() {} func (x *Backups_GCS_Bucket) ProtoReflect() protoreflect.Message { - mi := &file_config_shared_global_proto_msgTypes[57] + mi := &file_config_shared_global_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4144,8 +4199,8 @@ var file_config_shared_global_proto_rawDesc = []byte{ 0x65, 0x52, 0x04, 0x66, 0x71, 0x64, 0x6e, 0x12, 0x35, 0x0a, 0x07, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x63, 0x61, 0x18, 0x02, 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, 0x72, 0x6f, 0x6f, 0x74, 0x43, 0x61, 0x22, 0xe4, - 0x3c, 0x0a, 0x08, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x12, 0x58, 0x0a, 0x0d, 0x65, + 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x74, 0x43, 0x61, 0x22, 0xa7, + 0x3e, 0x0a, 0x08, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x12, 0x58, 0x0a, 0x0d, 0x65, 0x6c, 0x61, 0x73, 0x74, 0x69, 0x63, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, @@ -4519,8 +4574,8 @@ var file_config_shared_global_proto_rawDesc = []byte{ 0x74, 0x73, 0x18, 0x07, 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, 0x17, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, - 0x74, 0x4d, 0x69, 0x6e, 0x69, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x1a, 0xed, - 0x09, 0x0a, 0x0a, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x12, 0x32, 0x0a, + 0x74, 0x4d, 0x69, 0x6e, 0x69, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x1a, 0xb0, + 0x0b, 0x0a, 0x0a, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x12, 0x32, 0x0a, 0x06, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 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, 0x06, 0x65, 0x6e, 0x61, 0x62, 0x6c, @@ -4545,8 +4600,8 @@ var file_config_shared_global_proto_rawDesc = []byte{ 0x1a, 0x3c, 0x0a, 0x06, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x12, 0x32, 0x0a, 0x06, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 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, 0x06, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x1a, 0xbe, - 0x04, 0x0a, 0x0e, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x1a, 0x81, + 0x06, 0x0a, 0x0e, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x18, 0x01, 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, @@ -4557,169 +4612,241 @@ var file_config_shared_global_proto_rawDesc = []byte{ 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x1a, 0x82, 0x03, 0x0a, 0x16, 0x50, + 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x1a, 0xc5, 0x04, 0x0a, 0x16, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x78, 0x0a, 0x09, 0x73, 0x75, 0x70, 0x65, 0x72, 0x75, 0x73, - 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x5a, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x7d, 0x0a, 0x09, 0x73, 0x75, 0x70, 0x65, 0x72, 0x75, 0x73, + 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x5f, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, - 0x55, 0x73, 0x65, 0x72, 0x52, 0x09, 0x73, 0x75, 0x70, 0x65, 0x72, 0x75, 0x73, 0x65, 0x72, 0x12, - 0x72, 0x0a, 0x06, 0x64, 0x62, 0x75, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x5a, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, - 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x45, 0x78, 0x74, - 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, - 0x2e, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, - 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x06, 0x64, 0x62, 0x75, - 0x73, 0x65, 0x72, 0x1a, 0x7a, 0x0a, 0x04, 0x55, 0x73, 0x65, 0x72, 0x12, 0x38, 0x0a, 0x08, 0x75, - 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 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, 0x08, 0x75, 0x73, 0x65, - 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, - 0x64, 0x18, 0x02, 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, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x1a, - 0x8c, 0x02, 0x0a, 0x03, 0x53, 0x53, 0x4c, 0x12, 0x34, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, - 0x01, 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, 0x42, 0x02, 0x18, 0x01, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x30, 0x0a, - 0x04, 0x63, 0x65, 0x72, 0x74, 0x18, 0x02, 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, 0x04, 0x63, 0x65, 0x72, 0x74, 0x12, - 0x2e, 0x0a, 0x03, 0x6b, 0x65, 0x79, 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, 0x03, 0x6b, 0x65, 0x79, 0x12, - 0x39, 0x0a, 0x09, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x04, 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, 0x08, 0x72, 0x6f, 0x6f, 0x74, 0x43, 0x65, 0x72, 0x74, 0x12, 0x32, 0x0a, 0x06, 0x65, 0x6e, - 0x61, 0x62, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, - 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x1a, 0x84, - 0x04, 0x0a, 0x08, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x12, 0x32, 0x0a, 0x06, 0x65, - 0x6e, 0x61, 0x62, 0x6c, 0x65, 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, 0x06, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x12, - 0x30, 0x0a, 0x04, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x02, 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, 0x04, 0x6e, 0x6f, 0x64, - 0x65, 0x12, 0x50, 0x0a, 0x04, 0x61, 0x75, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x3c, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, - 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x45, 0x78, 0x74, - 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x41, - 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x04, 0x61, - 0x75, 0x74, 0x68, 0x12, 0x43, 0x0a, 0x03, 0x73, 0x73, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x31, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, - 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x45, 0x78, - 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, - 0x53, 0x53, 0x4c, 0x52, 0x03, 0x73, 0x73, 0x6c, 0x1a, 0x7a, 0x0a, 0x0e, 0x41, 0x75, 0x74, 0x68, - 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x06, 0x73, 0x63, - 0x68, 0x65, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, + 0x53, 0x75, 0x70, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x52, 0x09, 0x73, 0x75, 0x70, 0x65, 0x72, + 0x75, 0x73, 0x65, 0x72, 0x12, 0x74, 0x0a, 0x06, 0x64, 0x62, 0x75, 0x73, 0x65, 0x72, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x5c, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, 0x75, 0x74, 0x6f, + 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x67, + 0x72, 0x65, 0x73, 0x71, 0x6c, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x41, 0x75, 0x74, + 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x42, 0x55, 0x73, + 0x65, 0x72, 0x52, 0x06, 0x64, 0x62, 0x75, 0x73, 0x65, 0x72, 0x1a, 0x9c, 0x01, 0x0a, 0x09, 0x53, + 0x75, 0x70, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x12, 0x38, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 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, 0x63, 0x68, 0x65, 0x6d, 0x65, - 0x12, 0x32, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x55, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x02, + 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, 0x42, 0x1b, 0xca, 0xf3, 0x18, 0x17, 0x0a, 0x15, 0x70, 0x67, 0x5f, 0x73, 0x75, 0x70, + 0x65, 0x72, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x52, + 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x1a, 0x96, 0x01, 0x0a, 0x06, 0x44, 0x42, + 0x55, 0x73, 0x65, 0x72, 0x12, 0x38, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x01, 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, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x52, + 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x02, 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, 0x42, 0x18, + 0xca, 0xf3, 0x18, 0x14, 0x0a, 0x12, 0x70, 0x67, 0x5f, 0x64, 0x62, 0x75, 0x73, 0x65, 0x72, 0x5f, + 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, + 0x72, 0x64, 0x1a, 0x8c, 0x02, 0x0a, 0x03, 0x53, 0x53, 0x4c, 0x12, 0x34, 0x0a, 0x04, 0x6d, 0x6f, + 0x64, 0x65, 0x18, 0x01, 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, 0x42, 0x02, 0x18, 0x01, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, + 0x12, 0x30, 0x0a, 0x04, 0x63, 0x65, 0x72, 0x74, 0x18, 0x02, 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, 0x04, 0x63, 0x65, + 0x72, 0x74, 0x12, 0x2e, 0x0a, 0x03, 0x6b, 0x65, 0x79, 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, 0x05, 0x74, - 0x6f, 0x6b, 0x65, 0x6e, 0x1a, 0x7f, 0x0a, 0x03, 0x53, 0x53, 0x4c, 0x12, 0x39, 0x0a, 0x09, 0x72, - 0x6f, 0x6f, 0x74, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, + 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x39, 0x0a, 0x09, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, + 0x04, 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, 0x08, 0x72, 0x6f, 0x6f, 0x74, 0x43, 0x65, 0x72, 0x74, 0x12, 0x32, 0x0a, + 0x06, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, + 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x65, 0x6e, 0x61, 0x62, 0x6c, + 0x65, 0x1a, 0x84, 0x04, 0x0a, 0x08, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x12, 0x32, + 0x0a, 0x06, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 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, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x08, 0x72, 0x6f, - 0x6f, 0x74, 0x43, 0x65, 0x72, 0x74, 0x12, 0x3d, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 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, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x3a, 0x0a, 0x04, 0x4d, 0x6c, 0x73, 0x61, 0x12, 0x32, 0x0a, - 0x06, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, + 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x65, 0x6e, 0x61, 0x62, + 0x6c, 0x65, 0x12, 0x30, 0x0a, 0x04, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x02, 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, 0x04, + 0x6e, 0x6f, 0x64, 0x65, 0x12, 0x50, 0x0a, 0x04, 0x61, 0x75, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, + 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, + 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, + 0x65, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x04, 0x61, 0x75, 0x74, 0x68, 0x12, 0x43, 0x0a, 0x03, 0x73, 0x73, 0x6c, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6d, + 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, + 0x74, 0x65, 0x2e, 0x53, 0x53, 0x4c, 0x52, 0x03, 0x73, 0x73, 0x6c, 0x1a, 0x7a, 0x0a, 0x0e, 0x41, + 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, + 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 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, 0x06, 0x61, 0x63, 0x63, 0x65, 0x70, - 0x74, 0x22, 0xf1, 0x01, 0x0a, 0x05, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x12, 0x30, 0x0a, 0x04, 0x68, - 0x6f, 0x73, 0x74, 0x18, 0x01, 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, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x12, 0x2f, 0x0a, - 0x04, 0x70, 0x6f, 0x72, 0x74, 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, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x30, - 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 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, 0x04, 0x75, 0x73, 0x65, 0x72, - 0x12, 0x38, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, + 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x73, 0x63, 0x68, + 0x65, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 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, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6e, 0x6f, - 0x5f, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x6f, - 0x50, 0x72, 0x6f, 0x78, 0x79, 0x22, 0xb1, 0x25, 0x0a, 0x07, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, - 0x73, 0x12, 0x38, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, + 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x1a, 0x7f, 0x0a, 0x03, 0x53, 0x53, 0x4c, 0x12, 0x39, + 0x0a, 0x09, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x01, 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, + 0x08, 0x72, 0x6f, 0x6f, 0x74, 0x43, 0x65, 0x72, 0x74, 0x12, 0x3d, 0x0a, 0x0b, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 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, 0x0a, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x3a, 0x0a, 0x04, 0x4d, 0x6c, 0x73, 0x61, + 0x12, 0x32, 0x0a, 0x06, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 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, 0x06, 0x61, 0x63, + 0x63, 0x65, 0x70, 0x74, 0x22, 0xf1, 0x01, 0x0a, 0x05, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x12, 0x30, + 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x01, 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, 0x04, 0x68, 0x6f, 0x73, 0x74, + 0x12, 0x2f, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 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, 0x04, 0x70, 0x6f, 0x72, + 0x74, 0x12, 0x30, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 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, 0x04, 0x75, + 0x73, 0x65, 0x72, 0x12, 0x38, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, + 0x04, 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, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x19, 0x0a, + 0x08, 0x6e, 0x6f, 0x5f, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, + 0x07, 0x6e, 0x6f, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x22, 0xb1, 0x25, 0x0a, 0x07, 0x42, 0x61, 0x63, + 0x6b, 0x75, 0x70, 0x73, 0x12, 0x38, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 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, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4e, + 0x0a, 0x0a, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, + 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, + 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x79, 0x73, 0x74, + 0x65, 0x6d, 0x52, 0x0a, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x36, + 0x0a, 0x02, 0x73, 0x33, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x68, 0x65, + 0x66, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, + 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, + 0x53, 0x33, 0x52, 0x02, 0x73, 0x33, 0x12, 0x39, 0x0a, 0x03, 0x67, 0x63, 0x73, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6d, + 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, 0x47, 0x43, 0x53, 0x52, 0x03, 0x67, 0x63, + 0x73, 0x1a, 0xfa, 0x01, 0x0a, 0x0a, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, + 0x12, 0x30, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 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, 0x04, 0x70, 0x61, + 0x74, 0x68, 0x12, 0x5d, 0x0a, 0x1d, 0x65, 0x73, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x6e, 0x61, + 0x70, 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, + 0x73, 0x65, 0x63, 0x18, 0x02, 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, 0x18, 0x65, 0x73, 0x4d, 0x61, 0x78, 0x53, 0x6e, + 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x53, 0x65, + 0x63, 0x12, 0x5b, 0x0a, 0x1c, 0x65, 0x73, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x65, 0x73, 0x74, + 0x6f, 0x72, 0x65, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x73, 0x65, + 0x63, 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, 0x17, 0x65, 0x73, 0x4d, 0x61, 0x78, 0x52, 0x65, 0x73, 0x74, + 0x6f, 0x72, 0x65, 0x42, 0x79, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x53, 0x65, 0x63, 0x1a, 0xac, + 0x15, 0x0a, 0x02, 0x53, 0x33, 0x12, 0x57, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x61, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x63, 0x68, 0x65, + 0x66, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, + 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, + 0x53, 0x33, 0x2e, 0x41, 0x57, 0x53, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, + 0x73, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x44, + 0x0a, 0x02, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x63, 0x68, 0x65, + 0x66, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, + 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, + 0x53, 0x33, 0x2e, 0x45, 0x6c, 0x61, 0x73, 0x74, 0x69, 0x63, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, + 0x52, 0x02, 0x65, 0x73, 0x12, 0x45, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, 0x75, 0x74, 0x6f, + 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, 0x53, 0x33, 0x2e, 0x42, 0x75, 0x63, + 0x6b, 0x65, 0x74, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x3c, 0x0a, 0x03, 0x73, + 0x73, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, + 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, 0x53, 0x33, + 0x2e, 0x53, 0x53, 0x4c, 0x52, 0x03, 0x73, 0x73, 0x6c, 0x12, 0x41, 0x0a, 0x02, 0x6f, 0x73, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, 0x75, 0x74, + 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, 0x53, 0x33, 0x2e, 0x4f, 0x70, + 0x65, 0x6e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x02, 0x6f, 0x73, 0x1a, 0xcd, 0x01, 0x0a, + 0x0e, 0x41, 0x57, 0x53, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, + 0x3b, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 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, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4e, 0x0a, 0x0a, 0x66, - 0x69, 0x6c, 0x65, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x2e, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, - 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x42, 0x61, 0x63, - 0x6b, 0x75, 0x70, 0x73, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x52, - 0x0a, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x36, 0x0a, 0x02, 0x73, - 0x33, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, - 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, 0x53, 0x33, 0x52, - 0x02, 0x73, 0x33, 0x12, 0x39, 0x0a, 0x03, 0x67, 0x63, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x27, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, - 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x42, 0x61, - 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, 0x47, 0x43, 0x53, 0x52, 0x03, 0x67, 0x63, 0x73, 0x1a, 0xfa, - 0x01, 0x0a, 0x0a, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x30, 0x0a, - 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, + 0x65, 0x52, 0x09, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x3b, 0x0a, 0x0a, + 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 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, 0x09, + 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x12, 0x41, 0x0a, 0x0d, 0x73, 0x65, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 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, 0x0c, + 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x1a, 0xbd, 0x07, 0x0a, + 0x0d, 0x45, 0x6c, 0x61, 0x73, 0x74, 0x69, 0x63, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x12, 0x36, + 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 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, 0x08, 0x63, 0x6f, + 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x12, 0x50, 0x0a, 0x16, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x5f, 0x73, 0x69, 0x64, 0x65, 0x5f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x52, 0x14, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x69, 0x64, 0x65, 0x45, 0x6e, + 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3d, 0x0a, 0x0b, 0x62, 0x75, 0x66, 0x66, + 0x65, 0x72, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 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, 0x0a, 0x62, 0x75, 0x66, + 0x66, 0x65, 0x72, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x3b, 0x0a, 0x0a, 0x63, 0x61, 0x6e, 0x6e, 0x65, + 0x64, 0x5f, 0x61, 0x63, 0x6c, 0x18, 0x05, 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, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, - 0x5d, 0x0a, 0x1d, 0x65, 0x73, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, - 0x6f, 0x74, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x63, - 0x18, 0x02, 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, 0x18, 0x65, 0x73, 0x4d, 0x61, 0x78, 0x53, 0x6e, 0x61, 0x70, 0x73, - 0x68, 0x6f, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x53, 0x65, 0x63, 0x12, 0x5b, - 0x0a, 0x1c, 0x65, 0x73, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, - 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x63, 0x18, 0x03, + 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 0x63, 0x61, 0x6e, 0x6e, 0x65, + 0x64, 0x41, 0x63, 0x6c, 0x12, 0x41, 0x0a, 0x0d, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x18, 0x06, 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, 0x0c, 0x73, 0x74, 0x6f, 0x72, 0x61, + 0x67, 0x65, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x12, 0x58, 0x0a, 0x1a, 0x6d, 0x61, 0x78, 0x5f, 0x73, + 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, 0x70, 0x65, + 0x72, 0x5f, 0x73, 0x65, 0x63, 0x18, 0x07, 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, 0x16, 0x6d, 0x61, 0x78, 0x53, 0x6e, + 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x53, 0x65, + 0x63, 0x12, 0x56, 0x0a, 0x19, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, + 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x63, 0x18, 0x08, 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, 0x17, 0x65, 0x73, 0x4d, 0x61, 0x78, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, - 0x42, 0x79, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x53, 0x65, 0x63, 0x1a, 0xac, 0x15, 0x0a, 0x02, - 0x53, 0x33, 0x12, 0x57, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, - 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, 0x53, 0x33, 0x2e, - 0x41, 0x57, 0x53, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, 0x0b, - 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x44, 0x0a, 0x02, 0x65, - 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, - 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, 0x53, 0x33, 0x2e, - 0x45, 0x6c, 0x61, 0x73, 0x74, 0x69, 0x63, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x02, 0x65, - 0x73, 0x12, 0x45, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x2d, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, - 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x42, - 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, 0x53, 0x33, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, - 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x3c, 0x0a, 0x03, 0x73, 0x73, 0x6c, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, 0x75, 0x74, - 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, 0x53, 0x33, 0x2e, 0x53, 0x53, - 0x4c, 0x52, 0x03, 0x73, 0x73, 0x6c, 0x12, 0x41, 0x0a, 0x02, 0x6f, 0x73, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, - 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, - 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, 0x53, 0x33, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x73, - 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x02, 0x6f, 0x73, 0x1a, 0xcd, 0x01, 0x0a, 0x0e, 0x41, 0x57, - 0x53, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x3b, 0x0a, 0x0a, - 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 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, 0x09, - 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x3b, 0x0a, 0x0a, 0x73, 0x65, 0x63, - 0x72, 0x65, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, + 0x75, 0x65, 0x52, 0x15, 0x6d, 0x61, 0x78, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x42, 0x79, + 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x53, 0x65, 0x63, 0x12, 0x3b, 0x0a, 0x0a, 0x63, 0x68, 0x75, + 0x6e, 0x6b, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x09, 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, 0x09, 0x73, 0x65, 0x63, - 0x72, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x12, 0x41, 0x0a, 0x0d, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, + 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 0x63, 0x68, 0x75, + 0x6e, 0x6b, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x3f, 0x0a, 0x0c, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x74, + 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x0a, 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, 0x0b, 0x72, 0x65, 0x61, 0x64, + 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x3c, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, 0x72, + 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x0b, 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, 0x0a, 0x6d, 0x61, 0x78, 0x52, 0x65, + 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x4c, 0x0a, 0x14, 0x75, 0x73, 0x65, 0x5f, 0x74, 0x68, 0x72, + 0x6f, 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x0c, 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, + 0x12, 0x75, 0x73, 0x65, 0x54, 0x68, 0x72, 0x6f, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x74, 0x72, + 0x69, 0x65, 0x73, 0x12, 0x38, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, + 0x0d, 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, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x34, 0x0a, + 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x0e, 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, 0x0c, 0x73, 0x65, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x1a, 0xbd, 0x07, 0x0a, 0x0d, 0x45, 0x6c, - 0x61, 0x73, 0x74, 0x69, 0x63, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x12, 0x36, 0x0a, 0x08, 0x63, + 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x72, 0x65, 0x67, + 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x0a, 0x08, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x61, 0x72, 0x6e, 0x18, + 0x0f, 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, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x41, 0x72, 0x6e, 0x1a, 0xba, 0x07, 0x0a, + 0x0a, 0x4f, 0x70, 0x65, 0x6e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x12, 0x36, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 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, 0x08, 0x63, 0x6f, 0x6d, 0x70, 0x72, @@ -4778,139 +4905,47 @@ var file_config_shared_global_proto_rawDesc = []byte{ 0x12, 0x37, 0x0a, 0x08, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x61, 0x72, 0x6e, 0x18, 0x0f, 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, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x41, 0x72, 0x6e, 0x1a, 0xba, 0x07, 0x0a, 0x0a, 0x4f, 0x70, - 0x65, 0x6e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x12, 0x36, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x70, - 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 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, 0x08, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, - 0x12, 0x50, 0x0a, 0x16, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x69, 0x64, 0x65, 0x5f, - 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x14, 0x73, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x53, 0x69, 0x64, 0x65, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x3d, 0x0a, 0x0b, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x5f, 0x73, 0x69, 0x7a, - 0x65, 0x18, 0x04, 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, 0x0a, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x53, 0x69, 0x7a, - 0x65, 0x12, 0x3b, 0x0a, 0x0a, 0x63, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x6c, 0x18, - 0x05, 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, 0x09, 0x63, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x41, 0x63, 0x6c, 0x12, 0x41, - 0x0a, 0x0d, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x18, - 0x06, 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, 0x0c, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6c, 0x61, 0x73, - 0x73, 0x12, 0x58, 0x0a, 0x1a, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, - 0x74, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x63, 0x18, - 0x07, 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, 0x16, 0x6d, 0x61, 0x78, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, - 0x42, 0x79, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x53, 0x65, 0x63, 0x12, 0x56, 0x0a, 0x19, 0x6d, - 0x61, 0x78, 0x5f, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, - 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x63, 0x18, 0x08, 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, 0x15, 0x6d, 0x61, - 0x78, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x42, 0x79, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, - 0x53, 0x65, 0x63, 0x12, 0x3b, 0x0a, 0x0a, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x5f, 0x73, 0x69, 0x7a, - 0x65, 0x18, 0x09, 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, 0x09, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x53, 0x69, 0x7a, 0x65, - 0x12, 0x3f, 0x0a, 0x0c, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x52, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x41, 0x72, 0x6e, 0x1a, 0xaf, 0x01, 0x0a, 0x06, 0x42, 0x75, + 0x63, 0x6b, 0x65, 0x74, 0x12, 0x38, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, + 0x18, 0x01, 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, 0x0b, 0x72, 0x65, 0x61, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, - 0x74, 0x12, 0x3c, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, - 0x18, 0x0b, 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, 0x0a, 0x6d, 0x61, 0x78, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, - 0x4c, 0x0a, 0x14, 0x75, 0x73, 0x65, 0x5f, 0x74, 0x68, 0x72, 0x6f, 0x74, 0x74, 0x6c, 0x65, 0x5f, - 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x0c, 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, 0x12, 0x75, 0x73, 0x65, 0x54, 0x68, - 0x72, 0x6f, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x38, 0x0a, - 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x0d, 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, 0x08, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x34, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, - 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x61, 0x6c, 0x75, 0x65, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x39, + 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 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, + 0x08, 0x62, 0x61, 0x73, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x30, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 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, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x0a, - 0x08, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x61, 0x72, 0x6e, 0x18, 0x0f, 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, 0x07, 0x72, - 0x6f, 0x6c, 0x65, 0x41, 0x72, 0x6e, 0x1a, 0xaf, 0x01, 0x0a, 0x06, 0x42, 0x75, 0x63, 0x6b, 0x65, - 0x74, 0x12, 0x38, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 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, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x39, 0x0a, 0x09, 0x62, - 0x61, 0x73, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 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, 0x08, 0x62, 0x61, - 0x73, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x30, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 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, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0x40, 0x0a, 0x03, 0x53, 0x53, 0x4c, 0x12, - 0x39, 0x0a, 0x09, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0x40, 0x0a, 0x03, 0x53, + 0x53, 0x4c, 0x12, 0x39, 0x0a, 0x09, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, + 0x01, 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, 0x08, 0x72, 0x6f, 0x6f, 0x74, 0x43, 0x65, 0x72, 0x74, 0x1a, 0xf6, 0x0b, + 0x0a, 0x03, 0x47, 0x43, 0x53, 0x12, 0x58, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x61, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x63, 0x68, 0x65, + 0x66, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, + 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, + 0x47, 0x43, 0x53, 0x2e, 0x47, 0x43, 0x50, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, + 0x6c, 0x73, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, + 0x45, 0x0a, 0x02, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x63, 0x68, + 0x65, 0x66, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, + 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, + 0x2e, 0x47, 0x43, 0x53, 0x2e, 0x45, 0x6c, 0x61, 0x73, 0x74, 0x69, 0x63, 0x73, 0x65, 0x61, 0x72, + 0x63, 0x68, 0x52, 0x02, 0x65, 0x73, 0x12, 0x46, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, 0x75, + 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, 0x47, 0x43, 0x53, 0x2e, + 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x42, + 0x0a, 0x02, 0x6f, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x63, 0x68, 0x65, + 0x66, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, + 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, + 0x47, 0x43, 0x53, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x02, + 0x6f, 0x73, 0x1a, 0x42, 0x0a, 0x0e, 0x47, 0x43, 0x50, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x61, 0x6c, 0x73, 0x12, 0x30, 0x0a, 0x04, 0x6a, 0x73, 0x6f, 0x6e, 0x18, 0x01, 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, 0x08, 0x72, 0x6f, 0x6f, 0x74, 0x43, 0x65, 0x72, 0x74, 0x1a, 0xf6, 0x0b, 0x0a, 0x03, 0x47, - 0x43, 0x53, 0x12, 0x58, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, - 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, 0x47, 0x43, 0x53, - 0x2e, 0x47, 0x43, 0x50, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x52, - 0x0b, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x45, 0x0a, 0x02, - 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, - 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, 0x47, 0x43, - 0x53, 0x2e, 0x45, 0x6c, 0x61, 0x73, 0x74, 0x69, 0x63, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, - 0x02, 0x65, 0x73, 0x12, 0x46, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6d, - 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, 0x47, 0x43, 0x53, 0x2e, 0x42, 0x75, 0x63, - 0x6b, 0x65, 0x74, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x42, 0x0a, 0x02, 0x6f, - 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, - 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x2e, 0x47, 0x43, 0x53, - 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x02, 0x6f, 0x73, 0x1a, - 0x42, 0x0a, 0x0e, 0x47, 0x43, 0x50, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, - 0x73, 0x12, 0x30, 0x0a, 0x04, 0x6a, 0x73, 0x6f, 0x6e, 0x18, 0x01, 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, 0x04, 0x6a, - 0x73, 0x6f, 0x6e, 0x1a, 0x83, 0x04, 0x0a, 0x0d, 0x45, 0x6c, 0x61, 0x73, 0x74, 0x69, 0x63, 0x73, - 0x65, 0x61, 0x72, 0x63, 0x68, 0x12, 0x36, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, - 0x73, 0x18, 0x02, 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, 0x08, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x12, 0x45, 0x0a, - 0x10, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, - 0x6c, 0x75, 0x65, 0x52, 0x0f, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x58, 0x0a, 0x1a, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x6e, 0x61, 0x70, - 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x73, - 0x65, 0x63, 0x18, 0x04, 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, 0x16, 0x6d, 0x61, 0x78, 0x53, 0x6e, 0x61, 0x70, 0x73, - 0x68, 0x6f, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x53, 0x65, 0x63, 0x12, 0x56, - 0x0a, 0x19, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x62, 0x79, - 0x74, 0x65, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x63, 0x18, 0x05, 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, - 0x15, 0x6d, 0x61, 0x78, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x42, 0x79, 0x74, 0x65, 0x73, - 0x50, 0x65, 0x72, 0x53, 0x65, 0x63, 0x12, 0x3b, 0x0a, 0x0a, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x5f, - 0x73, 0x69, 0x7a, 0x65, 0x18, 0x06, 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, 0x09, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x53, - 0x69, 0x7a, 0x65, 0x12, 0x3f, 0x0a, 0x0c, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x6f, 0x75, 0x74, 0x18, 0x07, 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, 0x0b, 0x72, 0x65, 0x61, 0x64, 0x54, 0x69, 0x6d, - 0x65, 0x6f, 0x75, 0x74, 0x12, 0x43, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5f, - 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x08, 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, 0x0e, 0x63, 0x6f, 0x6e, 0x6e, 0x65, - 0x63, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x1a, 0x80, 0x04, 0x0a, 0x0a, 0x4f, 0x70, - 0x65, 0x6e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x12, 0x36, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x70, + 0x52, 0x04, 0x6a, 0x73, 0x6f, 0x6e, 0x1a, 0x83, 0x04, 0x0a, 0x0d, 0x45, 0x6c, 0x61, 0x73, 0x74, + 0x69, 0x63, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x12, 0x36, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 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, 0x08, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, @@ -4941,110 +4976,143 @@ var file_config_shared_global_proto_rawDesc = []byte{ 0x63, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x08, 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, 0x0e, 0x63, 0x6f, - 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x1a, 0x75, 0x0a, 0x06, - 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x39, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x70, - 0x61, 0x74, 0x68, 0x18, 0x01, 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, 0x08, 0x62, 0x61, 0x73, 0x65, 0x50, 0x61, 0x74, - 0x68, 0x12, 0x30, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 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, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x22, 0x8f, 0x05, 0x0a, 0x03, 0x4c, 0x6f, - 0x67, 0x12, 0x32, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x1a, 0x80, 0x04, 0x0a, + 0x0a, 0x4f, 0x70, 0x65, 0x6e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x12, 0x36, 0x0a, 0x08, 0x63, + 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 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, 0x08, 0x63, 0x6f, 0x6d, 0x70, 0x72, + 0x65, 0x73, 0x73, 0x12, 0x45, 0x0a, 0x10, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, + 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0f, 0x61, 0x70, 0x70, 0x6c, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x58, 0x0a, 0x1a, 0x6d, 0x61, + 0x78, 0x5f, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, + 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x63, 0x18, 0x04, 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, 0x16, 0x6d, 0x61, + 0x78, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x50, 0x65, + 0x72, 0x53, 0x65, 0x63, 0x12, 0x56, 0x0a, 0x19, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x65, 0x73, 0x74, + 0x6f, 0x72, 0x65, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x73, 0x65, + 0x63, 0x18, 0x05, 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, 0x15, 0x6d, 0x61, 0x78, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, + 0x65, 0x42, 0x79, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x53, 0x65, 0x63, 0x12, 0x3b, 0x0a, 0x0a, + 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x06, 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, 0x05, - 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x34, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, - 0x02, 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, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x44, 0x0a, 0x10, 0x72, - 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x5f, 0x73, 0x79, 0x73, 0x5f, 0x6c, 0x6f, 0x67, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x52, 0x0e, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x53, 0x79, 0x73, 0x4c, 0x6f, - 0x67, 0x12, 0x51, 0x0a, 0x16, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x5f, 0x6c, 0x6f, - 0x67, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x04, 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, - 0x13, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x4c, 0x6f, 0x67, 0x46, 0x69, 0x6c, 0x65, - 0x50, 0x61, 0x74, 0x68, 0x12, 0x4e, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, - 0x5f, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x6c, 0x6f, 0x67, 0x73, 0x18, 0x05, 0x20, + 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, + 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x3f, 0x0a, 0x0c, 0x72, 0x65, 0x61, + 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x07, 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, 0x0b, 0x72, + 0x65, 0x61, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x43, 0x0a, 0x0f, 0x63, 0x6f, + 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x08, 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, - 0x13, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x52, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x64, - 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x4d, 0x0a, 0x14, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x69, 0x7a, 0x65, - 0x5f, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x6c, 0x6f, 0x67, 0x73, 0x18, 0x06, 0x20, 0x01, + 0x0e, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x1a, + 0x75, 0x0a, 0x06, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x39, 0x0a, 0x09, 0x62, 0x61, 0x73, + 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 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, 0x08, 0x62, 0x61, 0x73, 0x65, + 0x50, 0x61, 0x74, 0x68, 0x12, 0x30, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 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, 0x11, 0x6d, 0x61, 0x78, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x4c, - 0x6f, 0x67, 0x73, 0x12, 0x52, 0x0a, 0x17, 0x6d, 0x61, 0x78, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, - 0x72, 0x5f, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x6c, 0x6f, 0x67, 0x73, 0x18, 0x07, - 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, 0x14, 0x6d, 0x61, 0x78, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x6f, 0x74, 0x61, - 0x74, 0x65, 0x64, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x4b, 0x0a, 0x13, 0x72, 0x61, 0x74, 0x65, 0x5f, - 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x08, - 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, 0x11, 0x72, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x49, 0x6e, 0x74, 0x65, - 0x72, 0x76, 0x61, 0x6c, 0x12, 0x45, 0x0a, 0x10, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x6c, 0x69, 0x6d, - 0x69, 0x74, 0x5f, 0x62, 0x75, 0x72, 0x73, 0x74, 0x18, 0x09, 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, 0x0e, 0x72, 0x61, 0x74, - 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x42, 0x75, 0x72, 0x73, 0x74, 0x22, 0x86, 0x01, 0x0a, 0x0a, - 0x44, 0x69, 0x73, 0x63, 0x6c, 0x6f, 0x73, 0x75, 0x72, 0x65, 0x12, 0x2e, 0x0a, 0x04, 0x73, 0x68, - 0x6f, 0x77, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x22, 0x8f, 0x05, 0x0a, + 0x03, 0x4c, 0x6f, 0x67, 0x12, 0x32, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 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, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x34, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x74, 0x18, 0x02, 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, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x44, + 0x0a, 0x10, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x5f, 0x73, 0x79, 0x73, 0x5f, 0x6c, + 0x6f, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x52, 0x04, 0x73, 0x68, 0x6f, 0x77, 0x12, 0x48, 0x0a, 0x11, 0x6d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0e, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x53, 0x79, + 0x73, 0x4c, 0x6f, 0x67, 0x12, 0x51, 0x0a, 0x16, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, + 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x04, + 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, 0x13, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x4c, 0x6f, 0x67, 0x46, + 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x4e, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x70, 0x72, + 0x65, 0x73, 0x73, 0x5f, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x6c, 0x6f, 0x67, 0x73, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x52, 0x6f, 0x74, 0x61, + 0x74, 0x65, 0x64, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x4d, 0x0a, 0x14, 0x6d, 0x61, 0x78, 0x5f, 0x73, + 0x69, 0x7a, 0x65, 0x5f, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x6c, 0x6f, 0x67, 0x73, 0x18, + 0x06, 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, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x46, 0x69, 0x6c, 0x65, - 0x50, 0x61, 0x74, 0x68, 0x22, 0xf6, 0x01, 0x0a, 0x06, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x12, - 0x2e, 0x0a, 0x04, 0x73, 0x68, 0x6f, 0x77, 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, 0x04, 0x73, 0x68, 0x6f, 0x77, 0x12, - 0x36, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 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, 0x07, - 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x47, 0x0a, 0x10, 0x62, 0x61, 0x63, 0x6b, 0x67, - 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 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, - 0x0f, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x43, 0x6f, 0x6c, 0x6f, 0x72, - 0x12, 0x3b, 0x0a, 0x0a, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x04, + 0x6c, 0x75, 0x65, 0x52, 0x11, 0x6d, 0x61, 0x78, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x6f, 0x74, 0x61, + 0x74, 0x65, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x52, 0x0a, 0x17, 0x6d, 0x61, 0x78, 0x5f, 0x6e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x6c, 0x6f, 0x67, + 0x73, 0x18, 0x07, 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, 0x14, 0x6d, 0x61, 0x78, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x52, + 0x6f, 0x74, 0x61, 0x74, 0x65, 0x64, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x4b, 0x0a, 0x13, 0x72, 0x61, + 0x74, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, + 0x6c, 0x18, 0x08, 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, 0x11, 0x72, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x49, + 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x45, 0x0a, 0x10, 0x72, 0x61, 0x74, 0x65, 0x5f, + 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x62, 0x75, 0x72, 0x73, 0x74, 0x18, 0x09, 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, 0x0e, + 0x72, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x42, 0x75, 0x72, 0x73, 0x74, 0x22, 0x86, + 0x01, 0x0a, 0x0a, 0x44, 0x69, 0x73, 0x63, 0x6c, 0x6f, 0x73, 0x75, 0x72, 0x65, 0x12, 0x2e, 0x0a, + 0x04, 0x73, 0x68, 0x6f, 0x77, 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, 0x04, 0x73, 0x68, 0x6f, 0x77, 0x12, 0x48, 0x0a, + 0x11, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, + 0x74, 0x68, 0x18, 0x02, 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, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x46, + 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x22, 0xf6, 0x01, 0x0a, 0x06, 0x42, 0x61, 0x6e, 0x6e, + 0x65, 0x72, 0x12, 0x2e, 0x0a, 0x04, 0x73, 0x68, 0x6f, 0x77, 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, 0x04, 0x73, 0x68, + 0x6f, 0x77, 0x12, 0x36, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 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, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x47, 0x0a, 0x10, 0x62, 0x61, + 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 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, 0x09, 0x74, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x22, 0xac, 0x01, - 0x0a, 0x0f, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, - 0x73, 0x12, 0x4a, 0x0a, 0x13, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x6c, 0x65, - 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 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, 0x11, 0x65, 0x6e, 0x61, 0x62, - 0x6c, 0x65, 0x49, 0x64, 0x6c, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x4d, 0x0a, - 0x14, 0x69, 0x64, 0x6c, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x69, - 0x6e, 0x75, 0x74, 0x65, 0x73, 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, 0x12, 0x69, 0x64, 0x6c, 0x65, 0x54, 0x69, - 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x73, 0x22, 0x62, 0x0a, 0x0e, - 0x4c, 0x61, 0x72, 0x67, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x50, - 0x0a, 0x16, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x5f, 0x72, - 0x65, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, + 0x75, 0x65, 0x52, 0x0f, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x43, 0x6f, + 0x6c, 0x6f, 0x72, 0x12, 0x3b, 0x0a, 0x0a, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, + 0x72, 0x18, 0x04, 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, 0x09, 0x74, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6c, 0x6f, 0x72, + 0x22, 0xac, 0x01, 0x0a, 0x0f, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x74, + 0x69, 0x6e, 0x67, 0x73, 0x12, 0x4a, 0x0a, 0x13, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x69, + 0x64, 0x6c, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 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, 0x11, 0x65, + 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x49, 0x64, 0x6c, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, + 0x12, 0x4d, 0x0a, 0x14, 0x69, 0x64, 0x6c, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, + 0x5f, 0x6d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x73, 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, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x14, 0x65, 0x6e, 0x61, 0x62, - 0x6c, 0x65, 0x4c, 0x61, 0x72, 0x67, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6e, 0x67, - 0x22, 0x3d, 0x0a, 0x05, 0x4e, 0x67, 0x69, 0x6e, 0x78, 0x12, 0x34, 0x0a, 0x04, 0x68, 0x74, 0x74, - 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x68, 0x65, 0x66, 0x2e, 0x61, - 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x52, 0x04, 0x68, 0x74, 0x74, 0x70, 0x22, - 0x59, 0x0a, 0x04, 0x48, 0x74, 0x74, 0x70, 0x12, 0x51, 0x0a, 0x17, 0x69, 0x6e, 0x63, 0x6c, 0x75, - 0x64, 0x65, 0x5f, 0x78, 0x5f, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x65, 0x64, 0x5f, 0x66, - 0x6f, 0x72, 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, 0x14, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x58, 0x46, 0x6f, - 0x72, 0x77, 0x61, 0x72, 0x64, 0x65, 0x64, 0x46, 0x6f, 0x72, 0x42, 0x2c, 0x5a, 0x2a, 0x67, 0x69, - 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x68, 0x65, 0x66, 0x2f, 0x61, 0x75, - 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x2f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x12, 0x69, 0x64, 0x6c, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x73, 0x22, + 0x62, 0x0a, 0x0e, 0x4c, 0x61, 0x72, 0x67, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6e, + 0x67, 0x12, 0x50, 0x0a, 0x16, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6c, 0x61, 0x72, 0x67, + 0x65, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6e, 0x67, 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, 0x14, 0x65, + 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x61, 0x72, 0x67, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x69, 0x6e, 0x67, 0x22, 0x3d, 0x0a, 0x05, 0x4e, 0x67, 0x69, 0x6e, 0x78, 0x12, 0x34, 0x0a, 0x04, + 0x68, 0x74, 0x74, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x68, 0x65, + 0x66, 0x2e, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x66, 0x72, 0x61, + 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x52, 0x04, 0x68, 0x74, + 0x74, 0x70, 0x22, 0x59, 0x0a, 0x04, 0x48, 0x74, 0x74, 0x70, 0x12, 0x51, 0x0a, 0x17, 0x69, 0x6e, + 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x78, 0x5f, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x65, + 0x64, 0x5f, 0x66, 0x6f, 0x72, 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, 0x14, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, + 0x58, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x65, 0x64, 0x46, 0x6f, 0x72, 0x42, 0x2c, 0x5a, + 0x2a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x68, 0x65, 0x66, + 0x2f, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x62, 0x06, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x33, } var ( @@ -5059,7 +5127,7 @@ func file_config_shared_global_proto_rawDescGZIP() []byte { return file_config_shared_global_proto_rawDescData } -var file_config_shared_global_proto_msgTypes = make([]protoimpl.MessageInfo, 58) +var file_config_shared_global_proto_msgTypes = make([]protoimpl.MessageInfo, 59) var file_config_shared_global_proto_goTypes = []interface{}{ (*GlobalConfig)(nil), // 0: chef.automate.infra.config.GlobalConfig (*V1)(nil), // 1: chef.automate.infra.config.V1 @@ -5083,57 +5151,58 @@ var file_config_shared_global_proto_goTypes = []interface{}{ (*External_Postgresql)(nil), // 19: chef.automate.infra.config.External.Postgresql (*External_Automate)(nil), // 20: chef.automate.infra.config.External.Automate (*External_Elasticsearch_Backup)(nil), // 21: chef.automate.infra.config.External.Elasticsearch.Backup - (*External_Elasticsearch_Authentication)(nil), // 22: chef.automate.infra.config.External.Elasticsearch.Authentication - (*External_Elasticsearch_SSL)(nil), // 23: chef.automate.infra.config.External.Elasticsearch.SSL - (*External_Elasticsearch_Backup_FsSettings)(nil), // 24: chef.automate.infra.config.External.Elasticsearch.Backup.FsSettings - (*External_Elasticsearch_Backup_S3Settings)(nil), // 25: chef.automate.infra.config.External.Elasticsearch.Backup.S3Settings - (*External_Elasticsearch_Backup_GCSSettings)(nil), // 26: chef.automate.infra.config.External.Elasticsearch.Backup.GCSSettings - (*External_Elasticsearch_Backup_FsSettings_OptionalSettings)(nil), // 27: chef.automate.infra.config.External.Elasticsearch.Backup.FsSettings.OptionalSettings - (*External_Elasticsearch_Authentication_BasicAuth)(nil), // 28: chef.automate.infra.config.External.Elasticsearch.Authentication.BasicAuth - (*External_Elasticsearch_Authentication_AwsElasticsearchAuth)(nil), // 29: chef.automate.infra.config.External.Elasticsearch.Authentication.AwsElasticsearchAuth - (*External_Opensearch_Backup)(nil), // 30: chef.automate.infra.config.External.Opensearch.Backup - (*External_Opensearch_Authentication)(nil), // 31: chef.automate.infra.config.External.Opensearch.Authentication - (*External_Opensearch_SSL)(nil), // 32: chef.automate.infra.config.External.Opensearch.SSL - (*External_Opensearch_Backup_FsSettings)(nil), // 33: chef.automate.infra.config.External.Opensearch.Backup.FsSettings - (*External_Opensearch_Backup_S3Settings)(nil), // 34: chef.automate.infra.config.External.Opensearch.Backup.S3Settings - (*External_Opensearch_Backup_GCSSettings)(nil), // 35: chef.automate.infra.config.External.Opensearch.Backup.GCSSettings - (*External_Opensearch_Backup_FsSettings_OptionalSettings)(nil), // 36: chef.automate.infra.config.External.Opensearch.Backup.FsSettings.OptionalSettings - (*External_Opensearch_Authentication_BasicAuth)(nil), // 37: chef.automate.infra.config.External.Opensearch.Authentication.BasicAuth - (*External_Opensearch_Authentication_AwsOpensearchAuth)(nil), // 38: chef.automate.infra.config.External.Opensearch.Authentication.AwsOpensearchAuth - (*External_Postgresql_Backup)(nil), // 39: chef.automate.infra.config.External.Postgresql.Backup - (*External_Postgresql_Authentication)(nil), // 40: chef.automate.infra.config.External.Postgresql.Authentication - (*External_Postgresql_SSL)(nil), // 41: chef.automate.infra.config.External.Postgresql.SSL - (*External_Postgresql_Authentication_PasswordAuthentication)(nil), // 42: chef.automate.infra.config.External.Postgresql.Authentication.PasswordAuthentication - (*External_Postgresql_Authentication_PasswordAuthentication_User)(nil), // 43: chef.automate.infra.config.External.Postgresql.Authentication.PasswordAuthentication.User - (*External_Automate_Authentication)(nil), // 44: chef.automate.infra.config.External.Automate.Authentication - (*External_Automate_SSL)(nil), // 45: chef.automate.infra.config.External.Automate.SSL - (*Backups_Filesystem)(nil), // 46: chef.automate.infra.config.Backups.Filesystem - (*Backups_S3)(nil), // 47: chef.automate.infra.config.Backups.S3 - (*Backups_GCS)(nil), // 48: chef.automate.infra.config.Backups.GCS - (*Backups_S3_AWSCredentials)(nil), // 49: chef.automate.infra.config.Backups.S3.AWSCredentials - (*Backups_S3_Elasticsearch)(nil), // 50: chef.automate.infra.config.Backups.S3.Elasticsearch - (*Backups_S3_Opensearch)(nil), // 51: chef.automate.infra.config.Backups.S3.Opensearch - (*Backups_S3_Bucket)(nil), // 52: chef.automate.infra.config.Backups.S3.Bucket - (*Backups_S3_SSL)(nil), // 53: chef.automate.infra.config.Backups.S3.SSL - (*Backups_GCS_GCPCredentials)(nil), // 54: chef.automate.infra.config.Backups.GCS.GCPCredentials - (*Backups_GCS_Elasticsearch)(nil), // 55: chef.automate.infra.config.Backups.GCS.Elasticsearch - (*Backups_GCS_Opensearch)(nil), // 56: chef.automate.infra.config.Backups.GCS.Opensearch - (*Backups_GCS_Bucket)(nil), // 57: chef.automate.infra.config.Backups.GCS.Bucket - (*wrapperspb.StringValue)(nil), // 58: google.protobuf.StringValue - (*FrontendTLSCredential)(nil), // 59: chef.automate.infra.config.FrontendTLSCredential - (*wrapperspb.BoolValue)(nil), // 60: google.protobuf.BoolValue - (*wrapperspb.Int32Value)(nil), // 61: google.protobuf.Int32Value - (*TLSCredentials)(nil), // 62: chef.automate.infra.config.TLSCredentials + (*External_Elasticsearch_Authentication)(nil), // 22: chef.automate.infra.config.External.Elasticsearch.Authentication + (*External_Elasticsearch_SSL)(nil), // 23: chef.automate.infra.config.External.Elasticsearch.SSL + (*External_Elasticsearch_Backup_FsSettings)(nil), // 24: chef.automate.infra.config.External.Elasticsearch.Backup.FsSettings + (*External_Elasticsearch_Backup_S3Settings)(nil), // 25: chef.automate.infra.config.External.Elasticsearch.Backup.S3Settings + (*External_Elasticsearch_Backup_GCSSettings)(nil), // 26: chef.automate.infra.config.External.Elasticsearch.Backup.GCSSettings + (*External_Elasticsearch_Backup_FsSettings_OptionalSettings)(nil), // 27: chef.automate.infra.config.External.Elasticsearch.Backup.FsSettings.OptionalSettings + (*External_Elasticsearch_Authentication_BasicAuth)(nil), // 28: chef.automate.infra.config.External.Elasticsearch.Authentication.BasicAuth + (*External_Elasticsearch_Authentication_AwsElasticsearchAuth)(nil), // 29: chef.automate.infra.config.External.Elasticsearch.Authentication.AwsElasticsearchAuth + (*External_Opensearch_Backup)(nil), // 30: chef.automate.infra.config.External.Opensearch.Backup + (*External_Opensearch_Authentication)(nil), // 31: chef.automate.infra.config.External.Opensearch.Authentication + (*External_Opensearch_SSL)(nil), // 32: chef.automate.infra.config.External.Opensearch.SSL + (*External_Opensearch_Backup_FsSettings)(nil), // 33: chef.automate.infra.config.External.Opensearch.Backup.FsSettings + (*External_Opensearch_Backup_S3Settings)(nil), // 34: chef.automate.infra.config.External.Opensearch.Backup.S3Settings + (*External_Opensearch_Backup_GCSSettings)(nil), // 35: chef.automate.infra.config.External.Opensearch.Backup.GCSSettings + (*External_Opensearch_Backup_FsSettings_OptionalSettings)(nil), // 36: chef.automate.infra.config.External.Opensearch.Backup.FsSettings.OptionalSettings + (*External_Opensearch_Authentication_BasicAuth)(nil), // 37: chef.automate.infra.config.External.Opensearch.Authentication.BasicAuth + (*External_Opensearch_Authentication_AwsOpensearchAuth)(nil), // 38: chef.automate.infra.config.External.Opensearch.Authentication.AwsOpensearchAuth + (*External_Postgresql_Backup)(nil), // 39: chef.automate.infra.config.External.Postgresql.Backup + (*External_Postgresql_Authentication)(nil), // 40: chef.automate.infra.config.External.Postgresql.Authentication + (*External_Postgresql_SSL)(nil), // 41: chef.automate.infra.config.External.Postgresql.SSL + (*External_Postgresql_Authentication_PasswordAuthentication)(nil), // 42: chef.automate.infra.config.External.Postgresql.Authentication.PasswordAuthentication + (*External_Postgresql_Authentication_PasswordAuthentication_SuperUser)(nil), // 43: chef.automate.infra.config.External.Postgresql.Authentication.PasswordAuthentication.SuperUser + (*External_Postgresql_Authentication_PasswordAuthentication_DBUser)(nil), // 44: chef.automate.infra.config.External.Postgresql.Authentication.PasswordAuthentication.DBUser + (*External_Automate_Authentication)(nil), // 45: chef.automate.infra.config.External.Automate.Authentication + (*External_Automate_SSL)(nil), // 46: chef.automate.infra.config.External.Automate.SSL + (*Backups_Filesystem)(nil), // 47: chef.automate.infra.config.Backups.Filesystem + (*Backups_S3)(nil), // 48: chef.automate.infra.config.Backups.S3 + (*Backups_GCS)(nil), // 49: chef.automate.infra.config.Backups.GCS + (*Backups_S3_AWSCredentials)(nil), // 50: chef.automate.infra.config.Backups.S3.AWSCredentials + (*Backups_S3_Elasticsearch)(nil), // 51: chef.automate.infra.config.Backups.S3.Elasticsearch + (*Backups_S3_Opensearch)(nil), // 52: chef.automate.infra.config.Backups.S3.Opensearch + (*Backups_S3_Bucket)(nil), // 53: chef.automate.infra.config.Backups.S3.Bucket + (*Backups_S3_SSL)(nil), // 54: chef.automate.infra.config.Backups.S3.SSL + (*Backups_GCS_GCPCredentials)(nil), // 55: chef.automate.infra.config.Backups.GCS.GCPCredentials + (*Backups_GCS_Elasticsearch)(nil), // 56: chef.automate.infra.config.Backups.GCS.Elasticsearch + (*Backups_GCS_Opensearch)(nil), // 57: chef.automate.infra.config.Backups.GCS.Opensearch + (*Backups_GCS_Bucket)(nil), // 58: chef.automate.infra.config.Backups.GCS.Bucket + (*wrapperspb.StringValue)(nil), // 59: google.protobuf.StringValue + (*FrontendTLSCredential)(nil), // 60: chef.automate.infra.config.FrontendTLSCredential + (*wrapperspb.BoolValue)(nil), // 61: google.protobuf.BoolValue + (*wrapperspb.Int32Value)(nil), // 62: google.protobuf.Int32Value + (*TLSCredentials)(nil), // 63: chef.automate.infra.config.TLSCredentials } var file_config_shared_global_proto_depIdxs = []int32{ 1, // 0: chef.automate.infra.config.GlobalConfig.v1:type_name -> chef.automate.infra.config.V1 - 58, // 1: chef.automate.infra.config.V1.fqdn:type_name -> google.protobuf.StringValue + 59, // 1: chef.automate.infra.config.V1.fqdn:type_name -> google.protobuf.StringValue 4, // 2: chef.automate.infra.config.V1.mlsa:type_name -> chef.automate.infra.config.Mlsa 5, // 3: chef.automate.infra.config.V1.proxy:type_name -> chef.automate.infra.config.Proxy 6, // 4: chef.automate.infra.config.V1.backups:type_name -> chef.automate.infra.config.Backups 7, // 5: chef.automate.infra.config.V1.log:type_name -> chef.automate.infra.config.Log 3, // 6: chef.automate.infra.config.V1.external:type_name -> chef.automate.infra.config.External - 59, // 7: chef.automate.infra.config.V1.frontend_tls:type_name -> chef.automate.infra.config.FrontendTLSCredential + 60, // 7: chef.automate.infra.config.V1.frontend_tls:type_name -> chef.automate.infra.config.FrontendTLSCredential 8, // 8: chef.automate.infra.config.V1.disclosure:type_name -> chef.automate.infra.config.Disclosure 9, // 9: chef.automate.infra.config.V1.banner:type_name -> chef.automate.infra.config.Banner 10, // 10: chef.automate.infra.config.V1.session_settings:type_name -> chef.automate.infra.config.SessionSettings @@ -5141,213 +5210,215 @@ var file_config_shared_global_proto_depIdxs = []int32{ 15, // 12: chef.automate.infra.config.V1.svc:type_name -> chef.automate.infra.config.V1.Service 11, // 13: chef.automate.infra.config.V1.large_reporting:type_name -> chef.automate.infra.config.LargeReporting 2, // 14: chef.automate.infra.config.V1.chef_server:type_name -> chef.automate.infra.config.ChefServer - 58, // 15: chef.automate.infra.config.ChefServer.fqdn:type_name -> google.protobuf.StringValue - 58, // 16: chef.automate.infra.config.ChefServer.root_ca:type_name -> google.protobuf.StringValue + 59, // 15: chef.automate.infra.config.ChefServer.fqdn:type_name -> google.protobuf.StringValue + 59, // 16: chef.automate.infra.config.ChefServer.root_ca:type_name -> google.protobuf.StringValue 16, // 17: chef.automate.infra.config.External.elasticsearch:type_name -> chef.automate.infra.config.External.Elasticsearch 19, // 18: chef.automate.infra.config.External.postgresql:type_name -> chef.automate.infra.config.External.Postgresql 20, // 19: chef.automate.infra.config.External.automate:type_name -> chef.automate.infra.config.External.Automate 17, // 20: chef.automate.infra.config.External.opensearch:type_name -> chef.automate.infra.config.External.Opensearch 18, // 21: chef.automate.infra.config.External.minio:type_name -> chef.automate.infra.config.External.Minio - 60, // 22: chef.automate.infra.config.Mlsa.accept:type_name -> google.protobuf.BoolValue - 58, // 23: chef.automate.infra.config.Proxy.host:type_name -> google.protobuf.StringValue - 61, // 24: chef.automate.infra.config.Proxy.port:type_name -> google.protobuf.Int32Value - 58, // 25: chef.automate.infra.config.Proxy.user:type_name -> google.protobuf.StringValue - 58, // 26: chef.automate.infra.config.Proxy.password:type_name -> google.protobuf.StringValue - 58, // 27: chef.automate.infra.config.Backups.location:type_name -> google.protobuf.StringValue - 46, // 28: chef.automate.infra.config.Backups.filesystem:type_name -> chef.automate.infra.config.Backups.Filesystem - 47, // 29: chef.automate.infra.config.Backups.s3:type_name -> chef.automate.infra.config.Backups.S3 - 48, // 30: chef.automate.infra.config.Backups.gcs:type_name -> chef.automate.infra.config.Backups.GCS - 58, // 31: chef.automate.infra.config.Log.level:type_name -> google.protobuf.StringValue - 58, // 32: chef.automate.infra.config.Log.format:type_name -> google.protobuf.StringValue - 60, // 33: chef.automate.infra.config.Log.redirect_sys_log:type_name -> google.protobuf.BoolValue - 58, // 34: chef.automate.infra.config.Log.redirect_log_file_path:type_name -> google.protobuf.StringValue - 60, // 35: chef.automate.infra.config.Log.compress_rotated_logs:type_name -> google.protobuf.BoolValue - 58, // 36: chef.automate.infra.config.Log.max_size_rotate_logs:type_name -> google.protobuf.StringValue - 61, // 37: chef.automate.infra.config.Log.max_number_rotated_logs:type_name -> google.protobuf.Int32Value - 61, // 38: chef.automate.infra.config.Log.rate_limit_interval:type_name -> google.protobuf.Int32Value - 61, // 39: chef.automate.infra.config.Log.rate_limit_burst:type_name -> google.protobuf.Int32Value - 60, // 40: chef.automate.infra.config.Disclosure.show:type_name -> google.protobuf.BoolValue - 58, // 41: chef.automate.infra.config.Disclosure.message_file_path:type_name -> google.protobuf.StringValue - 60, // 42: chef.automate.infra.config.Banner.show:type_name -> google.protobuf.BoolValue - 58, // 43: chef.automate.infra.config.Banner.message:type_name -> google.protobuf.StringValue - 58, // 44: chef.automate.infra.config.Banner.background_color:type_name -> google.protobuf.StringValue - 58, // 45: chef.automate.infra.config.Banner.text_color:type_name -> google.protobuf.StringValue - 60, // 46: chef.automate.infra.config.SessionSettings.enable_idle_timeout:type_name -> google.protobuf.BoolValue - 61, // 47: chef.automate.infra.config.SessionSettings.idle_timeout_minutes:type_name -> google.protobuf.Int32Value - 60, // 48: chef.automate.infra.config.LargeReporting.enable_large_reporting:type_name -> google.protobuf.BoolValue + 61, // 22: chef.automate.infra.config.Mlsa.accept:type_name -> google.protobuf.BoolValue + 59, // 23: chef.automate.infra.config.Proxy.host:type_name -> google.protobuf.StringValue + 62, // 24: chef.automate.infra.config.Proxy.port:type_name -> google.protobuf.Int32Value + 59, // 25: chef.automate.infra.config.Proxy.user:type_name -> google.protobuf.StringValue + 59, // 26: chef.automate.infra.config.Proxy.password:type_name -> google.protobuf.StringValue + 59, // 27: chef.automate.infra.config.Backups.location:type_name -> google.protobuf.StringValue + 47, // 28: chef.automate.infra.config.Backups.filesystem:type_name -> chef.automate.infra.config.Backups.Filesystem + 48, // 29: chef.automate.infra.config.Backups.s3:type_name -> chef.automate.infra.config.Backups.S3 + 49, // 30: chef.automate.infra.config.Backups.gcs:type_name -> chef.automate.infra.config.Backups.GCS + 59, // 31: chef.automate.infra.config.Log.level:type_name -> google.protobuf.StringValue + 59, // 32: chef.automate.infra.config.Log.format:type_name -> google.protobuf.StringValue + 61, // 33: chef.automate.infra.config.Log.redirect_sys_log:type_name -> google.protobuf.BoolValue + 59, // 34: chef.automate.infra.config.Log.redirect_log_file_path:type_name -> google.protobuf.StringValue + 61, // 35: chef.automate.infra.config.Log.compress_rotated_logs:type_name -> google.protobuf.BoolValue + 59, // 36: chef.automate.infra.config.Log.max_size_rotate_logs:type_name -> google.protobuf.StringValue + 62, // 37: chef.automate.infra.config.Log.max_number_rotated_logs:type_name -> google.protobuf.Int32Value + 62, // 38: chef.automate.infra.config.Log.rate_limit_interval:type_name -> google.protobuf.Int32Value + 62, // 39: chef.automate.infra.config.Log.rate_limit_burst:type_name -> google.protobuf.Int32Value + 61, // 40: chef.automate.infra.config.Disclosure.show:type_name -> google.protobuf.BoolValue + 59, // 41: chef.automate.infra.config.Disclosure.message_file_path:type_name -> google.protobuf.StringValue + 61, // 42: chef.automate.infra.config.Banner.show:type_name -> google.protobuf.BoolValue + 59, // 43: chef.automate.infra.config.Banner.message:type_name -> google.protobuf.StringValue + 59, // 44: chef.automate.infra.config.Banner.background_color:type_name -> google.protobuf.StringValue + 59, // 45: chef.automate.infra.config.Banner.text_color:type_name -> google.protobuf.StringValue + 61, // 46: chef.automate.infra.config.SessionSettings.enable_idle_timeout:type_name -> google.protobuf.BoolValue + 62, // 47: chef.automate.infra.config.SessionSettings.idle_timeout_minutes:type_name -> google.protobuf.Int32Value + 61, // 48: chef.automate.infra.config.LargeReporting.enable_large_reporting:type_name -> google.protobuf.BoolValue 13, // 49: chef.automate.infra.config.Nginx.http:type_name -> chef.automate.infra.config.Http - 60, // 50: chef.automate.infra.config.Http.include_x_forwarded_for:type_name -> google.protobuf.BoolValue - 62, // 51: chef.automate.infra.config.V1.System.tls:type_name -> chef.automate.infra.config.TLSCredentials + 61, // 50: chef.automate.infra.config.Http.include_x_forwarded_for:type_name -> google.protobuf.BoolValue + 63, // 51: chef.automate.infra.config.V1.System.tls:type_name -> chef.automate.infra.config.TLSCredentials 12, // 52: chef.automate.infra.config.V1.System.ngx:type_name -> chef.automate.infra.config.Nginx - 60, // 53: chef.automate.infra.config.External.Elasticsearch.enable:type_name -> google.protobuf.BoolValue - 58, // 54: chef.automate.infra.config.External.Elasticsearch.nodes:type_name -> google.protobuf.StringValue + 61, // 53: chef.automate.infra.config.External.Elasticsearch.enable:type_name -> google.protobuf.BoolValue + 59, // 54: chef.automate.infra.config.External.Elasticsearch.nodes:type_name -> google.protobuf.StringValue 21, // 55: chef.automate.infra.config.External.Elasticsearch.backup:type_name -> chef.automate.infra.config.External.Elasticsearch.Backup 22, // 56: chef.automate.infra.config.External.Elasticsearch.auth:type_name -> chef.automate.infra.config.External.Elasticsearch.Authentication 23, // 57: chef.automate.infra.config.External.Elasticsearch.ssl:type_name -> chef.automate.infra.config.External.Elasticsearch.SSL - 60, // 58: chef.automate.infra.config.External.Opensearch.enable:type_name -> google.protobuf.BoolValue - 58, // 59: chef.automate.infra.config.External.Opensearch.nodes:type_name -> google.protobuf.StringValue + 61, // 58: chef.automate.infra.config.External.Opensearch.enable:type_name -> google.protobuf.BoolValue + 59, // 59: chef.automate.infra.config.External.Opensearch.nodes:type_name -> google.protobuf.StringValue 30, // 60: chef.automate.infra.config.External.Opensearch.backup:type_name -> chef.automate.infra.config.External.Opensearch.Backup 31, // 61: chef.automate.infra.config.External.Opensearch.auth:type_name -> chef.automate.infra.config.External.Opensearch.Authentication 32, // 62: chef.automate.infra.config.External.Opensearch.ssl:type_name -> chef.automate.infra.config.External.Opensearch.SSL - 58, // 63: chef.automate.infra.config.External.Minio.endpoint:type_name -> google.protobuf.StringValue - 58, // 64: chef.automate.infra.config.External.Minio.root_user:type_name -> google.protobuf.StringValue - 58, // 65: chef.automate.infra.config.External.Minio.root_password:type_name -> google.protobuf.StringValue - 60, // 66: chef.automate.infra.config.External.Minio.enable_ssl:type_name -> google.protobuf.BoolValue - 58, // 67: chef.automate.infra.config.External.Minio.cert:type_name -> google.protobuf.StringValue - 61, // 68: chef.automate.infra.config.External.Minio.concurrent_open_search_requests:type_name -> google.protobuf.Int32Value - 61, // 69: chef.automate.infra.config.External.Minio.concurrent_minio_requests:type_name -> google.protobuf.Int32Value - 60, // 70: chef.automate.infra.config.External.Postgresql.enable:type_name -> google.protobuf.BoolValue - 58, // 71: chef.automate.infra.config.External.Postgresql.nodes:type_name -> google.protobuf.StringValue + 59, // 63: chef.automate.infra.config.External.Minio.endpoint:type_name -> google.protobuf.StringValue + 59, // 64: chef.automate.infra.config.External.Minio.root_user:type_name -> google.protobuf.StringValue + 59, // 65: chef.automate.infra.config.External.Minio.root_password:type_name -> google.protobuf.StringValue + 61, // 66: chef.automate.infra.config.External.Minio.enable_ssl:type_name -> google.protobuf.BoolValue + 59, // 67: chef.automate.infra.config.External.Minio.cert:type_name -> google.protobuf.StringValue + 62, // 68: chef.automate.infra.config.External.Minio.concurrent_open_search_requests:type_name -> google.protobuf.Int32Value + 62, // 69: chef.automate.infra.config.External.Minio.concurrent_minio_requests:type_name -> google.protobuf.Int32Value + 61, // 70: chef.automate.infra.config.External.Postgresql.enable:type_name -> google.protobuf.BoolValue + 59, // 71: chef.automate.infra.config.External.Postgresql.nodes:type_name -> google.protobuf.StringValue 39, // 72: chef.automate.infra.config.External.Postgresql.backup:type_name -> chef.automate.infra.config.External.Postgresql.Backup 40, // 73: chef.automate.infra.config.External.Postgresql.auth:type_name -> chef.automate.infra.config.External.Postgresql.Authentication 41, // 74: chef.automate.infra.config.External.Postgresql.ssl:type_name -> chef.automate.infra.config.External.Postgresql.SSL - 60, // 75: chef.automate.infra.config.External.Automate.enable:type_name -> google.protobuf.BoolValue - 58, // 76: chef.automate.infra.config.External.Automate.node:type_name -> google.protobuf.StringValue - 44, // 77: chef.automate.infra.config.External.Automate.auth:type_name -> chef.automate.infra.config.External.Automate.Authentication - 45, // 78: chef.automate.infra.config.External.Automate.ssl:type_name -> chef.automate.infra.config.External.Automate.SSL - 60, // 79: chef.automate.infra.config.External.Elasticsearch.Backup.enable:type_name -> google.protobuf.BoolValue - 58, // 80: chef.automate.infra.config.External.Elasticsearch.Backup.location:type_name -> google.protobuf.StringValue + 61, // 75: chef.automate.infra.config.External.Automate.enable:type_name -> google.protobuf.BoolValue + 59, // 76: chef.automate.infra.config.External.Automate.node:type_name -> google.protobuf.StringValue + 45, // 77: chef.automate.infra.config.External.Automate.auth:type_name -> chef.automate.infra.config.External.Automate.Authentication + 46, // 78: chef.automate.infra.config.External.Automate.ssl:type_name -> chef.automate.infra.config.External.Automate.SSL + 61, // 79: chef.automate.infra.config.External.Elasticsearch.Backup.enable:type_name -> google.protobuf.BoolValue + 59, // 80: chef.automate.infra.config.External.Elasticsearch.Backup.location:type_name -> google.protobuf.StringValue 24, // 81: chef.automate.infra.config.External.Elasticsearch.Backup.fs:type_name -> chef.automate.infra.config.External.Elasticsearch.Backup.FsSettings 25, // 82: chef.automate.infra.config.External.Elasticsearch.Backup.s3:type_name -> chef.automate.infra.config.External.Elasticsearch.Backup.S3Settings 26, // 83: chef.automate.infra.config.External.Elasticsearch.Backup.gcs:type_name -> chef.automate.infra.config.External.Elasticsearch.Backup.GCSSettings - 58, // 84: chef.automate.infra.config.External.Elasticsearch.Authentication.scheme:type_name -> google.protobuf.StringValue + 59, // 84: chef.automate.infra.config.External.Elasticsearch.Authentication.scheme:type_name -> google.protobuf.StringValue 28, // 85: chef.automate.infra.config.External.Elasticsearch.Authentication.basic_auth:type_name -> chef.automate.infra.config.External.Elasticsearch.Authentication.BasicAuth 29, // 86: chef.automate.infra.config.External.Elasticsearch.Authentication.aws_es:type_name -> chef.automate.infra.config.External.Elasticsearch.Authentication.AwsElasticsearchAuth - 58, // 87: chef.automate.infra.config.External.Elasticsearch.SSL.root_cert:type_name -> google.protobuf.StringValue - 58, // 88: chef.automate.infra.config.External.Elasticsearch.SSL.server_name:type_name -> google.protobuf.StringValue - 58, // 89: chef.automate.infra.config.External.Elasticsearch.SSL.root_cert_file:type_name -> google.protobuf.StringValue - 58, // 90: chef.automate.infra.config.External.Elasticsearch.Backup.FsSettings.path:type_name -> google.protobuf.StringValue + 59, // 87: chef.automate.infra.config.External.Elasticsearch.SSL.root_cert:type_name -> google.protobuf.StringValue + 59, // 88: chef.automate.infra.config.External.Elasticsearch.SSL.server_name:type_name -> google.protobuf.StringValue + 59, // 89: chef.automate.infra.config.External.Elasticsearch.SSL.root_cert_file:type_name -> google.protobuf.StringValue + 59, // 90: chef.automate.infra.config.External.Elasticsearch.Backup.FsSettings.path:type_name -> google.protobuf.StringValue 27, // 91: chef.automate.infra.config.External.Elasticsearch.Backup.FsSettings.settings:type_name -> chef.automate.infra.config.External.Elasticsearch.Backup.FsSettings.OptionalSettings - 58, // 92: chef.automate.infra.config.External.Elasticsearch.Backup.S3Settings.bucket:type_name -> google.protobuf.StringValue - 58, // 93: chef.automate.infra.config.External.Elasticsearch.Backup.S3Settings.client:type_name -> google.protobuf.StringValue - 58, // 94: chef.automate.infra.config.External.Elasticsearch.Backup.S3Settings.base_path:type_name -> google.protobuf.StringValue - 50, // 95: chef.automate.infra.config.External.Elasticsearch.Backup.S3Settings.settings:type_name -> chef.automate.infra.config.Backups.S3.Elasticsearch - 58, // 96: chef.automate.infra.config.External.Elasticsearch.Backup.GCSSettings.bucket:type_name -> google.protobuf.StringValue - 58, // 97: chef.automate.infra.config.External.Elasticsearch.Backup.GCSSettings.client:type_name -> google.protobuf.StringValue - 58, // 98: chef.automate.infra.config.External.Elasticsearch.Backup.GCSSettings.base_path:type_name -> google.protobuf.StringValue - 55, // 99: chef.automate.infra.config.External.Elasticsearch.Backup.GCSSettings.settings:type_name -> chef.automate.infra.config.Backups.GCS.Elasticsearch - 58, // 100: chef.automate.infra.config.External.Elasticsearch.Backup.FsSettings.OptionalSettings.max_snapshot_bytes_per_sec:type_name -> google.protobuf.StringValue - 58, // 101: chef.automate.infra.config.External.Elasticsearch.Backup.FsSettings.OptionalSettings.max_restore_bytes_per_sec:type_name -> google.protobuf.StringValue - 58, // 102: chef.automate.infra.config.External.Elasticsearch.Authentication.BasicAuth.username:type_name -> google.protobuf.StringValue - 58, // 103: chef.automate.infra.config.External.Elasticsearch.Authentication.BasicAuth.password:type_name -> google.protobuf.StringValue - 58, // 104: chef.automate.infra.config.External.Elasticsearch.Authentication.AwsElasticsearchAuth.username:type_name -> google.protobuf.StringValue - 58, // 105: chef.automate.infra.config.External.Elasticsearch.Authentication.AwsElasticsearchAuth.password:type_name -> google.protobuf.StringValue - 58, // 106: chef.automate.infra.config.External.Elasticsearch.Authentication.AwsElasticsearchAuth.access_key:type_name -> google.protobuf.StringValue - 58, // 107: chef.automate.infra.config.External.Elasticsearch.Authentication.AwsElasticsearchAuth.secret_key:type_name -> google.protobuf.StringValue - 60, // 108: chef.automate.infra.config.External.Opensearch.Backup.enable:type_name -> google.protobuf.BoolValue - 58, // 109: chef.automate.infra.config.External.Opensearch.Backup.location:type_name -> google.protobuf.StringValue + 59, // 92: chef.automate.infra.config.External.Elasticsearch.Backup.S3Settings.bucket:type_name -> google.protobuf.StringValue + 59, // 93: chef.automate.infra.config.External.Elasticsearch.Backup.S3Settings.client:type_name -> google.protobuf.StringValue + 59, // 94: chef.automate.infra.config.External.Elasticsearch.Backup.S3Settings.base_path:type_name -> google.protobuf.StringValue + 51, // 95: chef.automate.infra.config.External.Elasticsearch.Backup.S3Settings.settings:type_name -> chef.automate.infra.config.Backups.S3.Elasticsearch + 59, // 96: chef.automate.infra.config.External.Elasticsearch.Backup.GCSSettings.bucket:type_name -> google.protobuf.StringValue + 59, // 97: chef.automate.infra.config.External.Elasticsearch.Backup.GCSSettings.client:type_name -> google.protobuf.StringValue + 59, // 98: chef.automate.infra.config.External.Elasticsearch.Backup.GCSSettings.base_path:type_name -> google.protobuf.StringValue + 56, // 99: chef.automate.infra.config.External.Elasticsearch.Backup.GCSSettings.settings:type_name -> chef.automate.infra.config.Backups.GCS.Elasticsearch + 59, // 100: chef.automate.infra.config.External.Elasticsearch.Backup.FsSettings.OptionalSettings.max_snapshot_bytes_per_sec:type_name -> google.protobuf.StringValue + 59, // 101: chef.automate.infra.config.External.Elasticsearch.Backup.FsSettings.OptionalSettings.max_restore_bytes_per_sec:type_name -> google.protobuf.StringValue + 59, // 102: chef.automate.infra.config.External.Elasticsearch.Authentication.BasicAuth.username:type_name -> google.protobuf.StringValue + 59, // 103: chef.automate.infra.config.External.Elasticsearch.Authentication.BasicAuth.password:type_name -> google.protobuf.StringValue + 59, // 104: chef.automate.infra.config.External.Elasticsearch.Authentication.AwsElasticsearchAuth.username:type_name -> google.protobuf.StringValue + 59, // 105: chef.automate.infra.config.External.Elasticsearch.Authentication.AwsElasticsearchAuth.password:type_name -> google.protobuf.StringValue + 59, // 106: chef.automate.infra.config.External.Elasticsearch.Authentication.AwsElasticsearchAuth.access_key:type_name -> google.protobuf.StringValue + 59, // 107: chef.automate.infra.config.External.Elasticsearch.Authentication.AwsElasticsearchAuth.secret_key:type_name -> google.protobuf.StringValue + 61, // 108: chef.automate.infra.config.External.Opensearch.Backup.enable:type_name -> google.protobuf.BoolValue + 59, // 109: chef.automate.infra.config.External.Opensearch.Backup.location:type_name -> google.protobuf.StringValue 33, // 110: chef.automate.infra.config.External.Opensearch.Backup.fs:type_name -> chef.automate.infra.config.External.Opensearch.Backup.FsSettings 34, // 111: chef.automate.infra.config.External.Opensearch.Backup.s3:type_name -> chef.automate.infra.config.External.Opensearch.Backup.S3Settings 35, // 112: chef.automate.infra.config.External.Opensearch.Backup.gcs:type_name -> chef.automate.infra.config.External.Opensearch.Backup.GCSSettings - 58, // 113: chef.automate.infra.config.External.Opensearch.Authentication.scheme:type_name -> google.protobuf.StringValue + 59, // 113: chef.automate.infra.config.External.Opensearch.Authentication.scheme:type_name -> google.protobuf.StringValue 37, // 114: chef.automate.infra.config.External.Opensearch.Authentication.basic_auth:type_name -> chef.automate.infra.config.External.Opensearch.Authentication.BasicAuth 38, // 115: chef.automate.infra.config.External.Opensearch.Authentication.aws_os:type_name -> chef.automate.infra.config.External.Opensearch.Authentication.AwsOpensearchAuth - 58, // 116: chef.automate.infra.config.External.Opensearch.SSL.root_cert:type_name -> google.protobuf.StringValue - 58, // 117: chef.automate.infra.config.External.Opensearch.SSL.server_name:type_name -> google.protobuf.StringValue - 58, // 118: chef.automate.infra.config.External.Opensearch.SSL.root_cert_file:type_name -> google.protobuf.StringValue - 58, // 119: chef.automate.infra.config.External.Opensearch.Backup.FsSettings.path:type_name -> google.protobuf.StringValue + 59, // 116: chef.automate.infra.config.External.Opensearch.SSL.root_cert:type_name -> google.protobuf.StringValue + 59, // 117: chef.automate.infra.config.External.Opensearch.SSL.server_name:type_name -> google.protobuf.StringValue + 59, // 118: chef.automate.infra.config.External.Opensearch.SSL.root_cert_file:type_name -> google.protobuf.StringValue + 59, // 119: chef.automate.infra.config.External.Opensearch.Backup.FsSettings.path:type_name -> google.protobuf.StringValue 36, // 120: chef.automate.infra.config.External.Opensearch.Backup.FsSettings.settings:type_name -> chef.automate.infra.config.External.Opensearch.Backup.FsSettings.OptionalSettings - 58, // 121: chef.automate.infra.config.External.Opensearch.Backup.S3Settings.bucket:type_name -> google.protobuf.StringValue - 58, // 122: chef.automate.infra.config.External.Opensearch.Backup.S3Settings.client:type_name -> google.protobuf.StringValue - 58, // 123: chef.automate.infra.config.External.Opensearch.Backup.S3Settings.base_path:type_name -> google.protobuf.StringValue - 51, // 124: chef.automate.infra.config.External.Opensearch.Backup.S3Settings.settings:type_name -> chef.automate.infra.config.Backups.S3.Opensearch - 58, // 125: chef.automate.infra.config.External.Opensearch.Backup.GCSSettings.bucket:type_name -> google.protobuf.StringValue - 58, // 126: chef.automate.infra.config.External.Opensearch.Backup.GCSSettings.client:type_name -> google.protobuf.StringValue - 58, // 127: chef.automate.infra.config.External.Opensearch.Backup.GCSSettings.base_path:type_name -> google.protobuf.StringValue - 56, // 128: chef.automate.infra.config.External.Opensearch.Backup.GCSSettings.settings:type_name -> chef.automate.infra.config.Backups.GCS.Opensearch - 58, // 129: chef.automate.infra.config.External.Opensearch.Backup.FsSettings.OptionalSettings.max_snapshot_bytes_per_sec:type_name -> google.protobuf.StringValue - 58, // 130: chef.automate.infra.config.External.Opensearch.Backup.FsSettings.OptionalSettings.max_restore_bytes_per_sec:type_name -> google.protobuf.StringValue - 58, // 131: chef.automate.infra.config.External.Opensearch.Authentication.BasicAuth.username:type_name -> google.protobuf.StringValue - 58, // 132: chef.automate.infra.config.External.Opensearch.Authentication.BasicAuth.password:type_name -> google.protobuf.StringValue - 58, // 133: chef.automate.infra.config.External.Opensearch.Authentication.AwsOpensearchAuth.username:type_name -> google.protobuf.StringValue - 58, // 134: chef.automate.infra.config.External.Opensearch.Authentication.AwsOpensearchAuth.password:type_name -> google.protobuf.StringValue - 58, // 135: chef.automate.infra.config.External.Opensearch.Authentication.AwsOpensearchAuth.access_key:type_name -> google.protobuf.StringValue - 58, // 136: chef.automate.infra.config.External.Opensearch.Authentication.AwsOpensearchAuth.secret_key:type_name -> google.protobuf.StringValue - 60, // 137: chef.automate.infra.config.External.Postgresql.Backup.enable:type_name -> google.protobuf.BoolValue - 58, // 138: chef.automate.infra.config.External.Postgresql.Authentication.scheme:type_name -> google.protobuf.StringValue + 59, // 121: chef.automate.infra.config.External.Opensearch.Backup.S3Settings.bucket:type_name -> google.protobuf.StringValue + 59, // 122: chef.automate.infra.config.External.Opensearch.Backup.S3Settings.client:type_name -> google.protobuf.StringValue + 59, // 123: chef.automate.infra.config.External.Opensearch.Backup.S3Settings.base_path:type_name -> google.protobuf.StringValue + 52, // 124: chef.automate.infra.config.External.Opensearch.Backup.S3Settings.settings:type_name -> chef.automate.infra.config.Backups.S3.Opensearch + 59, // 125: chef.automate.infra.config.External.Opensearch.Backup.GCSSettings.bucket:type_name -> google.protobuf.StringValue + 59, // 126: chef.automate.infra.config.External.Opensearch.Backup.GCSSettings.client:type_name -> google.protobuf.StringValue + 59, // 127: chef.automate.infra.config.External.Opensearch.Backup.GCSSettings.base_path:type_name -> google.protobuf.StringValue + 57, // 128: chef.automate.infra.config.External.Opensearch.Backup.GCSSettings.settings:type_name -> chef.automate.infra.config.Backups.GCS.Opensearch + 59, // 129: chef.automate.infra.config.External.Opensearch.Backup.FsSettings.OptionalSettings.max_snapshot_bytes_per_sec:type_name -> google.protobuf.StringValue + 59, // 130: chef.automate.infra.config.External.Opensearch.Backup.FsSettings.OptionalSettings.max_restore_bytes_per_sec:type_name -> google.protobuf.StringValue + 59, // 131: chef.automate.infra.config.External.Opensearch.Authentication.BasicAuth.username:type_name -> google.protobuf.StringValue + 59, // 132: chef.automate.infra.config.External.Opensearch.Authentication.BasicAuth.password:type_name -> google.protobuf.StringValue + 59, // 133: chef.automate.infra.config.External.Opensearch.Authentication.AwsOpensearchAuth.username:type_name -> google.protobuf.StringValue + 59, // 134: chef.automate.infra.config.External.Opensearch.Authentication.AwsOpensearchAuth.password:type_name -> google.protobuf.StringValue + 59, // 135: chef.automate.infra.config.External.Opensearch.Authentication.AwsOpensearchAuth.access_key:type_name -> google.protobuf.StringValue + 59, // 136: chef.automate.infra.config.External.Opensearch.Authentication.AwsOpensearchAuth.secret_key:type_name -> google.protobuf.StringValue + 61, // 137: chef.automate.infra.config.External.Postgresql.Backup.enable:type_name -> google.protobuf.BoolValue + 59, // 138: chef.automate.infra.config.External.Postgresql.Authentication.scheme:type_name -> google.protobuf.StringValue 42, // 139: chef.automate.infra.config.External.Postgresql.Authentication.password:type_name -> chef.automate.infra.config.External.Postgresql.Authentication.PasswordAuthentication - 58, // 140: chef.automate.infra.config.External.Postgresql.SSL.mode:type_name -> google.protobuf.StringValue - 58, // 141: chef.automate.infra.config.External.Postgresql.SSL.cert:type_name -> google.protobuf.StringValue - 58, // 142: chef.automate.infra.config.External.Postgresql.SSL.key:type_name -> google.protobuf.StringValue - 58, // 143: chef.automate.infra.config.External.Postgresql.SSL.root_cert:type_name -> google.protobuf.StringValue - 60, // 144: chef.automate.infra.config.External.Postgresql.SSL.enable:type_name -> google.protobuf.BoolValue - 43, // 145: chef.automate.infra.config.External.Postgresql.Authentication.PasswordAuthentication.superuser:type_name -> chef.automate.infra.config.External.Postgresql.Authentication.PasswordAuthentication.User - 43, // 146: chef.automate.infra.config.External.Postgresql.Authentication.PasswordAuthentication.dbuser:type_name -> chef.automate.infra.config.External.Postgresql.Authentication.PasswordAuthentication.User - 58, // 147: chef.automate.infra.config.External.Postgresql.Authentication.PasswordAuthentication.User.username:type_name -> google.protobuf.StringValue - 58, // 148: chef.automate.infra.config.External.Postgresql.Authentication.PasswordAuthentication.User.password:type_name -> google.protobuf.StringValue - 58, // 149: chef.automate.infra.config.External.Automate.Authentication.scheme:type_name -> google.protobuf.StringValue - 58, // 150: chef.automate.infra.config.External.Automate.Authentication.token:type_name -> google.protobuf.StringValue - 58, // 151: chef.automate.infra.config.External.Automate.SSL.root_cert:type_name -> google.protobuf.StringValue - 58, // 152: chef.automate.infra.config.External.Automate.SSL.server_name:type_name -> google.protobuf.StringValue - 58, // 153: chef.automate.infra.config.Backups.Filesystem.path:type_name -> google.protobuf.StringValue - 58, // 154: chef.automate.infra.config.Backups.Filesystem.es_max_snapshot_bytes_per_sec:type_name -> google.protobuf.StringValue - 58, // 155: chef.automate.infra.config.Backups.Filesystem.es_max_restore_bytes_per_sec:type_name -> google.protobuf.StringValue - 49, // 156: chef.automate.infra.config.Backups.S3.credentials:type_name -> chef.automate.infra.config.Backups.S3.AWSCredentials - 50, // 157: chef.automate.infra.config.Backups.S3.es:type_name -> chef.automate.infra.config.Backups.S3.Elasticsearch - 52, // 158: chef.automate.infra.config.Backups.S3.bucket:type_name -> chef.automate.infra.config.Backups.S3.Bucket - 53, // 159: chef.automate.infra.config.Backups.S3.ssl:type_name -> chef.automate.infra.config.Backups.S3.SSL - 51, // 160: chef.automate.infra.config.Backups.S3.os:type_name -> chef.automate.infra.config.Backups.S3.Opensearch - 54, // 161: chef.automate.infra.config.Backups.GCS.credentials:type_name -> chef.automate.infra.config.Backups.GCS.GCPCredentials - 55, // 162: chef.automate.infra.config.Backups.GCS.es:type_name -> chef.automate.infra.config.Backups.GCS.Elasticsearch - 57, // 163: chef.automate.infra.config.Backups.GCS.bucket:type_name -> chef.automate.infra.config.Backups.GCS.Bucket - 56, // 164: chef.automate.infra.config.Backups.GCS.os:type_name -> chef.automate.infra.config.Backups.GCS.Opensearch - 58, // 165: chef.automate.infra.config.Backups.S3.AWSCredentials.access_key:type_name -> google.protobuf.StringValue - 58, // 166: chef.automate.infra.config.Backups.S3.AWSCredentials.secret_key:type_name -> google.protobuf.StringValue - 58, // 167: chef.automate.infra.config.Backups.S3.AWSCredentials.session_token:type_name -> google.protobuf.StringValue - 60, // 168: chef.automate.infra.config.Backups.S3.Elasticsearch.compress:type_name -> google.protobuf.BoolValue - 60, // 169: chef.automate.infra.config.Backups.S3.Elasticsearch.server_side_encryption:type_name -> google.protobuf.BoolValue - 58, // 170: chef.automate.infra.config.Backups.S3.Elasticsearch.buffer_size:type_name -> google.protobuf.StringValue - 58, // 171: chef.automate.infra.config.Backups.S3.Elasticsearch.canned_acl:type_name -> google.protobuf.StringValue - 58, // 172: chef.automate.infra.config.Backups.S3.Elasticsearch.storage_class:type_name -> google.protobuf.StringValue - 58, // 173: chef.automate.infra.config.Backups.S3.Elasticsearch.max_snapshot_bytes_per_sec:type_name -> google.protobuf.StringValue - 58, // 174: chef.automate.infra.config.Backups.S3.Elasticsearch.max_restore_bytes_per_sec:type_name -> google.protobuf.StringValue - 58, // 175: chef.automate.infra.config.Backups.S3.Elasticsearch.chunk_size:type_name -> google.protobuf.StringValue - 58, // 176: chef.automate.infra.config.Backups.S3.Elasticsearch.read_timeout:type_name -> google.protobuf.StringValue - 61, // 177: chef.automate.infra.config.Backups.S3.Elasticsearch.max_retries:type_name -> google.protobuf.Int32Value - 60, // 178: chef.automate.infra.config.Backups.S3.Elasticsearch.use_throttle_retries:type_name -> google.protobuf.BoolValue - 58, // 179: chef.automate.infra.config.Backups.S3.Elasticsearch.protocol:type_name -> google.protobuf.StringValue - 58, // 180: chef.automate.infra.config.Backups.S3.Elasticsearch.region:type_name -> google.protobuf.StringValue - 58, // 181: chef.automate.infra.config.Backups.S3.Elasticsearch.role_arn:type_name -> google.protobuf.StringValue - 60, // 182: chef.automate.infra.config.Backups.S3.Opensearch.compress:type_name -> google.protobuf.BoolValue - 60, // 183: chef.automate.infra.config.Backups.S3.Opensearch.server_side_encryption:type_name -> google.protobuf.BoolValue - 58, // 184: chef.automate.infra.config.Backups.S3.Opensearch.buffer_size:type_name -> google.protobuf.StringValue - 58, // 185: chef.automate.infra.config.Backups.S3.Opensearch.canned_acl:type_name -> google.protobuf.StringValue - 58, // 186: chef.automate.infra.config.Backups.S3.Opensearch.storage_class:type_name -> google.protobuf.StringValue - 58, // 187: chef.automate.infra.config.Backups.S3.Opensearch.max_snapshot_bytes_per_sec:type_name -> google.protobuf.StringValue - 58, // 188: chef.automate.infra.config.Backups.S3.Opensearch.max_restore_bytes_per_sec:type_name -> google.protobuf.StringValue - 58, // 189: chef.automate.infra.config.Backups.S3.Opensearch.chunk_size:type_name -> google.protobuf.StringValue - 58, // 190: chef.automate.infra.config.Backups.S3.Opensearch.read_timeout:type_name -> google.protobuf.StringValue - 61, // 191: chef.automate.infra.config.Backups.S3.Opensearch.max_retries:type_name -> google.protobuf.Int32Value - 60, // 192: chef.automate.infra.config.Backups.S3.Opensearch.use_throttle_retries:type_name -> google.protobuf.BoolValue - 58, // 193: chef.automate.infra.config.Backups.S3.Opensearch.protocol:type_name -> google.protobuf.StringValue - 58, // 194: chef.automate.infra.config.Backups.S3.Opensearch.region:type_name -> google.protobuf.StringValue - 58, // 195: chef.automate.infra.config.Backups.S3.Opensearch.role_arn:type_name -> google.protobuf.StringValue - 58, // 196: chef.automate.infra.config.Backups.S3.Bucket.endpoint:type_name -> google.protobuf.StringValue - 58, // 197: chef.automate.infra.config.Backups.S3.Bucket.base_path:type_name -> google.protobuf.StringValue - 58, // 198: chef.automate.infra.config.Backups.S3.Bucket.name:type_name -> google.protobuf.StringValue - 58, // 199: chef.automate.infra.config.Backups.S3.SSL.root_cert:type_name -> google.protobuf.StringValue - 58, // 200: chef.automate.infra.config.Backups.GCS.GCPCredentials.json:type_name -> google.protobuf.StringValue - 60, // 201: chef.automate.infra.config.Backups.GCS.Elasticsearch.compress:type_name -> google.protobuf.BoolValue - 60, // 202: chef.automate.infra.config.Backups.GCS.Elasticsearch.application_name:type_name -> google.protobuf.BoolValue - 58, // 203: chef.automate.infra.config.Backups.GCS.Elasticsearch.max_snapshot_bytes_per_sec:type_name -> google.protobuf.StringValue - 58, // 204: chef.automate.infra.config.Backups.GCS.Elasticsearch.max_restore_bytes_per_sec:type_name -> google.protobuf.StringValue - 58, // 205: chef.automate.infra.config.Backups.GCS.Elasticsearch.chunk_size:type_name -> google.protobuf.StringValue - 58, // 206: chef.automate.infra.config.Backups.GCS.Elasticsearch.read_timeout:type_name -> google.protobuf.StringValue - 60, // 207: chef.automate.infra.config.Backups.GCS.Elasticsearch.connect_timeout:type_name -> google.protobuf.BoolValue - 60, // 208: chef.automate.infra.config.Backups.GCS.Opensearch.compress:type_name -> google.protobuf.BoolValue - 60, // 209: chef.automate.infra.config.Backups.GCS.Opensearch.application_name:type_name -> google.protobuf.BoolValue - 58, // 210: chef.automate.infra.config.Backups.GCS.Opensearch.max_snapshot_bytes_per_sec:type_name -> google.protobuf.StringValue - 58, // 211: chef.automate.infra.config.Backups.GCS.Opensearch.max_restore_bytes_per_sec:type_name -> google.protobuf.StringValue - 58, // 212: chef.automate.infra.config.Backups.GCS.Opensearch.chunk_size:type_name -> google.protobuf.StringValue - 58, // 213: chef.automate.infra.config.Backups.GCS.Opensearch.read_timeout:type_name -> google.protobuf.StringValue - 60, // 214: chef.automate.infra.config.Backups.GCS.Opensearch.connect_timeout:type_name -> google.protobuf.BoolValue - 58, // 215: chef.automate.infra.config.Backups.GCS.Bucket.base_path:type_name -> google.protobuf.StringValue - 58, // 216: chef.automate.infra.config.Backups.GCS.Bucket.name:type_name -> google.protobuf.StringValue - 217, // [217:217] is the sub-list for method output_type - 217, // [217:217] is the sub-list for method input_type - 217, // [217:217] is the sub-list for extension type_name - 217, // [217:217] is the sub-list for extension extendee - 0, // [0:217] is the sub-list for field type_name + 59, // 140: chef.automate.infra.config.External.Postgresql.SSL.mode:type_name -> google.protobuf.StringValue + 59, // 141: chef.automate.infra.config.External.Postgresql.SSL.cert:type_name -> google.protobuf.StringValue + 59, // 142: chef.automate.infra.config.External.Postgresql.SSL.key:type_name -> google.protobuf.StringValue + 59, // 143: chef.automate.infra.config.External.Postgresql.SSL.root_cert:type_name -> google.protobuf.StringValue + 61, // 144: chef.automate.infra.config.External.Postgresql.SSL.enable:type_name -> google.protobuf.BoolValue + 43, // 145: chef.automate.infra.config.External.Postgresql.Authentication.PasswordAuthentication.superuser:type_name -> chef.automate.infra.config.External.Postgresql.Authentication.PasswordAuthentication.SuperUser + 44, // 146: chef.automate.infra.config.External.Postgresql.Authentication.PasswordAuthentication.dbuser:type_name -> chef.automate.infra.config.External.Postgresql.Authentication.PasswordAuthentication.DBUser + 59, // 147: chef.automate.infra.config.External.Postgresql.Authentication.PasswordAuthentication.SuperUser.username:type_name -> google.protobuf.StringValue + 59, // 148: chef.automate.infra.config.External.Postgresql.Authentication.PasswordAuthentication.SuperUser.password:type_name -> google.protobuf.StringValue + 59, // 149: chef.automate.infra.config.External.Postgresql.Authentication.PasswordAuthentication.DBUser.username:type_name -> google.protobuf.StringValue + 59, // 150: chef.automate.infra.config.External.Postgresql.Authentication.PasswordAuthentication.DBUser.password:type_name -> google.protobuf.StringValue + 59, // 151: chef.automate.infra.config.External.Automate.Authentication.scheme:type_name -> google.protobuf.StringValue + 59, // 152: chef.automate.infra.config.External.Automate.Authentication.token:type_name -> google.protobuf.StringValue + 59, // 153: chef.automate.infra.config.External.Automate.SSL.root_cert:type_name -> google.protobuf.StringValue + 59, // 154: chef.automate.infra.config.External.Automate.SSL.server_name:type_name -> google.protobuf.StringValue + 59, // 155: chef.automate.infra.config.Backups.Filesystem.path:type_name -> google.protobuf.StringValue + 59, // 156: chef.automate.infra.config.Backups.Filesystem.es_max_snapshot_bytes_per_sec:type_name -> google.protobuf.StringValue + 59, // 157: chef.automate.infra.config.Backups.Filesystem.es_max_restore_bytes_per_sec:type_name -> google.protobuf.StringValue + 50, // 158: chef.automate.infra.config.Backups.S3.credentials:type_name -> chef.automate.infra.config.Backups.S3.AWSCredentials + 51, // 159: chef.automate.infra.config.Backups.S3.es:type_name -> chef.automate.infra.config.Backups.S3.Elasticsearch + 53, // 160: chef.automate.infra.config.Backups.S3.bucket:type_name -> chef.automate.infra.config.Backups.S3.Bucket + 54, // 161: chef.automate.infra.config.Backups.S3.ssl:type_name -> chef.automate.infra.config.Backups.S3.SSL + 52, // 162: chef.automate.infra.config.Backups.S3.os:type_name -> chef.automate.infra.config.Backups.S3.Opensearch + 55, // 163: chef.automate.infra.config.Backups.GCS.credentials:type_name -> chef.automate.infra.config.Backups.GCS.GCPCredentials + 56, // 164: chef.automate.infra.config.Backups.GCS.es:type_name -> chef.automate.infra.config.Backups.GCS.Elasticsearch + 58, // 165: chef.automate.infra.config.Backups.GCS.bucket:type_name -> chef.automate.infra.config.Backups.GCS.Bucket + 57, // 166: chef.automate.infra.config.Backups.GCS.os:type_name -> chef.automate.infra.config.Backups.GCS.Opensearch + 59, // 167: chef.automate.infra.config.Backups.S3.AWSCredentials.access_key:type_name -> google.protobuf.StringValue + 59, // 168: chef.automate.infra.config.Backups.S3.AWSCredentials.secret_key:type_name -> google.protobuf.StringValue + 59, // 169: chef.automate.infra.config.Backups.S3.AWSCredentials.session_token:type_name -> google.protobuf.StringValue + 61, // 170: chef.automate.infra.config.Backups.S3.Elasticsearch.compress:type_name -> google.protobuf.BoolValue + 61, // 171: chef.automate.infra.config.Backups.S3.Elasticsearch.server_side_encryption:type_name -> google.protobuf.BoolValue + 59, // 172: chef.automate.infra.config.Backups.S3.Elasticsearch.buffer_size:type_name -> google.protobuf.StringValue + 59, // 173: chef.automate.infra.config.Backups.S3.Elasticsearch.canned_acl:type_name -> google.protobuf.StringValue + 59, // 174: chef.automate.infra.config.Backups.S3.Elasticsearch.storage_class:type_name -> google.protobuf.StringValue + 59, // 175: chef.automate.infra.config.Backups.S3.Elasticsearch.max_snapshot_bytes_per_sec:type_name -> google.protobuf.StringValue + 59, // 176: chef.automate.infra.config.Backups.S3.Elasticsearch.max_restore_bytes_per_sec:type_name -> google.protobuf.StringValue + 59, // 177: chef.automate.infra.config.Backups.S3.Elasticsearch.chunk_size:type_name -> google.protobuf.StringValue + 59, // 178: chef.automate.infra.config.Backups.S3.Elasticsearch.read_timeout:type_name -> google.protobuf.StringValue + 62, // 179: chef.automate.infra.config.Backups.S3.Elasticsearch.max_retries:type_name -> google.protobuf.Int32Value + 61, // 180: chef.automate.infra.config.Backups.S3.Elasticsearch.use_throttle_retries:type_name -> google.protobuf.BoolValue + 59, // 181: chef.automate.infra.config.Backups.S3.Elasticsearch.protocol:type_name -> google.protobuf.StringValue + 59, // 182: chef.automate.infra.config.Backups.S3.Elasticsearch.region:type_name -> google.protobuf.StringValue + 59, // 183: chef.automate.infra.config.Backups.S3.Elasticsearch.role_arn:type_name -> google.protobuf.StringValue + 61, // 184: chef.automate.infra.config.Backups.S3.Opensearch.compress:type_name -> google.protobuf.BoolValue + 61, // 185: chef.automate.infra.config.Backups.S3.Opensearch.server_side_encryption:type_name -> google.protobuf.BoolValue + 59, // 186: chef.automate.infra.config.Backups.S3.Opensearch.buffer_size:type_name -> google.protobuf.StringValue + 59, // 187: chef.automate.infra.config.Backups.S3.Opensearch.canned_acl:type_name -> google.protobuf.StringValue + 59, // 188: chef.automate.infra.config.Backups.S3.Opensearch.storage_class:type_name -> google.protobuf.StringValue + 59, // 189: chef.automate.infra.config.Backups.S3.Opensearch.max_snapshot_bytes_per_sec:type_name -> google.protobuf.StringValue + 59, // 190: chef.automate.infra.config.Backups.S3.Opensearch.max_restore_bytes_per_sec:type_name -> google.protobuf.StringValue + 59, // 191: chef.automate.infra.config.Backups.S3.Opensearch.chunk_size:type_name -> google.protobuf.StringValue + 59, // 192: chef.automate.infra.config.Backups.S3.Opensearch.read_timeout:type_name -> google.protobuf.StringValue + 62, // 193: chef.automate.infra.config.Backups.S3.Opensearch.max_retries:type_name -> google.protobuf.Int32Value + 61, // 194: chef.automate.infra.config.Backups.S3.Opensearch.use_throttle_retries:type_name -> google.protobuf.BoolValue + 59, // 195: chef.automate.infra.config.Backups.S3.Opensearch.protocol:type_name -> google.protobuf.StringValue + 59, // 196: chef.automate.infra.config.Backups.S3.Opensearch.region:type_name -> google.protobuf.StringValue + 59, // 197: chef.automate.infra.config.Backups.S3.Opensearch.role_arn:type_name -> google.protobuf.StringValue + 59, // 198: chef.automate.infra.config.Backups.S3.Bucket.endpoint:type_name -> google.protobuf.StringValue + 59, // 199: chef.automate.infra.config.Backups.S3.Bucket.base_path:type_name -> google.protobuf.StringValue + 59, // 200: chef.automate.infra.config.Backups.S3.Bucket.name:type_name -> google.protobuf.StringValue + 59, // 201: chef.automate.infra.config.Backups.S3.SSL.root_cert:type_name -> google.protobuf.StringValue + 59, // 202: chef.automate.infra.config.Backups.GCS.GCPCredentials.json:type_name -> google.protobuf.StringValue + 61, // 203: chef.automate.infra.config.Backups.GCS.Elasticsearch.compress:type_name -> google.protobuf.BoolValue + 61, // 204: chef.automate.infra.config.Backups.GCS.Elasticsearch.application_name:type_name -> google.protobuf.BoolValue + 59, // 205: chef.automate.infra.config.Backups.GCS.Elasticsearch.max_snapshot_bytes_per_sec:type_name -> google.protobuf.StringValue + 59, // 206: chef.automate.infra.config.Backups.GCS.Elasticsearch.max_restore_bytes_per_sec:type_name -> google.protobuf.StringValue + 59, // 207: chef.automate.infra.config.Backups.GCS.Elasticsearch.chunk_size:type_name -> google.protobuf.StringValue + 59, // 208: chef.automate.infra.config.Backups.GCS.Elasticsearch.read_timeout:type_name -> google.protobuf.StringValue + 61, // 209: chef.automate.infra.config.Backups.GCS.Elasticsearch.connect_timeout:type_name -> google.protobuf.BoolValue + 61, // 210: chef.automate.infra.config.Backups.GCS.Opensearch.compress:type_name -> google.protobuf.BoolValue + 61, // 211: chef.automate.infra.config.Backups.GCS.Opensearch.application_name:type_name -> google.protobuf.BoolValue + 59, // 212: chef.automate.infra.config.Backups.GCS.Opensearch.max_snapshot_bytes_per_sec:type_name -> google.protobuf.StringValue + 59, // 213: chef.automate.infra.config.Backups.GCS.Opensearch.max_restore_bytes_per_sec:type_name -> google.protobuf.StringValue + 59, // 214: chef.automate.infra.config.Backups.GCS.Opensearch.chunk_size:type_name -> google.protobuf.StringValue + 59, // 215: chef.automate.infra.config.Backups.GCS.Opensearch.read_timeout:type_name -> google.protobuf.StringValue + 61, // 216: chef.automate.infra.config.Backups.GCS.Opensearch.connect_timeout:type_name -> google.protobuf.BoolValue + 59, // 217: chef.automate.infra.config.Backups.GCS.Bucket.base_path:type_name -> google.protobuf.StringValue + 59, // 218: chef.automate.infra.config.Backups.GCS.Bucket.name:type_name -> google.protobuf.StringValue + 219, // [219:219] is the sub-list for method output_type + 219, // [219:219] is the sub-list for method input_type + 219, // [219:219] is the sub-list for extension type_name + 219, // [219:219] is the sub-list for extension extendee + 0, // [0:219] is the sub-list for field type_name } func init() { file_config_shared_global_proto_init() } @@ -5874,7 +5945,7 @@ func file_config_shared_global_proto_init() { } } file_config_shared_global_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*External_Postgresql_Authentication_PasswordAuthentication_User); i { + switch v := v.(*External_Postgresql_Authentication_PasswordAuthentication_SuperUser); i { case 0: return &v.state case 1: @@ -5886,7 +5957,7 @@ func file_config_shared_global_proto_init() { } } file_config_shared_global_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*External_Automate_Authentication); i { + switch v := v.(*External_Postgresql_Authentication_PasswordAuthentication_DBUser); i { case 0: return &v.state case 1: @@ -5898,7 +5969,7 @@ func file_config_shared_global_proto_init() { } } file_config_shared_global_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*External_Automate_SSL); i { + switch v := v.(*External_Automate_Authentication); i { case 0: return &v.state case 1: @@ -5910,7 +5981,7 @@ func file_config_shared_global_proto_init() { } } file_config_shared_global_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Backups_Filesystem); i { + switch v := v.(*External_Automate_SSL); i { case 0: return &v.state case 1: @@ -5922,7 +5993,7 @@ func file_config_shared_global_proto_init() { } } file_config_shared_global_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Backups_S3); i { + switch v := v.(*Backups_Filesystem); i { case 0: return &v.state case 1: @@ -5934,7 +6005,7 @@ func file_config_shared_global_proto_init() { } } file_config_shared_global_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Backups_GCS); i { + switch v := v.(*Backups_S3); i { case 0: return &v.state case 1: @@ -5946,7 +6017,7 @@ func file_config_shared_global_proto_init() { } } file_config_shared_global_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Backups_S3_AWSCredentials); i { + switch v := v.(*Backups_GCS); i { case 0: return &v.state case 1: @@ -5958,7 +6029,7 @@ func file_config_shared_global_proto_init() { } } file_config_shared_global_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Backups_S3_Elasticsearch); i { + switch v := v.(*Backups_S3_AWSCredentials); i { case 0: return &v.state case 1: @@ -5970,7 +6041,7 @@ func file_config_shared_global_proto_init() { } } file_config_shared_global_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Backups_S3_Opensearch); i { + switch v := v.(*Backups_S3_Elasticsearch); i { case 0: return &v.state case 1: @@ -5982,7 +6053,7 @@ func file_config_shared_global_proto_init() { } } file_config_shared_global_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Backups_S3_Bucket); i { + switch v := v.(*Backups_S3_Opensearch); i { case 0: return &v.state case 1: @@ -5994,7 +6065,7 @@ func file_config_shared_global_proto_init() { } } file_config_shared_global_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Backups_S3_SSL); i { + switch v := v.(*Backups_S3_Bucket); i { case 0: return &v.state case 1: @@ -6006,7 +6077,7 @@ func file_config_shared_global_proto_init() { } } file_config_shared_global_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Backups_GCS_GCPCredentials); i { + switch v := v.(*Backups_S3_SSL); i { case 0: return &v.state case 1: @@ -6018,7 +6089,7 @@ func file_config_shared_global_proto_init() { } } file_config_shared_global_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Backups_GCS_Elasticsearch); i { + switch v := v.(*Backups_GCS_GCPCredentials); i { case 0: return &v.state case 1: @@ -6030,7 +6101,7 @@ func file_config_shared_global_proto_init() { } } file_config_shared_global_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Backups_GCS_Opensearch); i { + switch v := v.(*Backups_GCS_Elasticsearch); i { case 0: return &v.state case 1: @@ -6042,6 +6113,18 @@ func file_config_shared_global_proto_init() { } } file_config_shared_global_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Backups_GCS_Opensearch); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_config_shared_global_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Backups_GCS_Bucket); i { case 0: return &v.state @@ -6060,7 +6143,7 @@ func file_config_shared_global_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_config_shared_global_proto_rawDesc, NumEnums: 0, - NumMessages: 58, + NumMessages: 59, NumExtensions: 0, NumServices: 0, }, diff --git a/api/config/shared/global.proto b/api/config/shared/global.proto index fe14b7467d6..dc2c56c781e 100644 --- a/api/config/shared/global.proto +++ b/api/config/shared/global.proto @@ -189,12 +189,17 @@ message External { message Authentication { message PasswordAuthentication { - message User { + message SuperUser { google.protobuf.StringValue username = 1; - google.protobuf.StringValue password = 2; + google.protobuf.StringValue password = 2 [(chef.automate.api.secret) = { name: "pg_superuser_password" }]; } - User superuser = 1; - User dbuser = 2; + + message DBUser { + google.protobuf.StringValue username = 1; + google.protobuf.StringValue password = 2 [(chef.automate.api.secret) = { name: "pg_dbuser_password" }]; + } + SuperUser superuser = 1; + DBUser dbuser = 2; } google.protobuf.StringValue scheme = 1; PasswordAuthentication password = 2; diff --git a/api/config/shared/global_test.go b/api/config/shared/global_test.go index e7e5b4877af..e5319f67c67 100644 --- a/api/config/shared/global_test.go +++ b/api/config/shared/global_test.go @@ -419,8 +419,8 @@ format = "json" Auth: &External_Postgresql_Authentication{ Scheme: w.String("password"), Password: &External_Postgresql_Authentication_PasswordAuthentication{ - Superuser: &External_Postgresql_Authentication_PasswordAuthentication_User{}, - Dbuser: &External_Postgresql_Authentication_PasswordAuthentication_User{}, + Superuser: &External_Postgresql_Authentication_PasswordAuthentication_SuperUser{}, + Dbuser: &External_Postgresql_Authentication_PasswordAuthentication_DBUser{}, }, }, }, diff --git a/components/automate-deployment/pkg/server/gather-logs.go b/components/automate-deployment/pkg/server/gather-logs.go index 9a97a1a8d14..a0914a29941 100644 --- a/components/automate-deployment/pkg/server/gather-logs.go +++ b/components/automate-deployment/pkg/server/gather-logs.go @@ -8,19 +8,20 @@ import ( "io" "io/ioutil" "os" + "os/exec" "path" "strconv" "strings" "time" + "github.com/chef/automate/api/config/shared" api "github.com/chef/automate/api/interservice/deployment" "github.com/chef/automate/components/automate-deployment/pkg/airgap" "github.com/chef/automate/components/automate-deployment/pkg/gatherlogs" "github.com/chef/automate/components/automate-deployment/pkg/manifest" "github.com/chef/automate/components/automate-deployment/pkg/preflight" - "github.com/chef/automate/lib/platform/pg" - "github.com/chef/automate/lib/io/chunks" + "github.com/chef/automate/lib/platform/pg" log "github.com/sirupsen/logrus" "google.golang.org/grpc/codes" @@ -170,7 +171,16 @@ func (s *server) GatherLogs(ctx context.Context, req *api.GatherLogsRequest, } if s.deployment.Config.Global.V1.GetExternal().GetPostgresql().GetAuth().GetPassword().GetSuperuser() != nil { user = s.deployment.Config.Global.V1.GetExternal().GetPostgresql().GetAuth().GetPassword().GetSuperuser().GetUsername().GetValue() - password = s.deployment.Config.Global.V1.GetExternal().GetPostgresql().GetAuth().GetPassword().GetSuperuser().GetPassword().GetValue() + args := []string{ + "show", + "userconfig.pg_superuser_password", + } + execGetPass := exec.Command(shared.GetLatestPlatformToolsPath()+"/bin/secrets-helper", args...) + getPass, err := execGetPass.Output() + if err != nil || string(getPass) == "" { + return nil, err + } + password = strings.TrimSpace(string(getPass)) } certs = pg.TLSCertPaths{ RootCert: "/hab/svc/automate-pg-gateway/config/_a2_platform_external_pg_root_ca.crt", diff --git a/components/automate-dex/habitat/config/run_environment.sh b/components/automate-dex/habitat/config/run_environment.sh index 25f2c4ea3d5..5c2753481b0 100644 --- a/components/automate-dex/habitat/config/run_environment.sh +++ b/components/automate-dex/habitat/config/run_environment.sh @@ -7,3 +7,4 @@ export LDAP_BINDPW=$(secrets-helper show userconfig.ldap_password || echo "") export LDAP_BINDDN=$(sed 's/^\"\(.*\)\"$/\1/' {{pkg.svc_config_path}}/ldap_bind_dn) export LDAP_BINDPW=$(secrets-helper show userconfig.msad_password || echo "") {{~/if}} +export POSTGRES_DB_PW=$(secrets-helper show userconfig.pg_dbuser_password || echo "") diff --git a/components/automate-dex/habitat/hooks/run b/components/automate-dex/habitat/hooks/run index bcca8c5bda3..ff288471648 100644 --- a/components/automate-dex/habitat/hooks/run +++ b/components/automate-dex/habitat/hooks/run @@ -29,4 +29,5 @@ exec secrets-helper exec \ --watch \ --optional-secret userconfig.ldap_password \ --optional-secret userconfig.msad_password \ + --optional-secret userconfig.pg_dbuser_password \ -- dex serve {{pkg.svc_var_path}}/etc/config.yml diff --git a/components/automate-dex/habitat/templates/config.yml b/components/automate-dex/habitat/templates/config.yml index 6b64b5489ac..6949230e994 100644 --- a/components/automate-dex/habitat/templates/config.yml +++ b/components/automate-dex/habitat/templates/config.yml @@ -15,7 +15,7 @@ storage: {{- if is_external_pg }} {{- if eq "password" .Platform.GetPlatform.GetExternalPostgresql.GetAuth.GetScheme.GetValue }} user: {{ .Platform.GetPlatform.GetExternalPostgresql.GetAuth.GetPassword.GetDbuser.GetUsername.GetValue }} - password: {{ .Platform.GetPlatform.GetExternalPostgresql.GetAuth.GetPassword.GetDbuser.GetPassword.GetValue }} + password: $POSTGRES_DB_PW {{- else }} {{ fail "unsupported auth scheme" }} {{- end }} diff --git a/components/notifications-service/habitat/hooks/run b/components/notifications-service/habitat/hooks/run index af0b91036fe..0ea30eca15e 100644 --- a/components/notifications-service/habitat/hooks/run +++ b/components/notifications-service/habitat/hooks/run @@ -27,4 +27,8 @@ if [[ ! -f "$erl_cookie" ]]; then chmod 400 "$erl_cookie" fi -exec "{{pkg.path}}/bin/notifications" start +# exec "{{pkg.path}}/bin/notifications" start +exec secrets-helper exec \ + --watch \ + --optional-secret userconfig.pg_dbuser_password \ + -- "{{pkg.path}}/bin/notifications" start diff --git a/components/notifications-service/habitat/templates/pg-env b/components/notifications-service/habitat/templates/pg-env index be2af2bd949..c72203076b9 100644 --- a/components/notifications-service/habitat/templates/pg-env +++ b/components/notifications-service/habitat/templates/pg-env @@ -3,7 +3,7 @@ export SQERL_DBPORT="{{pg_gateway_port}}" export SQERL_DBUSER="{{pg_svc_user}}" {{- if is_external_pg }} {{- if eq "password" .Platform.GetPlatform.GetExternalPostgresql.GetAuth.GetScheme.GetValue }} -export SQERL_DBPASSWORD="{{ .Platform.GetPlatform.GetExternalPostgresql.GetAuth.GetPassword.GetDbuser.GetPassword.GetValue }}" +export SQERL_DBPASSWORD=$(secrets-helper show userconfig.pg_dbuser_password || echo "") {{- if .Platform.GetPlatform.GetExternalPostgresql.GetSsl.GetEnable.GetValue }} export SQERL_NO_SSL_AUTH="true" export EXTERNAL_PG_ROOT_CA_CERT="{{pg_root_ca_cert_path}}" diff --git a/lib/platform/config/config.go b/lib/platform/config/config.go index 4c50a9aaf9b..4559301193a 100644 --- a/lib/platform/config/config.go +++ b/lib/platform/config/config.go @@ -4,6 +4,7 @@ import ( "fmt" "net/url" "os" + "os/exec" "path" "strings" @@ -11,6 +12,7 @@ import ( "github.com/pkg/errors" "github.com/chef/automate/api/config/platform" + "github.com/chef/automate/api/config/shared" ) const ( @@ -247,9 +249,27 @@ func (c *Config) GetPGConnInfoURI(user string) (*PGConnInfo, error) { password := "" if user == passwordAuth.GetDbuser().GetUsername().GetValue() { - password = passwordAuth.GetDbuser().GetPassword().GetValue() + args := []string{ + "show", + "userconfig.pg_dbuser_password", + } + execGetPass := exec.Command(shared.GetLatestPlatformToolsPath()+"/bin/secrets-helper", args...) + getPass, err := execGetPass.Output() + if err != nil || string(getPass) == "" { + return nil, errors.Errorf("External postgres password auth missing password") + } + password = strings.TrimSpace(string(getPass)) } else if user == passwordAuth.GetSuperuser().GetUsername().GetValue() { - password = passwordAuth.GetSuperuser().GetPassword().GetValue() + args := []string{ + "show", + "userconfig.pg_superuser_password", + } + execGetPass := exec.Command(shared.GetLatestPlatformToolsPath()+"/bin/secrets-helper", args...) + getPass, err := execGetPass.Output() + if err != nil || string(getPass) == "" { + return nil, errors.Errorf("External postgres password auth missing password") + } + password = strings.TrimSpace(string(getPass)) } else { return nil, errors.Errorf("Invalid external postgres user %q", user) } From 2d837ef13dfe47dde87a2dd0b34d04d25b69f69b Mon Sep 17 00:00:00 2001 From: jan shahid shaik Date: Fri, 27 Dec 2024 12:58:03 +0530 Subject: [PATCH 02/18] Updated cs components to access pg password from secrets Signed-off-by: jan shahid shaik --- components/automate-cs-bookshelf/habitat/hooks/run | 7 ++++++- components/automate-cs-oc-bifrost/habitat/hooks/run | 6 +++++- components/automate-cs-oc-erchef/habitat/hooks/run | 1 + lib/scaffolding/templates/sqerl.config | 2 +- 4 files changed, 13 insertions(+), 3 deletions(-) diff --git a/components/automate-cs-bookshelf/habitat/hooks/run b/components/automate-cs-bookshelf/habitat/hooks/run index 6fb13ed3883..202af9d3299 100644 --- a/components/automate-cs-bookshelf/habitat/hooks/run +++ b/components/automate-cs-bookshelf/habitat/hooks/run @@ -36,4 +36,9 @@ else fi -exec secrets-helper exec --secret bookshelf.access_key_id --secret bookshelf.secret_access_key -- bookshelf foreground +exec secrets-helper exec \ + --secret userconfig.pg_dbuser_password \ + --secret bookshelf.access_key_id \ + --secret bookshelf.secret_access_key \ + -- \ + bookshelf foreground diff --git a/components/automate-cs-oc-bifrost/habitat/hooks/run b/components/automate-cs-oc-bifrost/habitat/hooks/run index b1acae46e44..49acd838481 100644 --- a/components/automate-cs-oc-bifrost/habitat/hooks/run +++ b/components/automate-cs-oc-bifrost/habitat/hooks/run @@ -29,4 +29,8 @@ fi secrets-helper generate oc_bifrost.superuser_id 32 --if-not-exists -exec secrets-helper exec --secret oc_bifrost.superuser_id -- oc_bifrost foreground +exec secrets-helper exec \ + --secret oc_bifrost.superuser_id \ + --secret userconfig.pg_dbuser_password \ + -- \ + oc_bifrost foreground diff --git a/components/automate-cs-oc-erchef/habitat/hooks/run b/components/automate-cs-oc-erchef/habitat/hooks/run index ad4a8d0041c..2748a3d88db 100644 --- a/components/automate-cs-oc-erchef/habitat/hooks/run +++ b/components/automate-cs-oc-erchef/habitat/hooks/run @@ -76,6 +76,7 @@ exec secrets-helper exec \ --secret bookshelf.access_key_id \ --secret bookshelf.secret_access_key \ --secret chef-server.webui_pub_key \ + --secret userconfig.pg_dbuser_password \ --optional-secret data_collector.token \ -- \ {{~#if cfg.memory.max_bytes}} diff --git a/lib/scaffolding/templates/sqerl.config b/lib/scaffolding/templates/sqerl.config index 8b4c299e17f..ab3df006d52 100644 --- a/lib/scaffolding/templates/sqerl.config +++ b/lib/scaffolding/templates/sqerl.config @@ -1,7 +1,7 @@ [{sqerl, [ {{- if is_external_pg }} {{- if eq "password" .Platform.GetPlatform.GetExternalPostgresql.GetAuth.GetScheme.GetValue }} - {db_pass, "{{ .Platform.GetPlatform.GetExternalPostgresql.GetAuth.GetPassword.GetDbuser.GetPassword.GetValue }}" }, + {config_cb, {chef_secrets_sqerl, config, [{<<"userconfig">>, <<"pg_dbuser_password">>}]}}, {{- if .Platform.GetPlatform.GetExternalPostgresql.GetSsl.GetEnable.GetValue }} {db_options, [ {ssl, true}, From 22c85dc2c1d1946b0c7ebe264ab50e4566b70829 Mon Sep 17 00:00:00 2001 From: jan shahid shaik Date: Fri, 27 Dec 2024 17:04:50 +0530 Subject: [PATCH 03/18] Fix for standalone automate setup in cs components Signed-off-by: jan shahid shaik --- components/automate-cs-oc-bifrost/habitat/hooks/run | 1 + 1 file changed, 1 insertion(+) diff --git a/components/automate-cs-oc-bifrost/habitat/hooks/run b/components/automate-cs-oc-bifrost/habitat/hooks/run index 49acd838481..cc4b260b96b 100644 --- a/components/automate-cs-oc-bifrost/habitat/hooks/run +++ b/components/automate-cs-oc-bifrost/habitat/hooks/run @@ -28,6 +28,7 @@ fi secrets-helper generate oc_bifrost.superuser_id 32 --if-not-exists +secrets-helper generate userconfig.pg_dbuser_password 32 --if-not-exists exec secrets-helper exec \ --secret oc_bifrost.superuser_id \ From 76929fa4384af72008b05515fc079a4de926d6bf Mon Sep 17 00:00:00 2001 From: jan shahid shaik Date: Sat, 28 Dec 2024 10:46:19 +0530 Subject: [PATCH 04/18] Added super user for cs components Signed-off-by: jan shahid shaik --- components/automate-cs-bookshelf/habitat/hooks/run | 2 +- components/automate-cs-oc-bifrost/habitat/hooks/run | 4 ++-- components/automate-cs-oc-erchef/habitat/hooks/run | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/components/automate-cs-bookshelf/habitat/hooks/run b/components/automate-cs-bookshelf/habitat/hooks/run index 202af9d3299..2d37e10e764 100644 --- a/components/automate-cs-bookshelf/habitat/hooks/run +++ b/components/automate-cs-bookshelf/habitat/hooks/run @@ -37,7 +37,7 @@ fi exec secrets-helper exec \ - --secret userconfig.pg_dbuser_password \ + --secret userconfig.pg_superuser_password \ --secret bookshelf.access_key_id \ --secret bookshelf.secret_access_key \ -- \ diff --git a/components/automate-cs-oc-bifrost/habitat/hooks/run b/components/automate-cs-oc-bifrost/habitat/hooks/run index cc4b260b96b..68c588b6995 100644 --- a/components/automate-cs-oc-bifrost/habitat/hooks/run +++ b/components/automate-cs-oc-bifrost/habitat/hooks/run @@ -28,10 +28,10 @@ fi secrets-helper generate oc_bifrost.superuser_id 32 --if-not-exists -secrets-helper generate userconfig.pg_dbuser_password 32 --if-not-exists +secrets-helper generate userconfig.pg_superuser_password 32 --if-not-exists exec secrets-helper exec \ --secret oc_bifrost.superuser_id \ - --secret userconfig.pg_dbuser_password \ + --secret userconfig.pg_superuser_password \ -- \ oc_bifrost foreground diff --git a/components/automate-cs-oc-erchef/habitat/hooks/run b/components/automate-cs-oc-erchef/habitat/hooks/run index 2748a3d88db..0a51db0f236 100644 --- a/components/automate-cs-oc-erchef/habitat/hooks/run +++ b/components/automate-cs-oc-erchef/habitat/hooks/run @@ -76,7 +76,7 @@ exec secrets-helper exec \ --secret bookshelf.access_key_id \ --secret bookshelf.secret_access_key \ --secret chef-server.webui_pub_key \ - --secret userconfig.pg_dbuser_password \ + --secret userconfig.pg_superuser_password \ --optional-secret data_collector.token \ -- \ {{~#if cfg.memory.max_bytes}} From c83d17972e422c9b66c85f11e9697b5a66717308 Mon Sep 17 00:00:00 2001 From: jan shahid shaik Date: Sat, 28 Dec 2024 11:39:20 +0530 Subject: [PATCH 05/18] Fix Signed-off-by: jan shahid shaik --- lib/scaffolding/templates/sqerl.config | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/scaffolding/templates/sqerl.config b/lib/scaffolding/templates/sqerl.config index ab3df006d52..bcc84f76706 100644 --- a/lib/scaffolding/templates/sqerl.config +++ b/lib/scaffolding/templates/sqerl.config @@ -1,7 +1,7 @@ [{sqerl, [ {{- if is_external_pg }} {{- if eq "password" .Platform.GetPlatform.GetExternalPostgresql.GetAuth.GetScheme.GetValue }} - {config_cb, {chef_secrets_sqerl, config, [{<<"userconfig">>, <<"pg_dbuser_password">>}]}}, + {config_cb, {chef_secrets_sqerl, config, [{<<"userconfig">>, <<"pg_superuser_password">>}]}}, {{- if .Platform.GetPlatform.GetExternalPostgresql.GetSsl.GetEnable.GetValue }} {db_options, [ {ssl, true}, From e6d11c7054b565f78b87e7b034f3f530d3b3c4cb Mon Sep 17 00:00:00 2001 From: jan shahid shaik Date: Mon, 30 Dec 2024 15:39:02 +0530 Subject: [PATCH 06/18] Made pg secret as optional Signed-off-by: jan shahid shaik --- components/automate-cs-bookshelf/habitat/hooks/run | 2 +- components/automate-cs-oc-bifrost/habitat/hooks/run | 3 +-- components/automate-cs-oc-erchef/habitat/hooks/run | 2 +- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/components/automate-cs-bookshelf/habitat/hooks/run b/components/automate-cs-bookshelf/habitat/hooks/run index 2d37e10e764..04a21d8a463 100644 --- a/components/automate-cs-bookshelf/habitat/hooks/run +++ b/components/automate-cs-bookshelf/habitat/hooks/run @@ -37,7 +37,7 @@ fi exec secrets-helper exec \ - --secret userconfig.pg_superuser_password \ + --optional-secret userconfig.pg_superuser_password \ --secret bookshelf.access_key_id \ --secret bookshelf.secret_access_key \ -- \ diff --git a/components/automate-cs-oc-bifrost/habitat/hooks/run b/components/automate-cs-oc-bifrost/habitat/hooks/run index 68c588b6995..990d2acf201 100644 --- a/components/automate-cs-oc-bifrost/habitat/hooks/run +++ b/components/automate-cs-oc-bifrost/habitat/hooks/run @@ -28,10 +28,9 @@ fi secrets-helper generate oc_bifrost.superuser_id 32 --if-not-exists -secrets-helper generate userconfig.pg_superuser_password 32 --if-not-exists exec secrets-helper exec \ --secret oc_bifrost.superuser_id \ - --secret userconfig.pg_superuser_password \ + --optional-secret userconfig.pg_superuser_password \ -- \ oc_bifrost foreground diff --git a/components/automate-cs-oc-erchef/habitat/hooks/run b/components/automate-cs-oc-erchef/habitat/hooks/run index 0a51db0f236..a3ca1bcd0d8 100644 --- a/components/automate-cs-oc-erchef/habitat/hooks/run +++ b/components/automate-cs-oc-erchef/habitat/hooks/run @@ -76,7 +76,7 @@ exec secrets-helper exec \ --secret bookshelf.access_key_id \ --secret bookshelf.secret_access_key \ --secret chef-server.webui_pub_key \ - --secret userconfig.pg_superuser_password \ + --optional-secret userconfig.pg_superuser_password \ --optional-secret data_collector.token \ -- \ {{~#if cfg.memory.max_bytes}} From ea533d376b3633da29a59c027ddba8c6d8a97f43 Mon Sep 17 00:00:00 2001 From: jan shahid shaik Date: Tue, 31 Dec 2024 12:50:51 +0530 Subject: [PATCH 07/18] some fix Signed-off-by: jan shahid shaik --- components/automate-cs-bookshelf/habitat/hooks/run | 2 +- components/automate-cs-oc-bifrost/habitat/hooks/run | 2 +- components/automate-cs-oc-erchef/habitat/hooks/run | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/components/automate-cs-bookshelf/habitat/hooks/run b/components/automate-cs-bookshelf/habitat/hooks/run index 04a21d8a463..2d37e10e764 100644 --- a/components/automate-cs-bookshelf/habitat/hooks/run +++ b/components/automate-cs-bookshelf/habitat/hooks/run @@ -37,7 +37,7 @@ fi exec secrets-helper exec \ - --optional-secret userconfig.pg_superuser_password \ + --secret userconfig.pg_superuser_password \ --secret bookshelf.access_key_id \ --secret bookshelf.secret_access_key \ -- \ diff --git a/components/automate-cs-oc-bifrost/habitat/hooks/run b/components/automate-cs-oc-bifrost/habitat/hooks/run index 990d2acf201..b22dfdaf7f6 100644 --- a/components/automate-cs-oc-bifrost/habitat/hooks/run +++ b/components/automate-cs-oc-bifrost/habitat/hooks/run @@ -31,6 +31,6 @@ secrets-helper generate oc_bifrost.superuser_id 32 --if-not-exists exec secrets-helper exec \ --secret oc_bifrost.superuser_id \ - --optional-secret userconfig.pg_superuser_password \ + --secret userconfig.pg_superuser_password \ -- \ oc_bifrost foreground diff --git a/components/automate-cs-oc-erchef/habitat/hooks/run b/components/automate-cs-oc-erchef/habitat/hooks/run index a3ca1bcd0d8..0a51db0f236 100644 --- a/components/automate-cs-oc-erchef/habitat/hooks/run +++ b/components/automate-cs-oc-erchef/habitat/hooks/run @@ -76,7 +76,7 @@ exec secrets-helper exec \ --secret bookshelf.access_key_id \ --secret bookshelf.secret_access_key \ --secret chef-server.webui_pub_key \ - --optional-secret userconfig.pg_superuser_password \ + --secret userconfig.pg_superuser_password \ --optional-secret data_collector.token \ -- \ {{~#if cfg.memory.max_bytes}} From a31d08f8d747a1facd8cc5aec6378fcbe8d7c6d6 Mon Sep 17 00:00:00 2001 From: jan shahid shaik Date: Wed, 1 Jan 2025 12:01:18 +0530 Subject: [PATCH 08/18] some Signed-off-by: jan shahid shaik --- components/automate-cs-bookshelf/habitat/hooks/run | 2 +- components/automate-cs-oc-bifrost/habitat/hooks/run | 2 +- components/automate-cs-oc-erchef/habitat/hooks/run | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/components/automate-cs-bookshelf/habitat/hooks/run b/components/automate-cs-bookshelf/habitat/hooks/run index 2d37e10e764..04a21d8a463 100644 --- a/components/automate-cs-bookshelf/habitat/hooks/run +++ b/components/automate-cs-bookshelf/habitat/hooks/run @@ -37,7 +37,7 @@ fi exec secrets-helper exec \ - --secret userconfig.pg_superuser_password \ + --optional-secret userconfig.pg_superuser_password \ --secret bookshelf.access_key_id \ --secret bookshelf.secret_access_key \ -- \ diff --git a/components/automate-cs-oc-bifrost/habitat/hooks/run b/components/automate-cs-oc-bifrost/habitat/hooks/run index b22dfdaf7f6..990d2acf201 100644 --- a/components/automate-cs-oc-bifrost/habitat/hooks/run +++ b/components/automate-cs-oc-bifrost/habitat/hooks/run @@ -31,6 +31,6 @@ secrets-helper generate oc_bifrost.superuser_id 32 --if-not-exists exec secrets-helper exec \ --secret oc_bifrost.superuser_id \ - --secret userconfig.pg_superuser_password \ + --optional-secret userconfig.pg_superuser_password \ -- \ oc_bifrost foreground diff --git a/components/automate-cs-oc-erchef/habitat/hooks/run b/components/automate-cs-oc-erchef/habitat/hooks/run index 0a51db0f236..a3ca1bcd0d8 100644 --- a/components/automate-cs-oc-erchef/habitat/hooks/run +++ b/components/automate-cs-oc-erchef/habitat/hooks/run @@ -76,7 +76,7 @@ exec secrets-helper exec \ --secret bookshelf.access_key_id \ --secret bookshelf.secret_access_key \ --secret chef-server.webui_pub_key \ - --secret userconfig.pg_superuser_password \ + --optional-secret userconfig.pg_superuser_password \ --optional-secret data_collector.token \ -- \ {{~#if cfg.memory.max_bytes}} From ac0768751e1f111e3a773dddc350e3ba39e04814 Mon Sep 17 00:00:00 2001 From: jan shahid shaik Date: Thu, 2 Jan 2025 10:52:10 +0530 Subject: [PATCH 09/18] Dump logs Signed-off-by: jan shahid shaik --- integration/tests/ha_chef_server.sh | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/integration/tests/ha_chef_server.sh b/integration/tests/ha_chef_server.sh index db980929801..aa67c02492e 100644 --- a/integration/tests/ha_chef_server.sh +++ b/integration/tests/ha_chef_server.sh @@ -188,3 +188,19 @@ do_cleanup() { docker stop "$_frontend1_container_name" docker stop "$_frontend2_container_name" } + +do_dump_logs() { + do_dump_logs_default + + docker exec -t "$_frontend1_container_name" journalctl --no-pager -u chef-automate > "logs/_frontend1_container_name" + docker exec -t "$_frontend2_container_name" journalctl --no-pager -u chef-automate > "logs/_frontend2_container_name" + + + if command -v buildkite-agent; then + if ! buildkite-agent artifact upload "logs/*" + then + echo "Failed to frontend conatiner logs" + fi + fi + rm -r "$tmpdir" +} \ No newline at end of file From edeca4e236cd0be6ebf26e2f4a2c6b922a6613eb Mon Sep 17 00:00:00 2001 From: jan shahid shaik Date: Fri, 3 Jan 2025 16:02:20 +0530 Subject: [PATCH 10/18] Certs export Signed-off-by: jan shahid shaik --- integration/tests/ha_chef_server.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/integration/tests/ha_chef_server.sh b/integration/tests/ha_chef_server.sh index aa67c02492e..b9812642bbc 100644 --- a/integration/tests/ha_chef_server.sh +++ b/integration/tests/ha_chef_server.sh @@ -4,6 +4,9 @@ test_name="ha_chef_server" test_external_services=(ha_backend) +export SSL_CERT_FILE={{pkgPathFor "core/cacerts"}}/ssl/cert.pem +export SSL_CERT_DIR={{pkgPathFor "core/cacerts"}}/ssl/certs + source integration/services/common.sh _frontend1_container_name="$(service_container_name "cs1")" From 2cab947bbe725fa04891a71533ed125282a6eb2a Mon Sep 17 00:00:00 2001 From: jan shahid shaik Date: Mon, 6 Jan 2025 11:45:49 +0530 Subject: [PATCH 11/18] certs Signed-off-by: jan shahid shaik --- integration/tests/ha_chef_server.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/integration/tests/ha_chef_server.sh b/integration/tests/ha_chef_server.sh index b9812642bbc..1256e25f341 100644 --- a/integration/tests/ha_chef_server.sh +++ b/integration/tests/ha_chef_server.sh @@ -4,8 +4,8 @@ test_name="ha_chef_server" test_external_services=(ha_backend) -export SSL_CERT_FILE={{pkgPathFor "core/cacerts"}}/ssl/cert.pem -export SSL_CERT_DIR={{pkgPathFor "core/cacerts"}}/ssl/certs +export SSL_CERT_FILE={{pkgPathFor core/cacerts}}/ssl/cert.pem +export SSL_CERT_DIR={{pkgPathFor core/cacerts}}/ssl/certs source integration/services/common.sh From 588b928865469f44d1a2a0123518c3cf23200dc3 Mon Sep 17 00:00:00 2001 From: jan shahid shaik Date: Mon, 6 Jan 2025 12:30:17 +0530 Subject: [PATCH 12/18] reverted cert changes Signed-off-by: jan shahid shaik --- integration/tests/ha_chef_server.sh | 3 --- 1 file changed, 3 deletions(-) diff --git a/integration/tests/ha_chef_server.sh b/integration/tests/ha_chef_server.sh index 1256e25f341..aa67c02492e 100644 --- a/integration/tests/ha_chef_server.sh +++ b/integration/tests/ha_chef_server.sh @@ -4,9 +4,6 @@ test_name="ha_chef_server" test_external_services=(ha_backend) -export SSL_CERT_FILE={{pkgPathFor core/cacerts}}/ssl/cert.pem -export SSL_CERT_DIR={{pkgPathFor core/cacerts}}/ssl/certs - source integration/services/common.sh _frontend1_container_name="$(service_container_name "cs1")" From a8b38fb635a3389d03fd2f65dfd5c3277df3d896 Mon Sep 17 00:00:00 2001 From: jan shahid shaik Date: Mon, 6 Jan 2025 20:04:53 +0530 Subject: [PATCH 13/18] cert changes Signed-off-by: jan shahid shaik --- integration/tests/ha_chef_server.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/integration/tests/ha_chef_server.sh b/integration/tests/ha_chef_server.sh index aa67c02492e..e4db86c5a86 100644 --- a/integration/tests/ha_chef_server.sh +++ b/integration/tests/ha_chef_server.sh @@ -6,6 +6,11 @@ test_external_services=(ha_backend) source integration/services/common.sh +SSL_CERT_FILE="/hab/pkgs/$(hab pkg list core/cacerts)/ssl/cert.pem" +export SSL_CERT_FILE +SSL_CERT_DIR="/hab/pkgs/$(hab pkg list core/cacerts)/ssl/cert" +export SSL_CERT_DIR + _frontend1_container_name="$(service_container_name "cs1")" _frontend2_container_name="$(service_container_name "cs2")" From 29a506ad85702e1306732026b8e2814b8f3ae274 Mon Sep 17 00:00:00 2001 From: jan shahid shaik Date: Tue, 7 Jan 2025 12:25:52 +0530 Subject: [PATCH 14/18] more logs Signed-off-by: jan shahid shaik --- integration/tests/ha_chef_server.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/integration/tests/ha_chef_server.sh b/integration/tests/ha_chef_server.sh index e4db86c5a86..c2d4fa1aace 100644 --- a/integration/tests/ha_chef_server.sh +++ b/integration/tests/ha_chef_server.sh @@ -200,6 +200,9 @@ do_dump_logs() { docker exec -t "$_frontend1_container_name" journalctl --no-pager -u chef-automate > "logs/_frontend1_container_name" docker exec -t "$_frontend2_container_name" journalctl --no-pager -u chef-automate > "logs/_frontend2_container_name" + docker exec -t "$_frontend1_container_name" cp /hab/svc/automate-cs-oc-bifrost/var/etc/sqerl.config > "logs/sqerl.config" + docker exec -t "$_frontend1_container_name" cp /hab/svc/automate-cs-oc-bifrost/var/etc/sqerl.config > "logs/sqerl.config" + docker exec -t "$_frontend1_container_name" cp /hab/svc/automate-cs-oc-bifrost/config/* > "logs/" if command -v buildkite-agent; then if ! buildkite-agent artifact upload "logs/*" From 2a5deb41e1e63ffb345452bb01a16fbeab120b5c Mon Sep 17 00:00:00 2001 From: jan shahid shaik Date: Wed, 8 Jan 2025 11:42:22 +0530 Subject: [PATCH 15/18] some Signed-off-by: jan shahid shaik --- integration/tests/ha_chef_server.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/integration/tests/ha_chef_server.sh b/integration/tests/ha_chef_server.sh index c2d4fa1aace..a0342646670 100644 --- a/integration/tests/ha_chef_server.sh +++ b/integration/tests/ha_chef_server.sh @@ -201,7 +201,7 @@ do_dump_logs() { docker exec -t "$_frontend2_container_name" journalctl --no-pager -u chef-automate > "logs/_frontend2_container_name" docker exec -t "$_frontend1_container_name" cp /hab/svc/automate-cs-oc-bifrost/var/etc/sqerl.config > "logs/sqerl.config" - docker exec -t "$_frontend1_container_name" cp /hab/svc/automate-cs-oc-bifrost/var/etc/sqerl.config > "logs/sqerl.config" + docker exec -t "$_frontend1_container_name" cp /hab/svc/automate-cs-oc-erchef/var/etc/sqerl.config > "logs/sqerl_erchef.config" docker exec -t "$_frontend1_container_name" cp /hab/svc/automate-cs-oc-bifrost/config/* > "logs/" if command -v buildkite-agent; then From 3b5f1dd0c63763d9d2d99f34ac31ed933d5ef7b3 Mon Sep 17 00:00:00 2001 From: jan shahid shaik Date: Wed, 8 Jan 2025 15:57:52 +0530 Subject: [PATCH 16/18] some Signed-off-by: jan shahid shaik --- integration/tests/ha_chef_server.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/integration/tests/ha_chef_server.sh b/integration/tests/ha_chef_server.sh index a0342646670..fcebbacbc2e 100644 --- a/integration/tests/ha_chef_server.sh +++ b/integration/tests/ha_chef_server.sh @@ -202,7 +202,7 @@ do_dump_logs() { docker exec -t "$_frontend1_container_name" cp /hab/svc/automate-cs-oc-bifrost/var/etc/sqerl.config > "logs/sqerl.config" docker exec -t "$_frontend1_container_name" cp /hab/svc/automate-cs-oc-erchef/var/etc/sqerl.config > "logs/sqerl_erchef.config" - docker exec -t "$_frontend1_container_name" cp /hab/svc/automate-cs-oc-bifrost/config/* > "logs/" + # docker exec -t "$_frontend1_container_name" cp /hab/svc/automate-cs-oc-bifrost/config/* > "logs/" if command -v buildkite-agent; then if ! buildkite-agent artifact upload "logs/*" From 71b5dbac3ae412c796cf12c275998490fd51ec7d Mon Sep 17 00:00:00 2001 From: jan shahid shaik Date: Sun, 12 Jan 2025 20:49:11 +0530 Subject: [PATCH 17/18] TLS verify_ca verify mode Signed-off-by: jan shahid shaik --- components/automate-cs-bookshelf/habitat/plan.sh | 4 ++-- components/automate-cs-oc-bifrost/habitat/plan.sh | 4 ++-- components/automate-cs-oc-erchef/habitat/plan.sh | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/components/automate-cs-bookshelf/habitat/plan.sh b/components/automate-cs-bookshelf/habitat/plan.sh index 2c78032888c..510ecddd06d 100644 --- a/components/automate-cs-bookshelf/habitat/plan.sh +++ b/components/automate-cs-bookshelf/habitat/plan.sh @@ -8,7 +8,7 @@ pkg_description="Wrapper package for chef/bookshelf" pkg_origin="chef" # WARNING: Version managed by .expeditor/update_chef_server.sh -pkg_version="15.10.22" +pkg_version="15.10.28" vendor_origin="chef" pkg_maintainer="Chef Software Inc. " pkg_license=("Chef-MLSA") @@ -17,7 +17,7 @@ pkg_deps=( chef/mlsa "${local_platform_tools_origin:-chef}/automate-platform-tools" # WARNING: Version pin managed by .expeditor/update_chef_server.sh - "${vendor_origin}/bookshelf/15.10.22/20241216151651" + "${vendor_origin}/bookshelf/15.10.28/20250110073641" ) pkg_binds=( diff --git a/components/automate-cs-oc-bifrost/habitat/plan.sh b/components/automate-cs-oc-bifrost/habitat/plan.sh index f84497dbbcf..0012ccae240 100644 --- a/components/automate-cs-oc-bifrost/habitat/plan.sh +++ b/components/automate-cs-oc-bifrost/habitat/plan.sh @@ -8,7 +8,7 @@ pkg_description="Wrapper package for chef/oc_bifrost" pkg_origin="chef" # WARNING: Version managed by .expeditor/update_chef_server.sh -pkg_version="15.10.22" +pkg_version="15.10.28" vendor_origin="chef" pkg_maintainer="Chef Software Inc. " pkg_license=("Chef-MLSA") @@ -17,7 +17,7 @@ pkg_deps=( chef/mlsa "${local_platform_tools_origin:-chef}/automate-platform-tools" # WARNING: Version pin managed by .expeditor/update_chef_server.sh - "${vendor_origin}/oc_bifrost/15.10.22/20241216151651" + "${vendor_origin}/oc_bifrost/15.10.28/20250110073640" ) pkg_binds=( diff --git a/components/automate-cs-oc-erchef/habitat/plan.sh b/components/automate-cs-oc-erchef/habitat/plan.sh index e3670320efb..00afa1ed6b7 100644 --- a/components/automate-cs-oc-erchef/habitat/plan.sh +++ b/components/automate-cs-oc-erchef/habitat/plan.sh @@ -11,7 +11,7 @@ pkg_svc_user=root pkg_svc_group=root # WARNING: Version managed by .expeditor/update_chef_server.sh -pkg_version="15.10.22" +pkg_version="15.10.28" vendor_origin="chef" pkg_maintainer="Chef Software Inc. " pkg_license=("Chef-MLSA") @@ -22,7 +22,7 @@ pkg_deps=( chef/mlsa "${local_platform_tools_origin:-chef}/automate-platform-tools" # WARNING: Version pin managed by .expeditor/update_chef_server.sh - "${vendor_origin}/oc_erchef/15.10.22/20241216151651" + "${vendor_origin}/oc_erchef/15.10.28/20250110073640" ) pkg_build_deps=( From d257aa5368a5f5a7f75b579815b2e5084ad28a26 Mon Sep 17 00:00:00 2001 From: jan shahid shaik Date: Sun, 12 Jan 2025 21:58:49 +0530 Subject: [PATCH 18/18] removed debug logs from ha_chef_server Signed-off-by: jan shahid shaik --- integration/tests/ha_chef_server.sh | 19 ------------------- 1 file changed, 19 deletions(-) diff --git a/integration/tests/ha_chef_server.sh b/integration/tests/ha_chef_server.sh index fcebbacbc2e..fe349be7f95 100644 --- a/integration/tests/ha_chef_server.sh +++ b/integration/tests/ha_chef_server.sh @@ -193,22 +193,3 @@ do_cleanup() { docker stop "$_frontend1_container_name" docker stop "$_frontend2_container_name" } - -do_dump_logs() { - do_dump_logs_default - - docker exec -t "$_frontend1_container_name" journalctl --no-pager -u chef-automate > "logs/_frontend1_container_name" - docker exec -t "$_frontend2_container_name" journalctl --no-pager -u chef-automate > "logs/_frontend2_container_name" - - docker exec -t "$_frontend1_container_name" cp /hab/svc/automate-cs-oc-bifrost/var/etc/sqerl.config > "logs/sqerl.config" - docker exec -t "$_frontend1_container_name" cp /hab/svc/automate-cs-oc-erchef/var/etc/sqerl.config > "logs/sqerl_erchef.config" - # docker exec -t "$_frontend1_container_name" cp /hab/svc/automate-cs-oc-bifrost/config/* > "logs/" - - if command -v buildkite-agent; then - if ! buildkite-agent artifact upload "logs/*" - then - echo "Failed to frontend conatiner logs" - fi - fi - rm -r "$tmpdir" -} \ No newline at end of file