mirror of
https://github.com/garethgeorge/backrest.git
synced 2025-12-16 18:45:36 +00:00
2723 lines
99 KiB
Go
2723 lines
99 KiB
Go
// Code generated by protoc-gen-go. DO NOT EDIT.
|
|
// versions:
|
|
// protoc-gen-go v1.35.2
|
|
// protoc (unknown)
|
|
// source: v1/config.proto
|
|
|
|
package v1
|
|
|
|
import (
|
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
|
_ "google.golang.org/protobuf/types/known/emptypb"
|
|
reflect "reflect"
|
|
sync "sync"
|
|
)
|
|
|
|
const (
|
|
// Verify that this generated code is sufficiently up-to-date.
|
|
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
|
|
// Verify that runtime/protoimpl is sufficiently up-to-date.
|
|
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
|
|
)
|
|
|
|
type Multihost_Permission_Type int32
|
|
|
|
const (
|
|
Multihost_Permission_PERMISSION_UNKNOWN Multihost_Permission_Type = 0
|
|
// When granted to a knownHost the local instance will push local changes to that known host.
|
|
Multihost_Permission_PERMISSION_READ_OPERATIONS Multihost_Permission_Type = 1
|
|
// When granted to an authorizedClient, the client will be able to pull the configuration from the server.
|
|
// When granted to a knownHost, the known host will be able to pull configuration from the client.
|
|
Multihost_Permission_PERMISSION_READ_CONFIG Multihost_Permission_Type = 2 // read configuration for the resource in scope.
|
|
// When granted to an authorizedClient, the client will be able to write the configuration to the server.
|
|
// When granted to a knownHost, the known host will be able to write configuration.
|
|
Multihost_Permission_PERMISSION_READ_WRITE_CONFIG Multihost_Permission_Type = 3 // read and write configuration for the resource in scope.
|
|
)
|
|
|
|
// Enum value maps for Multihost_Permission_Type.
|
|
var (
|
|
Multihost_Permission_Type_name = map[int32]string{
|
|
0: "PERMISSION_UNKNOWN",
|
|
1: "PERMISSION_READ_OPERATIONS",
|
|
2: "PERMISSION_READ_CONFIG",
|
|
3: "PERMISSION_READ_WRITE_CONFIG",
|
|
}
|
|
Multihost_Permission_Type_value = map[string]int32{
|
|
"PERMISSION_UNKNOWN": 0,
|
|
"PERMISSION_READ_OPERATIONS": 1,
|
|
"PERMISSION_READ_CONFIG": 2,
|
|
"PERMISSION_READ_WRITE_CONFIG": 3,
|
|
}
|
|
)
|
|
|
|
func (x Multihost_Permission_Type) Enum() *Multihost_Permission_Type {
|
|
p := new(Multihost_Permission_Type)
|
|
*p = x
|
|
return p
|
|
}
|
|
|
|
func (x Multihost_Permission_Type) String() string {
|
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
|
}
|
|
|
|
func (Multihost_Permission_Type) Descriptor() protoreflect.EnumDescriptor {
|
|
return file_v1_config_proto_enumTypes[0].Descriptor()
|
|
}
|
|
|
|
func (Multihost_Permission_Type) Type() protoreflect.EnumType {
|
|
return &file_v1_config_proto_enumTypes[0]
|
|
}
|
|
|
|
func (x Multihost_Permission_Type) Number() protoreflect.EnumNumber {
|
|
return protoreflect.EnumNumber(x)
|
|
}
|
|
|
|
// Deprecated: Use Multihost_Permission_Type.Descriptor instead.
|
|
func (Multihost_Permission_Type) EnumDescriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{2, 1, 0}
|
|
}
|
|
|
|
type CommandPrefix_IONiceLevel int32
|
|
|
|
const (
|
|
CommandPrefix_IO_DEFAULT CommandPrefix_IONiceLevel = 0
|
|
CommandPrefix_IO_BEST_EFFORT_LOW CommandPrefix_IONiceLevel = 1
|
|
CommandPrefix_IO_BEST_EFFORT_HIGH CommandPrefix_IONiceLevel = 2
|
|
CommandPrefix_IO_IDLE CommandPrefix_IONiceLevel = 3
|
|
)
|
|
|
|
// Enum value maps for CommandPrefix_IONiceLevel.
|
|
var (
|
|
CommandPrefix_IONiceLevel_name = map[int32]string{
|
|
0: "IO_DEFAULT",
|
|
1: "IO_BEST_EFFORT_LOW",
|
|
2: "IO_BEST_EFFORT_HIGH",
|
|
3: "IO_IDLE",
|
|
}
|
|
CommandPrefix_IONiceLevel_value = map[string]int32{
|
|
"IO_DEFAULT": 0,
|
|
"IO_BEST_EFFORT_LOW": 1,
|
|
"IO_BEST_EFFORT_HIGH": 2,
|
|
"IO_IDLE": 3,
|
|
}
|
|
)
|
|
|
|
func (x CommandPrefix_IONiceLevel) Enum() *CommandPrefix_IONiceLevel {
|
|
p := new(CommandPrefix_IONiceLevel)
|
|
*p = x
|
|
return p
|
|
}
|
|
|
|
func (x CommandPrefix_IONiceLevel) String() string {
|
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
|
}
|
|
|
|
func (CommandPrefix_IONiceLevel) Descriptor() protoreflect.EnumDescriptor {
|
|
return file_v1_config_proto_enumTypes[1].Descriptor()
|
|
}
|
|
|
|
func (CommandPrefix_IONiceLevel) Type() protoreflect.EnumType {
|
|
return &file_v1_config_proto_enumTypes[1]
|
|
}
|
|
|
|
func (x CommandPrefix_IONiceLevel) Number() protoreflect.EnumNumber {
|
|
return protoreflect.EnumNumber(x)
|
|
}
|
|
|
|
// Deprecated: Use CommandPrefix_IONiceLevel.Descriptor instead.
|
|
func (CommandPrefix_IONiceLevel) EnumDescriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{5, 0}
|
|
}
|
|
|
|
type CommandPrefix_CPUNiceLevel int32
|
|
|
|
const (
|
|
CommandPrefix_CPU_DEFAULT CommandPrefix_CPUNiceLevel = 0
|
|
CommandPrefix_CPU_HIGH CommandPrefix_CPUNiceLevel = 1
|
|
CommandPrefix_CPU_LOW CommandPrefix_CPUNiceLevel = 2
|
|
)
|
|
|
|
// Enum value maps for CommandPrefix_CPUNiceLevel.
|
|
var (
|
|
CommandPrefix_CPUNiceLevel_name = map[int32]string{
|
|
0: "CPU_DEFAULT",
|
|
1: "CPU_HIGH",
|
|
2: "CPU_LOW",
|
|
}
|
|
CommandPrefix_CPUNiceLevel_value = map[string]int32{
|
|
"CPU_DEFAULT": 0,
|
|
"CPU_HIGH": 1,
|
|
"CPU_LOW": 2,
|
|
}
|
|
)
|
|
|
|
func (x CommandPrefix_CPUNiceLevel) Enum() *CommandPrefix_CPUNiceLevel {
|
|
p := new(CommandPrefix_CPUNiceLevel)
|
|
*p = x
|
|
return p
|
|
}
|
|
|
|
func (x CommandPrefix_CPUNiceLevel) String() string {
|
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
|
}
|
|
|
|
func (CommandPrefix_CPUNiceLevel) Descriptor() protoreflect.EnumDescriptor {
|
|
return file_v1_config_proto_enumTypes[2].Descriptor()
|
|
}
|
|
|
|
func (CommandPrefix_CPUNiceLevel) Type() protoreflect.EnumType {
|
|
return &file_v1_config_proto_enumTypes[2]
|
|
}
|
|
|
|
func (x CommandPrefix_CPUNiceLevel) Number() protoreflect.EnumNumber {
|
|
return protoreflect.EnumNumber(x)
|
|
}
|
|
|
|
// Deprecated: Use CommandPrefix_CPUNiceLevel.Descriptor instead.
|
|
func (CommandPrefix_CPUNiceLevel) EnumDescriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{5, 1}
|
|
}
|
|
|
|
type Schedule_Clock int32
|
|
|
|
const (
|
|
Schedule_CLOCK_DEFAULT Schedule_Clock = 0 // same as CLOCK_LOCAL
|
|
Schedule_CLOCK_LOCAL Schedule_Clock = 1
|
|
Schedule_CLOCK_UTC Schedule_Clock = 2
|
|
Schedule_CLOCK_LAST_RUN_TIME Schedule_Clock = 3
|
|
)
|
|
|
|
// Enum value maps for Schedule_Clock.
|
|
var (
|
|
Schedule_Clock_name = map[int32]string{
|
|
0: "CLOCK_DEFAULT",
|
|
1: "CLOCK_LOCAL",
|
|
2: "CLOCK_UTC",
|
|
3: "CLOCK_LAST_RUN_TIME",
|
|
}
|
|
Schedule_Clock_value = map[string]int32{
|
|
"CLOCK_DEFAULT": 0,
|
|
"CLOCK_LOCAL": 1,
|
|
"CLOCK_UTC": 2,
|
|
"CLOCK_LAST_RUN_TIME": 3,
|
|
}
|
|
)
|
|
|
|
func (x Schedule_Clock) Enum() *Schedule_Clock {
|
|
p := new(Schedule_Clock)
|
|
*p = x
|
|
return p
|
|
}
|
|
|
|
func (x Schedule_Clock) String() string {
|
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
|
}
|
|
|
|
func (Schedule_Clock) Descriptor() protoreflect.EnumDescriptor {
|
|
return file_v1_config_proto_enumTypes[3].Descriptor()
|
|
}
|
|
|
|
func (Schedule_Clock) Type() protoreflect.EnumType {
|
|
return &file_v1_config_proto_enumTypes[3]
|
|
}
|
|
|
|
func (x Schedule_Clock) Number() protoreflect.EnumNumber {
|
|
return protoreflect.EnumNumber(x)
|
|
}
|
|
|
|
// Deprecated: Use Schedule_Clock.Descriptor instead.
|
|
func (Schedule_Clock) EnumDescriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{9, 0}
|
|
}
|
|
|
|
type Hook_Condition int32
|
|
|
|
const (
|
|
Hook_CONDITION_UNKNOWN Hook_Condition = 0
|
|
Hook_CONDITION_ANY_ERROR Hook_Condition = 1 // error running any operation.
|
|
Hook_CONDITION_SNAPSHOT_START Hook_Condition = 2 // backup started.
|
|
Hook_CONDITION_SNAPSHOT_END Hook_Condition = 3 // backup completed (success or fail).
|
|
Hook_CONDITION_SNAPSHOT_ERROR Hook_Condition = 4 // snapshot failed.
|
|
Hook_CONDITION_SNAPSHOT_WARNING Hook_Condition = 5 // snapshot completed with warnings.
|
|
Hook_CONDITION_SNAPSHOT_SUCCESS Hook_Condition = 6 // snapshot succeeded.
|
|
Hook_CONDITION_SNAPSHOT_SKIPPED Hook_Condition = 7 // snapshot was skipped e.g. due to no changes.
|
|
// prune conditions
|
|
Hook_CONDITION_PRUNE_START Hook_Condition = 100 // prune started.
|
|
Hook_CONDITION_PRUNE_ERROR Hook_Condition = 101 // prune failed.
|
|
Hook_CONDITION_PRUNE_SUCCESS Hook_Condition = 102 // prune succeeded.
|
|
// check conditions
|
|
Hook_CONDITION_CHECK_START Hook_Condition = 200 // check started.
|
|
Hook_CONDITION_CHECK_ERROR Hook_Condition = 201 // check failed.
|
|
Hook_CONDITION_CHECK_SUCCESS Hook_Condition = 202 // check succeeded.
|
|
// forget conditions
|
|
Hook_CONDITION_FORGET_START Hook_Condition = 300 // forget started.
|
|
Hook_CONDITION_FORGET_ERROR Hook_Condition = 301 // forget failed.
|
|
Hook_CONDITION_FORGET_SUCCESS Hook_Condition = 302 // forget succeeded.
|
|
)
|
|
|
|
// Enum value maps for Hook_Condition.
|
|
var (
|
|
Hook_Condition_name = map[int32]string{
|
|
0: "CONDITION_UNKNOWN",
|
|
1: "CONDITION_ANY_ERROR",
|
|
2: "CONDITION_SNAPSHOT_START",
|
|
3: "CONDITION_SNAPSHOT_END",
|
|
4: "CONDITION_SNAPSHOT_ERROR",
|
|
5: "CONDITION_SNAPSHOT_WARNING",
|
|
6: "CONDITION_SNAPSHOT_SUCCESS",
|
|
7: "CONDITION_SNAPSHOT_SKIPPED",
|
|
100: "CONDITION_PRUNE_START",
|
|
101: "CONDITION_PRUNE_ERROR",
|
|
102: "CONDITION_PRUNE_SUCCESS",
|
|
200: "CONDITION_CHECK_START",
|
|
201: "CONDITION_CHECK_ERROR",
|
|
202: "CONDITION_CHECK_SUCCESS",
|
|
300: "CONDITION_FORGET_START",
|
|
301: "CONDITION_FORGET_ERROR",
|
|
302: "CONDITION_FORGET_SUCCESS",
|
|
}
|
|
Hook_Condition_value = map[string]int32{
|
|
"CONDITION_UNKNOWN": 0,
|
|
"CONDITION_ANY_ERROR": 1,
|
|
"CONDITION_SNAPSHOT_START": 2,
|
|
"CONDITION_SNAPSHOT_END": 3,
|
|
"CONDITION_SNAPSHOT_ERROR": 4,
|
|
"CONDITION_SNAPSHOT_WARNING": 5,
|
|
"CONDITION_SNAPSHOT_SUCCESS": 6,
|
|
"CONDITION_SNAPSHOT_SKIPPED": 7,
|
|
"CONDITION_PRUNE_START": 100,
|
|
"CONDITION_PRUNE_ERROR": 101,
|
|
"CONDITION_PRUNE_SUCCESS": 102,
|
|
"CONDITION_CHECK_START": 200,
|
|
"CONDITION_CHECK_ERROR": 201,
|
|
"CONDITION_CHECK_SUCCESS": 202,
|
|
"CONDITION_FORGET_START": 300,
|
|
"CONDITION_FORGET_ERROR": 301,
|
|
"CONDITION_FORGET_SUCCESS": 302,
|
|
}
|
|
)
|
|
|
|
func (x Hook_Condition) Enum() *Hook_Condition {
|
|
p := new(Hook_Condition)
|
|
*p = x
|
|
return p
|
|
}
|
|
|
|
func (x Hook_Condition) String() string {
|
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
|
}
|
|
|
|
func (Hook_Condition) Descriptor() protoreflect.EnumDescriptor {
|
|
return file_v1_config_proto_enumTypes[4].Descriptor()
|
|
}
|
|
|
|
func (Hook_Condition) Type() protoreflect.EnumType {
|
|
return &file_v1_config_proto_enumTypes[4]
|
|
}
|
|
|
|
func (x Hook_Condition) Number() protoreflect.EnumNumber {
|
|
return protoreflect.EnumNumber(x)
|
|
}
|
|
|
|
// Deprecated: Use Hook_Condition.Descriptor instead.
|
|
func (Hook_Condition) EnumDescriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{10, 0}
|
|
}
|
|
|
|
type Hook_OnError int32
|
|
|
|
const (
|
|
Hook_ON_ERROR_IGNORE Hook_OnError = 0
|
|
Hook_ON_ERROR_CANCEL Hook_OnError = 1 // cancels the operation and skips subsequent hooks
|
|
Hook_ON_ERROR_FATAL Hook_OnError = 2 // fails the operation and subsequent hooks.
|
|
Hook_ON_ERROR_RETRY_1MINUTE Hook_OnError = 100 // retry the operation every minute
|
|
Hook_ON_ERROR_RETRY_10MINUTES Hook_OnError = 101 // retry the operation every 10 minutes
|
|
Hook_ON_ERROR_RETRY_EXPONENTIAL_BACKOFF Hook_OnError = 103 // retry the operation with exponential backoff up to 1h max.
|
|
)
|
|
|
|
// Enum value maps for Hook_OnError.
|
|
var (
|
|
Hook_OnError_name = map[int32]string{
|
|
0: "ON_ERROR_IGNORE",
|
|
1: "ON_ERROR_CANCEL",
|
|
2: "ON_ERROR_FATAL",
|
|
100: "ON_ERROR_RETRY_1MINUTE",
|
|
101: "ON_ERROR_RETRY_10MINUTES",
|
|
103: "ON_ERROR_RETRY_EXPONENTIAL_BACKOFF",
|
|
}
|
|
Hook_OnError_value = map[string]int32{
|
|
"ON_ERROR_IGNORE": 0,
|
|
"ON_ERROR_CANCEL": 1,
|
|
"ON_ERROR_FATAL": 2,
|
|
"ON_ERROR_RETRY_1MINUTE": 100,
|
|
"ON_ERROR_RETRY_10MINUTES": 101,
|
|
"ON_ERROR_RETRY_EXPONENTIAL_BACKOFF": 103,
|
|
}
|
|
)
|
|
|
|
func (x Hook_OnError) Enum() *Hook_OnError {
|
|
p := new(Hook_OnError)
|
|
*p = x
|
|
return p
|
|
}
|
|
|
|
func (x Hook_OnError) String() string {
|
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
|
}
|
|
|
|
func (Hook_OnError) Descriptor() protoreflect.EnumDescriptor {
|
|
return file_v1_config_proto_enumTypes[5].Descriptor()
|
|
}
|
|
|
|
func (Hook_OnError) Type() protoreflect.EnumType {
|
|
return &file_v1_config_proto_enumTypes[5]
|
|
}
|
|
|
|
func (x Hook_OnError) Number() protoreflect.EnumNumber {
|
|
return protoreflect.EnumNumber(x)
|
|
}
|
|
|
|
// Deprecated: Use Hook_OnError.Descriptor instead.
|
|
func (Hook_OnError) EnumDescriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{10, 1}
|
|
}
|
|
|
|
type Hook_Webhook_Method int32
|
|
|
|
const (
|
|
Hook_Webhook_UNKNOWN Hook_Webhook_Method = 0
|
|
Hook_Webhook_GET Hook_Webhook_Method = 1
|
|
Hook_Webhook_POST Hook_Webhook_Method = 2
|
|
)
|
|
|
|
// Enum value maps for Hook_Webhook_Method.
|
|
var (
|
|
Hook_Webhook_Method_name = map[int32]string{
|
|
0: "UNKNOWN",
|
|
1: "GET",
|
|
2: "POST",
|
|
}
|
|
Hook_Webhook_Method_value = map[string]int32{
|
|
"UNKNOWN": 0,
|
|
"GET": 1,
|
|
"POST": 2,
|
|
}
|
|
)
|
|
|
|
func (x Hook_Webhook_Method) Enum() *Hook_Webhook_Method {
|
|
p := new(Hook_Webhook_Method)
|
|
*p = x
|
|
return p
|
|
}
|
|
|
|
func (x Hook_Webhook_Method) String() string {
|
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
|
}
|
|
|
|
func (Hook_Webhook_Method) Descriptor() protoreflect.EnumDescriptor {
|
|
return file_v1_config_proto_enumTypes[6].Descriptor()
|
|
}
|
|
|
|
func (Hook_Webhook_Method) Type() protoreflect.EnumType {
|
|
return &file_v1_config_proto_enumTypes[6]
|
|
}
|
|
|
|
func (x Hook_Webhook_Method) Number() protoreflect.EnumNumber {
|
|
return protoreflect.EnumNumber(x)
|
|
}
|
|
|
|
// Deprecated: Use Hook_Webhook_Method.Descriptor instead.
|
|
func (Hook_Webhook_Method) EnumDescriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{10, 1, 0}
|
|
}
|
|
|
|
type HubConfig struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Instances []*HubConfig_InstanceInfo `protobuf:"bytes,1,rep,name=instances,proto3" json:"instances,omitempty"`
|
|
}
|
|
|
|
func (x *HubConfig) Reset() {
|
|
*x = HubConfig{}
|
|
mi := &file_v1_config_proto_msgTypes[0]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *HubConfig) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*HubConfig) ProtoMessage() {}
|
|
|
|
func (x *HubConfig) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[0]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use HubConfig.ProtoReflect.Descriptor instead.
|
|
func (*HubConfig) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{0}
|
|
}
|
|
|
|
func (x *HubConfig) GetInstances() []*HubConfig_InstanceInfo {
|
|
if x != nil {
|
|
return x.Instances
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Config is the top level config object for restic UI.
|
|
type Config struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// modification number, used for read-modify-write consistency in the UI. Incremented on every write.
|
|
Modno int32 `protobuf:"varint,1,opt,name=modno,proto3" json:"modno,omitempty"`
|
|
Version int32 `protobuf:"varint,6,opt,name=version,proto3" json:"version,omitempty"` // version of the config file format. Used to determine when to run migrations.
|
|
// The instance name for the Backrest installation.
|
|
// This identifies backups created by this instance and is displayed in the UI.
|
|
Instance string `protobuf:"bytes,2,opt,name=instance,proto3" json:"instance,omitempty"`
|
|
Repos []*Repo `protobuf:"bytes,3,rep,name=repos,proto3" json:"repos,omitempty"`
|
|
Plans []*Plan `protobuf:"bytes,4,rep,name=plans,proto3" json:"plans,omitempty"`
|
|
Auth *Auth `protobuf:"bytes,5,opt,name=auth,proto3" json:"auth,omitempty"`
|
|
Multihost *Multihost `protobuf:"bytes,7,opt,name=multihost,json=sync,proto3" json:"multihost,omitempty"`
|
|
}
|
|
|
|
func (x *Config) Reset() {
|
|
*x = Config{}
|
|
mi := &file_v1_config_proto_msgTypes[1]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *Config) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Config) ProtoMessage() {}
|
|
|
|
func (x *Config) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[1]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Config.ProtoReflect.Descriptor instead.
|
|
func (*Config) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{1}
|
|
}
|
|
|
|
func (x *Config) GetModno() int32 {
|
|
if x != nil {
|
|
return x.Modno
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *Config) GetVersion() int32 {
|
|
if x != nil {
|
|
return x.Version
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *Config) GetInstance() string {
|
|
if x != nil {
|
|
return x.Instance
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Config) GetRepos() []*Repo {
|
|
if x != nil {
|
|
return x.Repos
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Config) GetPlans() []*Plan {
|
|
if x != nil {
|
|
return x.Plans
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Config) GetAuth() *Auth {
|
|
if x != nil {
|
|
return x.Auth
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Config) GetMultihost() *Multihost {
|
|
if x != nil {
|
|
return x.Multihost
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type Multihost struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Identity *PrivateKey `protobuf:"bytes,1,opt,name=identity,proto3" json:"identity,omitempty"`
|
|
KnownHosts []*Multihost_Peer `protobuf:"bytes,2,rep,name=known_hosts,json=knownHosts,proto3" json:"known_hosts,omitempty"`
|
|
AuthorizedClients []*Multihost_Peer `protobuf:"bytes,3,rep,name=authorized_clients,json=authorizedClients,proto3" json:"authorized_clients,omitempty"`
|
|
}
|
|
|
|
func (x *Multihost) Reset() {
|
|
*x = Multihost{}
|
|
mi := &file_v1_config_proto_msgTypes[2]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *Multihost) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Multihost) ProtoMessage() {}
|
|
|
|
func (x *Multihost) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[2]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Multihost.ProtoReflect.Descriptor instead.
|
|
func (*Multihost) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{2}
|
|
}
|
|
|
|
func (x *Multihost) GetIdentity() *PrivateKey {
|
|
if x != nil {
|
|
return x.Identity
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Multihost) GetKnownHosts() []*Multihost_Peer {
|
|
if x != nil {
|
|
return x.KnownHosts
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Multihost) GetAuthorizedClients() []*Multihost_Peer {
|
|
if x != nil {
|
|
return x.AuthorizedClients
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type Repo struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // unique but human readable ID for this repo.
|
|
Uri string `protobuf:"bytes,2,opt,name=uri,proto3" json:"uri,omitempty"` // URI of the repo.
|
|
Guid string `protobuf:"bytes,11,opt,name=guid,proto3" json:"guid,omitempty"` // a globally unique ID for this repo. Should be derived as the 'id' field in `restic cat config --json`.
|
|
Password string `protobuf:"bytes,3,opt,name=password,proto3" json:"password,omitempty"` // plaintext password
|
|
Env []string `protobuf:"bytes,4,rep,name=env,proto3" json:"env,omitempty"` // extra environment variables to set for restic.
|
|
Flags []string `protobuf:"bytes,5,rep,name=flags,proto3" json:"flags,omitempty"` // extra flags set on the restic command.
|
|
PrunePolicy *PrunePolicy `protobuf:"bytes,6,opt,name=prune_policy,json=prunePolicy,proto3" json:"prune_policy,omitempty"` // policy for when to run prune.
|
|
CheckPolicy *CheckPolicy `protobuf:"bytes,9,opt,name=check_policy,json=checkPolicy,proto3" json:"check_policy,omitempty"` // policy for when to run check.
|
|
Hooks []*Hook `protobuf:"bytes,7,rep,name=hooks,proto3" json:"hooks,omitempty"` // hooks to run on events for this repo.
|
|
AutoUnlock bool `protobuf:"varint,8,opt,name=auto_unlock,json=autoUnlock,proto3" json:"auto_unlock,omitempty"` // automatically unlock the repo when needed.
|
|
AutoInitialize bool `protobuf:"varint,12,opt,name=auto_initialize,json=autoInitialize,proto3" json:"auto_initialize,omitempty"` // whether the repo should be auto-initialized if not found.
|
|
CommandPrefix *CommandPrefix `protobuf:"bytes,10,opt,name=command_prefix,json=commandPrefix,proto3" json:"command_prefix,omitempty"` // modifiers for the restic commands
|
|
}
|
|
|
|
func (x *Repo) Reset() {
|
|
*x = Repo{}
|
|
mi := &file_v1_config_proto_msgTypes[3]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *Repo) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Repo) ProtoMessage() {}
|
|
|
|
func (x *Repo) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[3]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Repo.ProtoReflect.Descriptor instead.
|
|
func (*Repo) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{3}
|
|
}
|
|
|
|
func (x *Repo) GetId() string {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Repo) GetUri() string {
|
|
if x != nil {
|
|
return x.Uri
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Repo) GetGuid() string {
|
|
if x != nil {
|
|
return x.Guid
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Repo) GetPassword() string {
|
|
if x != nil {
|
|
return x.Password
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Repo) GetEnv() []string {
|
|
if x != nil {
|
|
return x.Env
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Repo) GetFlags() []string {
|
|
if x != nil {
|
|
return x.Flags
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Repo) GetPrunePolicy() *PrunePolicy {
|
|
if x != nil {
|
|
return x.PrunePolicy
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Repo) GetCheckPolicy() *CheckPolicy {
|
|
if x != nil {
|
|
return x.CheckPolicy
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Repo) GetHooks() []*Hook {
|
|
if x != nil {
|
|
return x.Hooks
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Repo) GetAutoUnlock() bool {
|
|
if x != nil {
|
|
return x.AutoUnlock
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *Repo) GetAutoInitialize() bool {
|
|
if x != nil {
|
|
return x.AutoInitialize
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *Repo) GetCommandPrefix() *CommandPrefix {
|
|
if x != nil {
|
|
return x.CommandPrefix
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type Plan struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // unique but human readable ID for this plan.
|
|
Repo string `protobuf:"bytes,2,opt,name=repo,proto3" json:"repo,omitempty"` // ID of the repo to use.
|
|
Paths []string `protobuf:"bytes,4,rep,name=paths,proto3" json:"paths,omitempty"` // paths to include in the backup.
|
|
Excludes []string `protobuf:"bytes,5,rep,name=excludes,proto3" json:"excludes,omitempty"` // glob patterns to exclude.
|
|
Iexcludes []string `protobuf:"bytes,9,rep,name=iexcludes,proto3" json:"iexcludes,omitempty"` // case insensitive glob patterns to exclude.
|
|
Schedule *Schedule `protobuf:"bytes,12,opt,name=schedule,proto3" json:"schedule,omitempty"` // schedule for the backup.
|
|
Retention *RetentionPolicy `protobuf:"bytes,7,opt,name=retention,proto3" json:"retention,omitempty"` // retention policy for snapshots.
|
|
Hooks []*Hook `protobuf:"bytes,8,rep,name=hooks,proto3" json:"hooks,omitempty"` // hooks to run on events for this plan.
|
|
BackupFlags []string `protobuf:"bytes,10,rep,name=backup_flags,proto3" json:"backup_flags,omitempty"` // extra flags to set when running a backup command.
|
|
SkipIfUnchanged bool `protobuf:"varint,13,opt,name=skip_if_unchanged,json=skipIfUnchanged,proto3" json:"skip_if_unchanged,omitempty"` // skip the backup if no changes are detected.
|
|
}
|
|
|
|
func (x *Plan) Reset() {
|
|
*x = Plan{}
|
|
mi := &file_v1_config_proto_msgTypes[4]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *Plan) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Plan) ProtoMessage() {}
|
|
|
|
func (x *Plan) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[4]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Plan.ProtoReflect.Descriptor instead.
|
|
func (*Plan) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{4}
|
|
}
|
|
|
|
func (x *Plan) GetId() string {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Plan) GetRepo() string {
|
|
if x != nil {
|
|
return x.Repo
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Plan) GetPaths() []string {
|
|
if x != nil {
|
|
return x.Paths
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Plan) GetExcludes() []string {
|
|
if x != nil {
|
|
return x.Excludes
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Plan) GetIexcludes() []string {
|
|
if x != nil {
|
|
return x.Iexcludes
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Plan) GetSchedule() *Schedule {
|
|
if x != nil {
|
|
return x.Schedule
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Plan) GetRetention() *RetentionPolicy {
|
|
if x != nil {
|
|
return x.Retention
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Plan) GetHooks() []*Hook {
|
|
if x != nil {
|
|
return x.Hooks
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Plan) GetBackupFlags() []string {
|
|
if x != nil {
|
|
return x.BackupFlags
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Plan) GetSkipIfUnchanged() bool {
|
|
if x != nil {
|
|
return x.SkipIfUnchanged
|
|
}
|
|
return false
|
|
}
|
|
|
|
type CommandPrefix struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
IoNice CommandPrefix_IONiceLevel `protobuf:"varint,1,opt,name=io_nice,json=ioNice,proto3,enum=v1.CommandPrefix_IONiceLevel" json:"io_nice,omitempty"` // ionice level to set.
|
|
CpuNice CommandPrefix_CPUNiceLevel `protobuf:"varint,2,opt,name=cpu_nice,json=cpuNice,proto3,enum=v1.CommandPrefix_CPUNiceLevel" json:"cpu_nice,omitempty"` // nice level to set.
|
|
}
|
|
|
|
func (x *CommandPrefix) Reset() {
|
|
*x = CommandPrefix{}
|
|
mi := &file_v1_config_proto_msgTypes[5]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *CommandPrefix) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*CommandPrefix) ProtoMessage() {}
|
|
|
|
func (x *CommandPrefix) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[5]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use CommandPrefix.ProtoReflect.Descriptor instead.
|
|
func (*CommandPrefix) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{5}
|
|
}
|
|
|
|
func (x *CommandPrefix) GetIoNice() CommandPrefix_IONiceLevel {
|
|
if x != nil {
|
|
return x.IoNice
|
|
}
|
|
return CommandPrefix_IO_DEFAULT
|
|
}
|
|
|
|
func (x *CommandPrefix) GetCpuNice() CommandPrefix_CPUNiceLevel {
|
|
if x != nil {
|
|
return x.CpuNice
|
|
}
|
|
return CommandPrefix_CPU_DEFAULT
|
|
}
|
|
|
|
type RetentionPolicy struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Types that are assignable to Policy:
|
|
//
|
|
// *RetentionPolicy_PolicyKeepLastN
|
|
// *RetentionPolicy_PolicyTimeBucketed
|
|
// *RetentionPolicy_PolicyKeepAll
|
|
Policy isRetentionPolicy_Policy `protobuf_oneof:"policy"`
|
|
}
|
|
|
|
func (x *RetentionPolicy) Reset() {
|
|
*x = RetentionPolicy{}
|
|
mi := &file_v1_config_proto_msgTypes[6]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *RetentionPolicy) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*RetentionPolicy) ProtoMessage() {}
|
|
|
|
func (x *RetentionPolicy) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[6]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use RetentionPolicy.ProtoReflect.Descriptor instead.
|
|
func (*RetentionPolicy) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{6}
|
|
}
|
|
|
|
func (m *RetentionPolicy) GetPolicy() isRetentionPolicy_Policy {
|
|
if m != nil {
|
|
return m.Policy
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *RetentionPolicy) GetPolicyKeepLastN() int32 {
|
|
if x, ok := x.GetPolicy().(*RetentionPolicy_PolicyKeepLastN); ok {
|
|
return x.PolicyKeepLastN
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *RetentionPolicy) GetPolicyTimeBucketed() *RetentionPolicy_TimeBucketedCounts {
|
|
if x, ok := x.GetPolicy().(*RetentionPolicy_PolicyTimeBucketed); ok {
|
|
return x.PolicyTimeBucketed
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *RetentionPolicy) GetPolicyKeepAll() bool {
|
|
if x, ok := x.GetPolicy().(*RetentionPolicy_PolicyKeepAll); ok {
|
|
return x.PolicyKeepAll
|
|
}
|
|
return false
|
|
}
|
|
|
|
type isRetentionPolicy_Policy interface {
|
|
isRetentionPolicy_Policy()
|
|
}
|
|
|
|
type RetentionPolicy_PolicyKeepLastN struct {
|
|
PolicyKeepLastN int32 `protobuf:"varint,10,opt,name=policy_keep_last_n,json=policyKeepLastN,proto3,oneof"`
|
|
}
|
|
|
|
type RetentionPolicy_PolicyTimeBucketed struct {
|
|
PolicyTimeBucketed *RetentionPolicy_TimeBucketedCounts `protobuf:"bytes,11,opt,name=policy_time_bucketed,json=policyTimeBucketed,proto3,oneof"`
|
|
}
|
|
|
|
type RetentionPolicy_PolicyKeepAll struct {
|
|
PolicyKeepAll bool `protobuf:"varint,12,opt,name=policy_keep_all,json=policyKeepAll,proto3,oneof"`
|
|
}
|
|
|
|
func (*RetentionPolicy_PolicyKeepLastN) isRetentionPolicy_Policy() {}
|
|
|
|
func (*RetentionPolicy_PolicyTimeBucketed) isRetentionPolicy_Policy() {}
|
|
|
|
func (*RetentionPolicy_PolicyKeepAll) isRetentionPolicy_Policy() {}
|
|
|
|
type PrunePolicy struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Schedule *Schedule `protobuf:"bytes,2,opt,name=schedule,proto3" json:"schedule,omitempty"`
|
|
MaxUnusedBytes int64 `protobuf:"varint,3,opt,name=max_unused_bytes,json=maxUnusedBytes,proto3" json:"max_unused_bytes,omitempty"` // max unused bytes before running prune.
|
|
MaxUnusedPercent float64 `protobuf:"fixed64,4,opt,name=max_unused_percent,json=maxUnusedPercent,proto3" json:"max_unused_percent,omitempty"` // max unused percent before running prune.
|
|
}
|
|
|
|
func (x *PrunePolicy) Reset() {
|
|
*x = PrunePolicy{}
|
|
mi := &file_v1_config_proto_msgTypes[7]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *PrunePolicy) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*PrunePolicy) ProtoMessage() {}
|
|
|
|
func (x *PrunePolicy) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[7]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use PrunePolicy.ProtoReflect.Descriptor instead.
|
|
func (*PrunePolicy) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{7}
|
|
}
|
|
|
|
func (x *PrunePolicy) GetSchedule() *Schedule {
|
|
if x != nil {
|
|
return x.Schedule
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *PrunePolicy) GetMaxUnusedBytes() int64 {
|
|
if x != nil {
|
|
return x.MaxUnusedBytes
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *PrunePolicy) GetMaxUnusedPercent() float64 {
|
|
if x != nil {
|
|
return x.MaxUnusedPercent
|
|
}
|
|
return 0
|
|
}
|
|
|
|
type CheckPolicy struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Schedule *Schedule `protobuf:"bytes,1,opt,name=schedule,proto3" json:"schedule,omitempty"`
|
|
// Types that are assignable to Mode:
|
|
//
|
|
// *CheckPolicy_StructureOnly
|
|
// *CheckPolicy_ReadDataSubsetPercent
|
|
Mode isCheckPolicy_Mode `protobuf_oneof:"mode"`
|
|
}
|
|
|
|
func (x *CheckPolicy) Reset() {
|
|
*x = CheckPolicy{}
|
|
mi := &file_v1_config_proto_msgTypes[8]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *CheckPolicy) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*CheckPolicy) ProtoMessage() {}
|
|
|
|
func (x *CheckPolicy) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[8]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use CheckPolicy.ProtoReflect.Descriptor instead.
|
|
func (*CheckPolicy) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{8}
|
|
}
|
|
|
|
func (x *CheckPolicy) GetSchedule() *Schedule {
|
|
if x != nil {
|
|
return x.Schedule
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *CheckPolicy) GetMode() isCheckPolicy_Mode {
|
|
if m != nil {
|
|
return m.Mode
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *CheckPolicy) GetStructureOnly() bool {
|
|
if x, ok := x.GetMode().(*CheckPolicy_StructureOnly); ok {
|
|
return x.StructureOnly
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *CheckPolicy) GetReadDataSubsetPercent() float64 {
|
|
if x, ok := x.GetMode().(*CheckPolicy_ReadDataSubsetPercent); ok {
|
|
return x.ReadDataSubsetPercent
|
|
}
|
|
return 0
|
|
}
|
|
|
|
type isCheckPolicy_Mode interface {
|
|
isCheckPolicy_Mode()
|
|
}
|
|
|
|
type CheckPolicy_StructureOnly struct {
|
|
StructureOnly bool `protobuf:"varint,100,opt,name=structure_only,json=structureOnly,proto3,oneof"` // only check the structure of the repo. No pack data is read.
|
|
}
|
|
|
|
type CheckPolicy_ReadDataSubsetPercent struct {
|
|
ReadDataSubsetPercent float64 `protobuf:"fixed64,101,opt,name=read_data_subset_percent,json=readDataSubsetPercent,proto3,oneof"` // check a percentage of pack data.
|
|
}
|
|
|
|
func (*CheckPolicy_StructureOnly) isCheckPolicy_Mode() {}
|
|
|
|
func (*CheckPolicy_ReadDataSubsetPercent) isCheckPolicy_Mode() {}
|
|
|
|
type Schedule struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Types that are assignable to Schedule:
|
|
//
|
|
// *Schedule_Disabled
|
|
// *Schedule_Cron
|
|
// *Schedule_MaxFrequencyDays
|
|
// *Schedule_MaxFrequencyHours
|
|
Schedule isSchedule_Schedule `protobuf_oneof:"schedule"`
|
|
Clock Schedule_Clock `protobuf:"varint,5,opt,name=clock,proto3,enum=v1.Schedule_Clock" json:"clock,omitempty"` // clock to use for scheduling.
|
|
}
|
|
|
|
func (x *Schedule) Reset() {
|
|
*x = Schedule{}
|
|
mi := &file_v1_config_proto_msgTypes[9]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *Schedule) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Schedule) ProtoMessage() {}
|
|
|
|
func (x *Schedule) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[9]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Schedule.ProtoReflect.Descriptor instead.
|
|
func (*Schedule) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{9}
|
|
}
|
|
|
|
func (m *Schedule) GetSchedule() isSchedule_Schedule {
|
|
if m != nil {
|
|
return m.Schedule
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Schedule) GetDisabled() bool {
|
|
if x, ok := x.GetSchedule().(*Schedule_Disabled); ok {
|
|
return x.Disabled
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *Schedule) GetCron() string {
|
|
if x, ok := x.GetSchedule().(*Schedule_Cron); ok {
|
|
return x.Cron
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Schedule) GetMaxFrequencyDays() int32 {
|
|
if x, ok := x.GetSchedule().(*Schedule_MaxFrequencyDays); ok {
|
|
return x.MaxFrequencyDays
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *Schedule) GetMaxFrequencyHours() int32 {
|
|
if x, ok := x.GetSchedule().(*Schedule_MaxFrequencyHours); ok {
|
|
return x.MaxFrequencyHours
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *Schedule) GetClock() Schedule_Clock {
|
|
if x != nil {
|
|
return x.Clock
|
|
}
|
|
return Schedule_CLOCK_DEFAULT
|
|
}
|
|
|
|
type isSchedule_Schedule interface {
|
|
isSchedule_Schedule()
|
|
}
|
|
|
|
type Schedule_Disabled struct {
|
|
Disabled bool `protobuf:"varint,1,opt,name=disabled,proto3,oneof"` // disable the schedule.
|
|
}
|
|
|
|
type Schedule_Cron struct {
|
|
Cron string `protobuf:"bytes,2,opt,name=cron,proto3,oneof"` // cron expression describing the schedule.
|
|
}
|
|
|
|
type Schedule_MaxFrequencyDays struct {
|
|
MaxFrequencyDays int32 `protobuf:"varint,3,opt,name=maxFrequencyDays,proto3,oneof"` // max frequency of runs in days.
|
|
}
|
|
|
|
type Schedule_MaxFrequencyHours struct {
|
|
MaxFrequencyHours int32 `protobuf:"varint,4,opt,name=maxFrequencyHours,proto3,oneof"` // max frequency of runs in hours.
|
|
}
|
|
|
|
func (*Schedule_Disabled) isSchedule_Schedule() {}
|
|
|
|
func (*Schedule_Cron) isSchedule_Schedule() {}
|
|
|
|
func (*Schedule_MaxFrequencyDays) isSchedule_Schedule() {}
|
|
|
|
func (*Schedule_MaxFrequencyHours) isSchedule_Schedule() {}
|
|
|
|
type Hook struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Conditions []Hook_Condition `protobuf:"varint,1,rep,packed,name=conditions,proto3,enum=v1.Hook_Condition" json:"conditions,omitempty"`
|
|
OnError Hook_OnError `protobuf:"varint,2,opt,name=on_error,json=onError,proto3,enum=v1.Hook_OnError" json:"on_error,omitempty"`
|
|
// Types that are assignable to Action:
|
|
//
|
|
// *Hook_ActionCommand
|
|
// *Hook_ActionWebhook
|
|
// *Hook_ActionDiscord
|
|
// *Hook_ActionGotify
|
|
// *Hook_ActionSlack
|
|
// *Hook_ActionShoutrrr
|
|
// *Hook_ActionHealthchecks
|
|
Action isHook_Action `protobuf_oneof:"action"`
|
|
}
|
|
|
|
func (x *Hook) Reset() {
|
|
*x = Hook{}
|
|
mi := &file_v1_config_proto_msgTypes[10]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *Hook) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Hook) ProtoMessage() {}
|
|
|
|
func (x *Hook) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[10]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Hook.ProtoReflect.Descriptor instead.
|
|
func (*Hook) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{10}
|
|
}
|
|
|
|
func (x *Hook) GetConditions() []Hook_Condition {
|
|
if x != nil {
|
|
return x.Conditions
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Hook) GetOnError() Hook_OnError {
|
|
if x != nil {
|
|
return x.OnError
|
|
}
|
|
return Hook_ON_ERROR_IGNORE
|
|
}
|
|
|
|
func (m *Hook) GetAction() isHook_Action {
|
|
if m != nil {
|
|
return m.Action
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Hook) GetActionCommand() *Hook_Command {
|
|
if x, ok := x.GetAction().(*Hook_ActionCommand); ok {
|
|
return x.ActionCommand
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Hook) GetActionWebhook() *Hook_Webhook {
|
|
if x, ok := x.GetAction().(*Hook_ActionWebhook); ok {
|
|
return x.ActionWebhook
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Hook) GetActionDiscord() *Hook_Discord {
|
|
if x, ok := x.GetAction().(*Hook_ActionDiscord); ok {
|
|
return x.ActionDiscord
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Hook) GetActionGotify() *Hook_Gotify {
|
|
if x, ok := x.GetAction().(*Hook_ActionGotify); ok {
|
|
return x.ActionGotify
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Hook) GetActionSlack() *Hook_Slack {
|
|
if x, ok := x.GetAction().(*Hook_ActionSlack); ok {
|
|
return x.ActionSlack
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Hook) GetActionShoutrrr() *Hook_Shoutrrr {
|
|
if x, ok := x.GetAction().(*Hook_ActionShoutrrr); ok {
|
|
return x.ActionShoutrrr
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Hook) GetActionHealthchecks() *Hook_Healthchecks {
|
|
if x, ok := x.GetAction().(*Hook_ActionHealthchecks); ok {
|
|
return x.ActionHealthchecks
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type isHook_Action interface {
|
|
isHook_Action()
|
|
}
|
|
|
|
type Hook_ActionCommand struct {
|
|
ActionCommand *Hook_Command `protobuf:"bytes,100,opt,name=action_command,json=actionCommand,proto3,oneof"`
|
|
}
|
|
|
|
type Hook_ActionWebhook struct {
|
|
ActionWebhook *Hook_Webhook `protobuf:"bytes,101,opt,name=action_webhook,json=actionWebhook,proto3,oneof"`
|
|
}
|
|
|
|
type Hook_ActionDiscord struct {
|
|
ActionDiscord *Hook_Discord `protobuf:"bytes,102,opt,name=action_discord,json=actionDiscord,proto3,oneof"`
|
|
}
|
|
|
|
type Hook_ActionGotify struct {
|
|
ActionGotify *Hook_Gotify `protobuf:"bytes,103,opt,name=action_gotify,json=actionGotify,proto3,oneof"`
|
|
}
|
|
|
|
type Hook_ActionSlack struct {
|
|
ActionSlack *Hook_Slack `protobuf:"bytes,104,opt,name=action_slack,json=actionSlack,proto3,oneof"`
|
|
}
|
|
|
|
type Hook_ActionShoutrrr struct {
|
|
ActionShoutrrr *Hook_Shoutrrr `protobuf:"bytes,105,opt,name=action_shoutrrr,json=actionShoutrrr,proto3,oneof"`
|
|
}
|
|
|
|
type Hook_ActionHealthchecks struct {
|
|
ActionHealthchecks *Hook_Healthchecks `protobuf:"bytes,106,opt,name=action_healthchecks,json=actionHealthchecks,proto3,oneof"`
|
|
}
|
|
|
|
func (*Hook_ActionCommand) isHook_Action() {}
|
|
|
|
func (*Hook_ActionWebhook) isHook_Action() {}
|
|
|
|
func (*Hook_ActionDiscord) isHook_Action() {}
|
|
|
|
func (*Hook_ActionGotify) isHook_Action() {}
|
|
|
|
func (*Hook_ActionSlack) isHook_Action() {}
|
|
|
|
func (*Hook_ActionShoutrrr) isHook_Action() {}
|
|
|
|
func (*Hook_ActionHealthchecks) isHook_Action() {}
|
|
|
|
type Auth struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Disabled bool `protobuf:"varint,1,opt,name=disabled,proto3" json:"disabled,omitempty"` // disable authentication.
|
|
Users []*User `protobuf:"bytes,2,rep,name=users,proto3" json:"users,omitempty"` // users to allow access to the UI.
|
|
}
|
|
|
|
func (x *Auth) Reset() {
|
|
*x = Auth{}
|
|
mi := &file_v1_config_proto_msgTypes[11]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *Auth) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Auth) ProtoMessage() {}
|
|
|
|
func (x *Auth) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[11]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Auth.ProtoReflect.Descriptor instead.
|
|
func (*Auth) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{11}
|
|
}
|
|
|
|
func (x *Auth) GetDisabled() bool {
|
|
if x != nil {
|
|
return x.Disabled
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *Auth) GetUsers() []*User {
|
|
if x != nil {
|
|
return x.Users
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type User struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
|
|
// Types that are assignable to Password:
|
|
//
|
|
// *User_PasswordBcrypt
|
|
Password isUser_Password `protobuf_oneof:"password"`
|
|
}
|
|
|
|
func (x *User) Reset() {
|
|
*x = User{}
|
|
mi := &file_v1_config_proto_msgTypes[12]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *User) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*User) ProtoMessage() {}
|
|
|
|
func (x *User) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[12]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use User.ProtoReflect.Descriptor instead.
|
|
func (*User) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{12}
|
|
}
|
|
|
|
func (x *User) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (m *User) GetPassword() isUser_Password {
|
|
if m != nil {
|
|
return m.Password
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *User) GetPasswordBcrypt() string {
|
|
if x, ok := x.GetPassword().(*User_PasswordBcrypt); ok {
|
|
return x.PasswordBcrypt
|
|
}
|
|
return ""
|
|
}
|
|
|
|
type isUser_Password interface {
|
|
isUser_Password()
|
|
}
|
|
|
|
type User_PasswordBcrypt struct {
|
|
PasswordBcrypt string `protobuf:"bytes,2,opt,name=password_bcrypt,json=passwordBcrypt,proto3,oneof"`
|
|
}
|
|
|
|
func (*User_PasswordBcrypt) isUser_Password() {}
|
|
|
|
type HubConfig_InstanceInfo struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
|
|
Secret string `protobuf:"bytes,2,opt,name=secret,proto3" json:"secret,omitempty"` // secret used to authenticate with the hub.
|
|
}
|
|
|
|
func (x *HubConfig_InstanceInfo) Reset() {
|
|
*x = HubConfig_InstanceInfo{}
|
|
mi := &file_v1_config_proto_msgTypes[13]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *HubConfig_InstanceInfo) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*HubConfig_InstanceInfo) ProtoMessage() {}
|
|
|
|
func (x *HubConfig_InstanceInfo) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[13]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use HubConfig_InstanceInfo.ProtoReflect.Descriptor instead.
|
|
func (*HubConfig_InstanceInfo) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{0, 0}
|
|
}
|
|
|
|
func (x *HubConfig_InstanceInfo) GetId() string {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *HubConfig_InstanceInfo) GetSecret() string {
|
|
if x != nil {
|
|
return x.Secret
|
|
}
|
|
return ""
|
|
}
|
|
|
|
type Multihost_Peer struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
InstanceId string `protobuf:"bytes,1,opt,name=instance_id,json=instanceId,proto3" json:"instance_id,omitempty"` // a human readable name for the peer, typically the same as its instance ID.
|
|
Keyid string `protobuf:"bytes,2,opt,name=keyid,json=keyId,proto3" json:"keyid,omitempty"` // the key ID of the peer. This must match the sha256 of the public key the client provides in handshake.
|
|
KeyidVerified bool `protobuf:"varint,3,opt,name=keyid_verified,json=keyIdVerified,proto3" json:"keyid_verified,omitempty"` // marks whether the key ID was visually verified by the user, this must be done for authorized clients. Not required for known hosts but recommended.
|
|
Permissions []*Multihost_Permission `protobuf:"bytes,5,rep,name=permissions,proto3" json:"permissions,omitempty"` // permissions granted to this peer.
|
|
// Known host only fields
|
|
InstanceUrl string `protobuf:"bytes,4,opt,name=instance_url,json=instanceUrl,proto3" json:"instance_url,omitempty"` // instance URL, required for a known host. Otherwise meaningless.
|
|
}
|
|
|
|
func (x *Multihost_Peer) Reset() {
|
|
*x = Multihost_Peer{}
|
|
mi := &file_v1_config_proto_msgTypes[14]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *Multihost_Peer) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Multihost_Peer) ProtoMessage() {}
|
|
|
|
func (x *Multihost_Peer) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[14]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Multihost_Peer.ProtoReflect.Descriptor instead.
|
|
func (*Multihost_Peer) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{2, 0}
|
|
}
|
|
|
|
func (x *Multihost_Peer) GetInstanceId() string {
|
|
if x != nil {
|
|
return x.InstanceId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Multihost_Peer) GetKeyid() string {
|
|
if x != nil {
|
|
return x.Keyid
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Multihost_Peer) GetKeyidVerified() bool {
|
|
if x != nil {
|
|
return x.KeyidVerified
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *Multihost_Peer) GetPermissions() []*Multihost_Permission {
|
|
if x != nil {
|
|
return x.Permissions
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Multihost_Peer) GetInstanceUrl() string {
|
|
if x != nil {
|
|
return x.InstanceUrl
|
|
}
|
|
return ""
|
|
}
|
|
|
|
type Multihost_Permission struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Scopes are any of '*', 'repo:<repo_id>' or 'plan:<plan_id>','-repo:<repo_id>','-plan:<plan_id>'.
|
|
// '*' means all repos and plans, 'repo:<repo_id>' means the repo with the given ID, 'plan:<plan_id>' means the plan with the given ID.
|
|
// '!repo:<repo_id>' means all repos except the one with the given ID, '!plan:<plan_id>' means all plans except the one with the given ID.
|
|
Type Multihost_Permission_Type `protobuf:"varint,1,opt,name=type,proto3,enum=v1.Multihost_Permission_Type" json:"type,omitempty"`
|
|
Scopes []string `protobuf:"bytes,2,rep,name=scopes,proto3" json:"scopes,omitempty"`
|
|
}
|
|
|
|
func (x *Multihost_Permission) Reset() {
|
|
*x = Multihost_Permission{}
|
|
mi := &file_v1_config_proto_msgTypes[15]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *Multihost_Permission) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Multihost_Permission) ProtoMessage() {}
|
|
|
|
func (x *Multihost_Permission) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[15]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Multihost_Permission.ProtoReflect.Descriptor instead.
|
|
func (*Multihost_Permission) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{2, 1}
|
|
}
|
|
|
|
func (x *Multihost_Permission) GetType() Multihost_Permission_Type {
|
|
if x != nil {
|
|
return x.Type
|
|
}
|
|
return Multihost_Permission_PERMISSION_UNKNOWN
|
|
}
|
|
|
|
func (x *Multihost_Permission) GetScopes() []string {
|
|
if x != nil {
|
|
return x.Scopes
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type RetentionPolicy_TimeBucketedCounts struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Hourly int32 `protobuf:"varint,1,opt,name=hourly,proto3" json:"hourly,omitempty"` // keep the last n hourly snapshots.
|
|
Daily int32 `protobuf:"varint,2,opt,name=daily,proto3" json:"daily,omitempty"` // keep the last n daily snapshots.
|
|
Weekly int32 `protobuf:"varint,3,opt,name=weekly,proto3" json:"weekly,omitempty"` // keep the last n weekly snapshots.
|
|
Monthly int32 `protobuf:"varint,4,opt,name=monthly,proto3" json:"monthly,omitempty"` // keep the last n monthly snapshots.
|
|
Yearly int32 `protobuf:"varint,5,opt,name=yearly,proto3" json:"yearly,omitempty"` // keep the last n yearly snapshots.
|
|
KeepLastN int32 `protobuf:"varint,6,opt,name=keep_last_n,json=keepLastN,proto3" json:"keep_last_n,omitempty"` // keep the last n snapshots regardless of age.
|
|
}
|
|
|
|
func (x *RetentionPolicy_TimeBucketedCounts) Reset() {
|
|
*x = RetentionPolicy_TimeBucketedCounts{}
|
|
mi := &file_v1_config_proto_msgTypes[16]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *RetentionPolicy_TimeBucketedCounts) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*RetentionPolicy_TimeBucketedCounts) ProtoMessage() {}
|
|
|
|
func (x *RetentionPolicy_TimeBucketedCounts) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[16]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use RetentionPolicy_TimeBucketedCounts.ProtoReflect.Descriptor instead.
|
|
func (*RetentionPolicy_TimeBucketedCounts) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{6, 0}
|
|
}
|
|
|
|
func (x *RetentionPolicy_TimeBucketedCounts) GetHourly() int32 {
|
|
if x != nil {
|
|
return x.Hourly
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *RetentionPolicy_TimeBucketedCounts) GetDaily() int32 {
|
|
if x != nil {
|
|
return x.Daily
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *RetentionPolicy_TimeBucketedCounts) GetWeekly() int32 {
|
|
if x != nil {
|
|
return x.Weekly
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *RetentionPolicy_TimeBucketedCounts) GetMonthly() int32 {
|
|
if x != nil {
|
|
return x.Monthly
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *RetentionPolicy_TimeBucketedCounts) GetYearly() int32 {
|
|
if x != nil {
|
|
return x.Yearly
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *RetentionPolicy_TimeBucketedCounts) GetKeepLastN() int32 {
|
|
if x != nil {
|
|
return x.KeepLastN
|
|
}
|
|
return 0
|
|
}
|
|
|
|
type Hook_Command struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Command string `protobuf:"bytes,1,opt,name=command,proto3" json:"command,omitempty"`
|
|
}
|
|
|
|
func (x *Hook_Command) Reset() {
|
|
*x = Hook_Command{}
|
|
mi := &file_v1_config_proto_msgTypes[17]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *Hook_Command) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Hook_Command) ProtoMessage() {}
|
|
|
|
func (x *Hook_Command) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[17]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Hook_Command.ProtoReflect.Descriptor instead.
|
|
func (*Hook_Command) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{10, 0}
|
|
}
|
|
|
|
func (x *Hook_Command) GetCommand() string {
|
|
if x != nil {
|
|
return x.Command
|
|
}
|
|
return ""
|
|
}
|
|
|
|
type Hook_Webhook struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
WebhookUrl string `protobuf:"bytes,1,opt,name=webhook_url,json=webhookUrl,proto3" json:"webhook_url,omitempty"`
|
|
Method Hook_Webhook_Method `protobuf:"varint,2,opt,name=method,proto3,enum=v1.Hook_Webhook_Method" json:"method,omitempty"`
|
|
Template string `protobuf:"bytes,100,opt,name=template,proto3" json:"template,omitempty"`
|
|
}
|
|
|
|
func (x *Hook_Webhook) Reset() {
|
|
*x = Hook_Webhook{}
|
|
mi := &file_v1_config_proto_msgTypes[18]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *Hook_Webhook) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Hook_Webhook) ProtoMessage() {}
|
|
|
|
func (x *Hook_Webhook) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[18]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Hook_Webhook.ProtoReflect.Descriptor instead.
|
|
func (*Hook_Webhook) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{10, 1}
|
|
}
|
|
|
|
func (x *Hook_Webhook) GetWebhookUrl() string {
|
|
if x != nil {
|
|
return x.WebhookUrl
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Hook_Webhook) GetMethod() Hook_Webhook_Method {
|
|
if x != nil {
|
|
return x.Method
|
|
}
|
|
return Hook_Webhook_UNKNOWN
|
|
}
|
|
|
|
func (x *Hook_Webhook) GetTemplate() string {
|
|
if x != nil {
|
|
return x.Template
|
|
}
|
|
return ""
|
|
}
|
|
|
|
type Hook_Discord struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
WebhookUrl string `protobuf:"bytes,1,opt,name=webhook_url,json=webhookUrl,proto3" json:"webhook_url,omitempty"`
|
|
Template string `protobuf:"bytes,2,opt,name=template,proto3" json:"template,omitempty"` // template for the webhook payload.
|
|
}
|
|
|
|
func (x *Hook_Discord) Reset() {
|
|
*x = Hook_Discord{}
|
|
mi := &file_v1_config_proto_msgTypes[19]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *Hook_Discord) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Hook_Discord) ProtoMessage() {}
|
|
|
|
func (x *Hook_Discord) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[19]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Hook_Discord.ProtoReflect.Descriptor instead.
|
|
func (*Hook_Discord) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{10, 2}
|
|
}
|
|
|
|
func (x *Hook_Discord) GetWebhookUrl() string {
|
|
if x != nil {
|
|
return x.WebhookUrl
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Hook_Discord) GetTemplate() string {
|
|
if x != nil {
|
|
return x.Template
|
|
}
|
|
return ""
|
|
}
|
|
|
|
type Hook_Gotify struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
BaseUrl string `protobuf:"bytes,1,opt,name=base_url,json=baseUrl,proto3" json:"base_url,omitempty"`
|
|
Token string `protobuf:"bytes,3,opt,name=token,proto3" json:"token,omitempty"`
|
|
Template string `protobuf:"bytes,100,opt,name=template,proto3" json:"template,omitempty"` // template for the webhook payload.
|
|
TitleTemplate string `protobuf:"bytes,101,opt,name=title_template,json=titleTemplate,proto3" json:"title_template,omitempty"` // template for the webhook title.
|
|
Priority int32 `protobuf:"varint,102,opt,name=priority,proto3" json:"priority,omitempty"` // priority level for the notification (1-10)
|
|
}
|
|
|
|
func (x *Hook_Gotify) Reset() {
|
|
*x = Hook_Gotify{}
|
|
mi := &file_v1_config_proto_msgTypes[20]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *Hook_Gotify) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Hook_Gotify) ProtoMessage() {}
|
|
|
|
func (x *Hook_Gotify) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[20]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Hook_Gotify.ProtoReflect.Descriptor instead.
|
|
func (*Hook_Gotify) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{10, 3}
|
|
}
|
|
|
|
func (x *Hook_Gotify) GetBaseUrl() string {
|
|
if x != nil {
|
|
return x.BaseUrl
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Hook_Gotify) GetToken() string {
|
|
if x != nil {
|
|
return x.Token
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Hook_Gotify) GetTemplate() string {
|
|
if x != nil {
|
|
return x.Template
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Hook_Gotify) GetTitleTemplate() string {
|
|
if x != nil {
|
|
return x.TitleTemplate
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Hook_Gotify) GetPriority() int32 {
|
|
if x != nil {
|
|
return x.Priority
|
|
}
|
|
return 0
|
|
}
|
|
|
|
type Hook_Slack struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
WebhookUrl string `protobuf:"bytes,1,opt,name=webhook_url,json=webhookUrl,proto3" json:"webhook_url,omitempty"`
|
|
Template string `protobuf:"bytes,2,opt,name=template,proto3" json:"template,omitempty"` // template for the webhook payload.
|
|
}
|
|
|
|
func (x *Hook_Slack) Reset() {
|
|
*x = Hook_Slack{}
|
|
mi := &file_v1_config_proto_msgTypes[21]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *Hook_Slack) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Hook_Slack) ProtoMessage() {}
|
|
|
|
func (x *Hook_Slack) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[21]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Hook_Slack.ProtoReflect.Descriptor instead.
|
|
func (*Hook_Slack) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{10, 4}
|
|
}
|
|
|
|
func (x *Hook_Slack) GetWebhookUrl() string {
|
|
if x != nil {
|
|
return x.WebhookUrl
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Hook_Slack) GetTemplate() string {
|
|
if x != nil {
|
|
return x.Template
|
|
}
|
|
return ""
|
|
}
|
|
|
|
type Hook_Shoutrrr struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
ShoutrrrUrl string `protobuf:"bytes,1,opt,name=shoutrrr_url,json=shoutrrrUrl,proto3" json:"shoutrrr_url,omitempty"`
|
|
Template string `protobuf:"bytes,2,opt,name=template,proto3" json:"template,omitempty"`
|
|
}
|
|
|
|
func (x *Hook_Shoutrrr) Reset() {
|
|
*x = Hook_Shoutrrr{}
|
|
mi := &file_v1_config_proto_msgTypes[22]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *Hook_Shoutrrr) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Hook_Shoutrrr) ProtoMessage() {}
|
|
|
|
func (x *Hook_Shoutrrr) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[22]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Hook_Shoutrrr.ProtoReflect.Descriptor instead.
|
|
func (*Hook_Shoutrrr) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{10, 5}
|
|
}
|
|
|
|
func (x *Hook_Shoutrrr) GetShoutrrrUrl() string {
|
|
if x != nil {
|
|
return x.ShoutrrrUrl
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Hook_Shoutrrr) GetTemplate() string {
|
|
if x != nil {
|
|
return x.Template
|
|
}
|
|
return ""
|
|
}
|
|
|
|
type Hook_Healthchecks struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
WebhookUrl string `protobuf:"bytes,1,opt,name=webhook_url,json=webhookUrl,proto3" json:"webhook_url,omitempty"`
|
|
Template string `protobuf:"bytes,2,opt,name=template,proto3" json:"template,omitempty"`
|
|
}
|
|
|
|
func (x *Hook_Healthchecks) Reset() {
|
|
*x = Hook_Healthchecks{}
|
|
mi := &file_v1_config_proto_msgTypes[23]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *Hook_Healthchecks) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Hook_Healthchecks) ProtoMessage() {}
|
|
|
|
func (x *Hook_Healthchecks) ProtoReflect() protoreflect.Message {
|
|
mi := &file_v1_config_proto_msgTypes[23]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Hook_Healthchecks.ProtoReflect.Descriptor instead.
|
|
func (*Hook_Healthchecks) Descriptor() ([]byte, []int) {
|
|
return file_v1_config_proto_rawDescGZIP(), []int{10, 6}
|
|
}
|
|
|
|
func (x *Hook_Healthchecks) GetWebhookUrl() string {
|
|
if x != nil {
|
|
return x.WebhookUrl
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Hook_Healthchecks) GetTemplate() string {
|
|
if x != nil {
|
|
return x.Template
|
|
}
|
|
return ""
|
|
}
|
|
|
|
var File_v1_config_proto protoreflect.FileDescriptor
|
|
|
|
var file_v1_config_proto_rawDesc = []byte{
|
|
0x0a, 0x0f, 0x76, 0x31, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74,
|
|
0x6f, 0x12, 0x02, 0x76, 0x31, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72,
|
|
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f,
|
|
0x74, 0x6f, 0x1a, 0x0f, 0x76, 0x31, 0x2f, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x2e, 0x70, 0x72,
|
|
0x6f, 0x74, 0x6f, 0x22, 0x7d, 0x0a, 0x09, 0x48, 0x75, 0x62, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
|
|
0x12, 0x38, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20,
|
|
0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x75, 0x62, 0x43, 0x6f, 0x6e, 0x66,
|
|
0x69, 0x67, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52,
|
|
0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x1a, 0x36, 0x0a, 0x0c, 0x49, 0x6e,
|
|
0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64,
|
|
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65,
|
|
0x63, 0x72, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x63, 0x72,
|
|
0x65, 0x74, 0x22, 0xda, 0x01, 0x0a, 0x06, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x14, 0x0a,
|
|
0x05, 0x6d, 0x6f, 0x64, 0x6e, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6d, 0x6f,
|
|
0x64, 0x6e, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06,
|
|
0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a,
|
|
0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
|
|
0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x1e, 0x0a, 0x05, 0x72, 0x65, 0x70,
|
|
0x6f, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65,
|
|
0x70, 0x6f, 0x52, 0x05, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x12, 0x1e, 0x0a, 0x05, 0x70, 0x6c, 0x61,
|
|
0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6c,
|
|
0x61, 0x6e, 0x52, 0x05, 0x70, 0x6c, 0x61, 0x6e, 0x73, 0x12, 0x1c, 0x0a, 0x04, 0x61, 0x75, 0x74,
|
|
0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x75, 0x74,
|
|
0x68, 0x52, 0x04, 0x61, 0x75, 0x74, 0x68, 0x12, 0x26, 0x0a, 0x09, 0x6d, 0x75, 0x6c, 0x74, 0x69,
|
|
0x68, 0x6f, 0x73, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x76, 0x31, 0x2e,
|
|
0x4d, 0x75, 0x6c, 0x74, 0x69, 0x68, 0x6f, 0x73, 0x74, 0x52, 0x04, 0x73, 0x79, 0x6e, 0x63, 0x22,
|
|
0xcd, 0x04, 0x0a, 0x09, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x68, 0x6f, 0x73, 0x74, 0x12, 0x2a, 0x0a,
|
|
0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
|
|
0x0e, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x52,
|
|
0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x33, 0x0a, 0x0b, 0x6b, 0x6e, 0x6f,
|
|
0x77, 0x6e, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12,
|
|
0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x50, 0x65,
|
|
0x65, 0x72, 0x52, 0x0a, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x48, 0x6f, 0x73, 0x74, 0x73, 0x12, 0x41,
|
|
0x0a, 0x12, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x63, 0x6c, 0x69,
|
|
0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x76, 0x31, 0x2e,
|
|
0x4d, 0x75, 0x6c, 0x74, 0x69, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x52, 0x11,
|
|
0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74,
|
|
0x73, 0x1a, 0xc3, 0x01, 0x0a, 0x04, 0x50, 0x65, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x6e,
|
|
0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
|
|
0x0a, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6b,
|
|
0x65, 0x79, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6b, 0x65, 0x79, 0x49,
|
|
0x64, 0x12, 0x25, 0x0a, 0x0e, 0x6b, 0x65, 0x79, 0x69, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66,
|
|
0x69, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x6b, 0x65, 0x79, 0x49, 0x64,
|
|
0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x3a, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x6d,
|
|
0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e,
|
|
0x76, 0x31, 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x50, 0x65, 0x72,
|
|
0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73,
|
|
0x69, 0x6f, 0x6e, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
|
|
0x5f, 0x75, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x6e, 0x73, 0x74,
|
|
0x61, 0x6e, 0x63, 0x65, 0x55, 0x72, 0x6c, 0x1a, 0xd5, 0x01, 0x0a, 0x0a, 0x50, 0x65, 0x72, 0x6d,
|
|
0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01,
|
|
0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x68,
|
|
0x6f, 0x73, 0x74, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x54,
|
|
0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x63, 0x6f,
|
|
0x70, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x73, 0x63, 0x6f, 0x70, 0x65,
|
|
0x73, 0x22, 0x7c, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x12, 0x50, 0x45, 0x52,
|
|
0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10,
|
|
0x00, 0x12, 0x1e, 0x0a, 0x1a, 0x50, 0x45, 0x52, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f,
|
|
0x52, 0x45, 0x41, 0x44, 0x5f, 0x4f, 0x50, 0x45, 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x53, 0x10,
|
|
0x01, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x45, 0x52, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f,
|
|
0x52, 0x45, 0x41, 0x44, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x02, 0x12, 0x20, 0x0a,
|
|
0x1c, 0x50, 0x45, 0x52, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x45, 0x41, 0x44,
|
|
0x5f, 0x57, 0x52, 0x49, 0x54, 0x45, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x03, 0x22,
|
|
0x8c, 0x03, 0x0a, 0x04, 0x52, 0x65, 0x70, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01,
|
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18,
|
|
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x69, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x75,
|
|
0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x67, 0x75, 0x69, 0x64, 0x12, 0x1a,
|
|
0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
|
|
0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x6e,
|
|
0x76, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x65, 0x6e, 0x76, 0x12, 0x14, 0x0a, 0x05,
|
|
0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x66, 0x6c, 0x61,
|
|
0x67, 0x73, 0x12, 0x32, 0x0a, 0x0c, 0x70, 0x72, 0x75, 0x6e, 0x65, 0x5f, 0x70, 0x6f, 0x6c, 0x69,
|
|
0x63, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72,
|
|
0x75, 0x6e, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x0b, 0x70, 0x72, 0x75, 0x6e, 0x65,
|
|
0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x32, 0x0a, 0x0c, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x5f,
|
|
0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x76,
|
|
0x31, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x0b, 0x63,
|
|
0x68, 0x65, 0x63, 0x6b, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x1e, 0x0a, 0x05, 0x68, 0x6f,
|
|
0x6f, 0x6b, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x76, 0x31, 0x2e, 0x48,
|
|
0x6f, 0x6f, 0x6b, 0x52, 0x05, 0x68, 0x6f, 0x6f, 0x6b, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x75,
|
|
0x74, 0x6f, 0x5f, 0x75, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52,
|
|
0x0a, 0x61, 0x75, 0x74, 0x6f, 0x55, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x27, 0x0a, 0x0f, 0x61,
|
|
0x75, 0x74, 0x6f, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x18, 0x0c,
|
|
0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x61, 0x75, 0x74, 0x6f, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61,
|
|
0x6c, 0x69, 0x7a, 0x65, 0x12, 0x38, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x5f,
|
|
0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x76,
|
|
0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x52,
|
|
0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x22, 0xd9,
|
|
0x02, 0x0a, 0x04, 0x50, 0x6c, 0x61, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
|
|
0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x65, 0x70, 0x6f, 0x18,
|
|
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x65, 0x70, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x70,
|
|
0x61, 0x74, 0x68, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x70, 0x61, 0x74, 0x68,
|
|
0x73, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, 0x18, 0x05, 0x20,
|
|
0x03, 0x28, 0x09, 0x52, 0x08, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, 0x12, 0x1c, 0x0a,
|
|
0x09, 0x69, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09,
|
|
0x52, 0x09, 0x69, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, 0x12, 0x28, 0x0a, 0x08, 0x73,
|
|
0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e,
|
|
0x76, 0x31, 0x2e, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x08, 0x73, 0x63, 0x68,
|
|
0x65, 0x64, 0x75, 0x6c, 0x65, 0x12, 0x31, 0x0a, 0x09, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69,
|
|
0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65,
|
|
0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x09, 0x72,
|
|
0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x05, 0x68, 0x6f, 0x6f, 0x6b,
|
|
0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x6f,
|
|
0x6b, 0x52, 0x05, 0x68, 0x6f, 0x6f, 0x6b, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x61, 0x63, 0x6b,
|
|
0x75, 0x70, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c,
|
|
0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x2a, 0x0a, 0x11,
|
|
0x73, 0x6b, 0x69, 0x70, 0x5f, 0x69, 0x66, 0x5f, 0x75, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65,
|
|
0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x73, 0x6b, 0x69, 0x70, 0x49, 0x66, 0x55,
|
|
0x6e, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x4a, 0x04, 0x08, 0x03, 0x10, 0x04, 0x4a, 0x04,
|
|
0x08, 0x06, 0x10, 0x07, 0x4a, 0x04, 0x08, 0x0b, 0x10, 0x0c, 0x22, 0x9b, 0x02, 0x0a, 0x0d, 0x43,
|
|
0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x36, 0x0a, 0x07,
|
|
0x69, 0x6f, 0x5f, 0x6e, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e,
|
|
0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78,
|
|
0x2e, 0x49, 0x4f, 0x4e, 0x69, 0x63, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x06, 0x69, 0x6f,
|
|
0x4e, 0x69, 0x63, 0x65, 0x12, 0x39, 0x0a, 0x08, 0x63, 0x70, 0x75, 0x5f, 0x6e, 0x69, 0x63, 0x65,
|
|
0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d,
|
|
0x61, 0x6e, 0x64, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x2e, 0x43, 0x50, 0x55, 0x4e, 0x69, 0x63,
|
|
0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x07, 0x63, 0x70, 0x75, 0x4e, 0x69, 0x63, 0x65, 0x22,
|
|
0x5b, 0x0a, 0x0b, 0x49, 0x4f, 0x4e, 0x69, 0x63, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x0e,
|
|
0x0a, 0x0a, 0x49, 0x4f, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x00, 0x12, 0x16,
|
|
0x0a, 0x12, 0x49, 0x4f, 0x5f, 0x42, 0x45, 0x53, 0x54, 0x5f, 0x45, 0x46, 0x46, 0x4f, 0x52, 0x54,
|
|
0x5f, 0x4c, 0x4f, 0x57, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x49, 0x4f, 0x5f, 0x42, 0x45, 0x53,
|
|
0x54, 0x5f, 0x45, 0x46, 0x46, 0x4f, 0x52, 0x54, 0x5f, 0x48, 0x49, 0x47, 0x48, 0x10, 0x02, 0x12,
|
|
0x0b, 0x0a, 0x07, 0x49, 0x4f, 0x5f, 0x49, 0x44, 0x4c, 0x45, 0x10, 0x03, 0x22, 0x3a, 0x0a, 0x0c,
|
|
0x43, 0x50, 0x55, 0x4e, 0x69, 0x63, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x0f, 0x0a, 0x0b,
|
|
0x43, 0x50, 0x55, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x00, 0x12, 0x0c, 0x0a,
|
|
0x08, 0x43, 0x50, 0x55, 0x5f, 0x48, 0x49, 0x47, 0x48, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x43,
|
|
0x50, 0x55, 0x5f, 0x4c, 0x4f, 0x57, 0x10, 0x02, 0x22, 0xff, 0x02, 0x0a, 0x0f, 0x52, 0x65, 0x74,
|
|
0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x2d, 0x0a, 0x12,
|
|
0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x6b, 0x65, 0x65, 0x70, 0x5f, 0x6c, 0x61, 0x73, 0x74,
|
|
0x5f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x0f, 0x70, 0x6f, 0x6c, 0x69,
|
|
0x63, 0x79, 0x4b, 0x65, 0x65, 0x70, 0x4c, 0x61, 0x73, 0x74, 0x4e, 0x12, 0x5a, 0x0a, 0x14, 0x70,
|
|
0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65,
|
|
0x74, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x76, 0x31, 0x2e, 0x52,
|
|
0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x54,
|
|
0x69, 0x6d, 0x65, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74,
|
|
0x73, 0x48, 0x00, 0x52, 0x12, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x42,
|
|
0x75, 0x63, 0x6b, 0x65, 0x74, 0x65, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x6f, 0x6c, 0x69, 0x63,
|
|
0x79, 0x5f, 0x6b, 0x65, 0x65, 0x70, 0x5f, 0x61, 0x6c, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08,
|
|
0x48, 0x00, 0x52, 0x0d, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x4b, 0x65, 0x65, 0x70, 0x41, 0x6c,
|
|
0x6c, 0x1a, 0xac, 0x01, 0x0a, 0x12, 0x54, 0x69, 0x6d, 0x65, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74,
|
|
0x65, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x6f, 0x75, 0x72,
|
|
0x6c, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x68, 0x6f, 0x75, 0x72, 0x6c, 0x79,
|
|
0x12, 0x14, 0x0a, 0x05, 0x64, 0x61, 0x69, 0x6c, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52,
|
|
0x05, 0x64, 0x61, 0x69, 0x6c, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x77, 0x65, 0x65, 0x6b, 0x6c, 0x79,
|
|
0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x77, 0x65, 0x65, 0x6b, 0x6c, 0x79, 0x12, 0x18,
|
|
0x0a, 0x07, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52,
|
|
0x07, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x79, 0x65, 0x61, 0x72,
|
|
0x6c, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x79, 0x65, 0x61, 0x72, 0x6c, 0x79,
|
|
0x12, 0x1e, 0x0a, 0x0b, 0x6b, 0x65, 0x65, 0x70, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x6e, 0x18,
|
|
0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6b, 0x65, 0x65, 0x70, 0x4c, 0x61, 0x73, 0x74, 0x4e,
|
|
0x42, 0x08, 0x0a, 0x06, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x22, 0x8f, 0x01, 0x0a, 0x0b, 0x50,
|
|
0x72, 0x75, 0x6e, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x28, 0x0a, 0x08, 0x73, 0x63,
|
|
0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x76,
|
|
0x31, 0x2e, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x08, 0x73, 0x63, 0x68, 0x65,
|
|
0x64, 0x75, 0x6c, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x75, 0x6e, 0x75, 0x73,
|
|
0x65, 0x64, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e,
|
|
0x6d, 0x61, 0x78, 0x55, 0x6e, 0x75, 0x73, 0x65, 0x64, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x2c,
|
|
0x0a, 0x12, 0x6d, 0x61, 0x78, 0x5f, 0x75, 0x6e, 0x75, 0x73, 0x65, 0x64, 0x5f, 0x70, 0x65, 0x72,
|
|
0x63, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x52, 0x10, 0x6d, 0x61, 0x78, 0x55,
|
|
0x6e, 0x75, 0x73, 0x65, 0x64, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x22, 0xa3, 0x01, 0x0a,
|
|
0x0b, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x28, 0x0a, 0x08,
|
|
0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c,
|
|
0x2e, 0x76, 0x31, 0x2e, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x08, 0x73, 0x63,
|
|
0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x12, 0x27, 0x0a, 0x0e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74,
|
|
0x75, 0x72, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x64, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00,
|
|
0x52, 0x0d, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x12,
|
|
0x39, 0x0a, 0x18, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, 0x75, 0x62,
|
|
0x73, 0x65, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x65, 0x20, 0x01, 0x28,
|
|
0x01, 0x48, 0x00, 0x52, 0x15, 0x72, 0x65, 0x61, 0x64, 0x44, 0x61, 0x74, 0x61, 0x53, 0x75, 0x62,
|
|
0x73, 0x65, 0x74, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x42, 0x06, 0x0a, 0x04, 0x6d, 0x6f,
|
|
0x64, 0x65, 0x22, 0xa7, 0x02, 0x0a, 0x08, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x12,
|
|
0x1c, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
|
|
0x08, 0x48, 0x00, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x14, 0x0a,
|
|
0x04, 0x63, 0x72, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x04, 0x63,
|
|
0x72, 0x6f, 0x6e, 0x12, 0x2c, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65,
|
|
0x6e, 0x63, 0x79, 0x44, 0x61, 0x79, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52,
|
|
0x10, 0x6d, 0x61, 0x78, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x44, 0x61, 0x79,
|
|
0x73, 0x12, 0x2e, 0x0a, 0x11, 0x6d, 0x61, 0x78, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63,
|
|
0x79, 0x48, 0x6f, 0x75, 0x72, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x11,
|
|
0x6d, 0x61, 0x78, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x48, 0x6f, 0x75, 0x72,
|
|
0x73, 0x12, 0x28, 0x0a, 0x05, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e,
|
|
0x32, 0x12, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x43,
|
|
0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x05, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x53, 0x0a, 0x05, 0x43,
|
|
0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x11, 0x0a, 0x0d, 0x43, 0x4c, 0x4f, 0x43, 0x4b, 0x5f, 0x44, 0x45,
|
|
0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x4c, 0x4f, 0x43, 0x4b,
|
|
0x5f, 0x4c, 0x4f, 0x43, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x4c, 0x4f, 0x43,
|
|
0x4b, 0x5f, 0x55, 0x54, 0x43, 0x10, 0x02, 0x12, 0x17, 0x0a, 0x13, 0x43, 0x4c, 0x4f, 0x43, 0x4b,
|
|
0x5f, 0x4c, 0x41, 0x53, 0x54, 0x5f, 0x52, 0x55, 0x4e, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x10, 0x03,
|
|
0x42, 0x0a, 0x0a, 0x08, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x22, 0xc5, 0x0e, 0x0a,
|
|
0x04, 0x48, 0x6f, 0x6f, 0x6b, 0x12, 0x32, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69,
|
|
0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x76, 0x31, 0x2e, 0x48,
|
|
0x6f, 0x6f, 0x6b, 0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x63,
|
|
0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2b, 0x0a, 0x08, 0x6f, 0x6e, 0x5f,
|
|
0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x76, 0x31,
|
|
0x2e, 0x48, 0x6f, 0x6f, 0x6b, 0x2e, 0x4f, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x07, 0x6f,
|
|
0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x39, 0x0a, 0x0e, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e,
|
|
0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x64, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10,
|
|
0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x6f, 0x6b, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64,
|
|
0x48, 0x00, 0x52, 0x0d, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e,
|
|
0x64, 0x12, 0x39, 0x0a, 0x0e, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x77, 0x65, 0x62, 0x68,
|
|
0x6f, 0x6f, 0x6b, 0x18, 0x65, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x31, 0x2e, 0x48,
|
|
0x6f, 0x6f, 0x6b, 0x2e, 0x57, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x48, 0x00, 0x52, 0x0d, 0x61,
|
|
0x63, 0x74, 0x69, 0x6f, 0x6e, 0x57, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x12, 0x39, 0x0a, 0x0e,
|
|
0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x66,
|
|
0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x6f, 0x6b, 0x2e, 0x44,
|
|
0x69, 0x73, 0x63, 0x6f, 0x72, 0x64, 0x48, 0x00, 0x52, 0x0d, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e,
|
|
0x44, 0x69, 0x73, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x36, 0x0a, 0x0d, 0x61, 0x63, 0x74, 0x69, 0x6f,
|
|
0x6e, 0x5f, 0x67, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x18, 0x67, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f,
|
|
0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x6f, 0x6b, 0x2e, 0x47, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x48,
|
|
0x00, 0x52, 0x0c, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x12,
|
|
0x33, 0x0a, 0x0c, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x6c, 0x61, 0x63, 0x6b, 0x18,
|
|
0x68, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x6f, 0x6b, 0x2e,
|
|
0x53, 0x6c, 0x61, 0x63, 0x6b, 0x48, 0x00, 0x52, 0x0b, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53,
|
|
0x6c, 0x61, 0x63, 0x6b, 0x12, 0x3c, 0x0a, 0x0f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73,
|
|
0x68, 0x6f, 0x75, 0x74, 0x72, 0x72, 0x72, 0x18, 0x69, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e,
|
|
0x76, 0x31, 0x2e, 0x48, 0x6f, 0x6f, 0x6b, 0x2e, 0x53, 0x68, 0x6f, 0x75, 0x74, 0x72, 0x72, 0x72,
|
|
0x48, 0x00, 0x52, 0x0e, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x68, 0x6f, 0x75, 0x74, 0x72,
|
|
0x72, 0x72, 0x12, 0x48, 0x0a, 0x13, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x68, 0x65, 0x61,
|
|
0x6c, 0x74, 0x68, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x18, 0x6a, 0x20, 0x01, 0x28, 0x0b, 0x32,
|
|
0x15, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x6f, 0x6b, 0x2e, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68,
|
|
0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x48, 0x00, 0x52, 0x12, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e,
|
|
0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x1a, 0x23, 0x0a, 0x07,
|
|
0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61,
|
|
0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e,
|
|
0x64, 0x1a, 0xa1, 0x01, 0x0a, 0x07, 0x57, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x12, 0x1f, 0x0a,
|
|
0x0b, 0x77, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01,
|
|
0x28, 0x09, 0x52, 0x0a, 0x77, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x55, 0x72, 0x6c, 0x12, 0x2f,
|
|
0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17,
|
|
0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x6f, 0x6b, 0x2e, 0x57, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b,
|
|
0x2e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12,
|
|
0x1a, 0x0a, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x18, 0x64, 0x20, 0x01, 0x28,
|
|
0x09, 0x52, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x22, 0x28, 0x0a, 0x06, 0x4d,
|
|
0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e,
|
|
0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x47, 0x45, 0x54, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x50,
|
|
0x4f, 0x53, 0x54, 0x10, 0x02, 0x1a, 0x46, 0x0a, 0x07, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x72, 0x64,
|
|
0x12, 0x1f, 0x0a, 0x0b, 0x77, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x5f, 0x75, 0x72, 0x6c, 0x18,
|
|
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x77, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x55, 0x72,
|
|
0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20,
|
|
0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x1a, 0x98, 0x01,
|
|
0x0a, 0x06, 0x47, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x61, 0x73, 0x65,
|
|
0x5f, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x61, 0x73, 0x65,
|
|
0x55, 0x72, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01,
|
|
0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x65, 0x6d,
|
|
0x70, 0x6c, 0x61, 0x74, 0x65, 0x18, 0x64, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6d,
|
|
0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x5f, 0x74,
|
|
0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x18, 0x65, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74,
|
|
0x69, 0x74, 0x6c, 0x65, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x1a, 0x0a, 0x08,
|
|
0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x66, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08,
|
|
0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x1a, 0x44, 0x0a, 0x05, 0x53, 0x6c, 0x61, 0x63,
|
|
0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x77, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x5f, 0x75, 0x72, 0x6c,
|
|
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x77, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x55,
|
|
0x72, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x18, 0x02,
|
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x1a, 0x49,
|
|
0x0a, 0x08, 0x53, 0x68, 0x6f, 0x75, 0x74, 0x72, 0x72, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x68,
|
|
0x6f, 0x75, 0x74, 0x72, 0x72, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
|
|
0x52, 0x0b, 0x73, 0x68, 0x6f, 0x75, 0x74, 0x72, 0x72, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x1a, 0x0a,
|
|
0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
|
|
0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x1a, 0x4b, 0x0a, 0x0c, 0x48, 0x65, 0x61,
|
|
0x6c, 0x74, 0x68, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x77, 0x65, 0x62,
|
|
0x68, 0x6f, 0x6f, 0x6b, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a,
|
|
0x77, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x55, 0x72, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x65,
|
|
0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65,
|
|
0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x22, 0xf5, 0x03, 0x0a, 0x09, 0x43, 0x6f, 0x6e, 0x64, 0x69,
|
|
0x74, 0x69, 0x6f, 0x6e, 0x12, 0x15, 0x0a, 0x11, 0x43, 0x4f, 0x4e, 0x44, 0x49, 0x54, 0x49, 0x4f,
|
|
0x4e, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x43,
|
|
0x4f, 0x4e, 0x44, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x41, 0x4e, 0x59, 0x5f, 0x45, 0x52, 0x52,
|
|
0x4f, 0x52, 0x10, 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x4f, 0x4e, 0x44, 0x49, 0x54, 0x49, 0x4f,
|
|
0x4e, 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54,
|
|
0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x4f, 0x4e, 0x44, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f,
|
|
0x53, 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x45, 0x4e, 0x44, 0x10, 0x03, 0x12, 0x1c,
|
|
0x0a, 0x18, 0x43, 0x4f, 0x4e, 0x44, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x4e, 0x41, 0x50,
|
|
0x53, 0x48, 0x4f, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x04, 0x12, 0x1e, 0x0a, 0x1a,
|
|
0x43, 0x4f, 0x4e, 0x44, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48,
|
|
0x4f, 0x54, 0x5f, 0x57, 0x41, 0x52, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x05, 0x12, 0x1e, 0x0a, 0x1a,
|
|
0x43, 0x4f, 0x4e, 0x44, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48,
|
|
0x4f, 0x54, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x06, 0x12, 0x1e, 0x0a, 0x1a,
|
|
0x43, 0x4f, 0x4e, 0x44, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48,
|
|
0x4f, 0x54, 0x5f, 0x53, 0x4b, 0x49, 0x50, 0x50, 0x45, 0x44, 0x10, 0x07, 0x12, 0x19, 0x0a, 0x15,
|
|
0x43, 0x4f, 0x4e, 0x44, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x52, 0x55, 0x4e, 0x45, 0x5f,
|
|
0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0x64, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x4f, 0x4e, 0x44, 0x49,
|
|
0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x52, 0x55, 0x4e, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52,
|
|
0x10, 0x65, 0x12, 0x1b, 0x0a, 0x17, 0x43, 0x4f, 0x4e, 0x44, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f,
|
|
0x50, 0x52, 0x55, 0x4e, 0x45, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x66, 0x12,
|
|
0x1a, 0x0a, 0x15, 0x43, 0x4f, 0x4e, 0x44, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x48, 0x45,
|
|
0x43, 0x4b, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0xc8, 0x01, 0x12, 0x1a, 0x0a, 0x15, 0x43,
|
|
0x4f, 0x4e, 0x44, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x48, 0x45, 0x43, 0x4b, 0x5f, 0x45,
|
|
0x52, 0x52, 0x4f, 0x52, 0x10, 0xc9, 0x01, 0x12, 0x1c, 0x0a, 0x17, 0x43, 0x4f, 0x4e, 0x44, 0x49,
|
|
0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x48, 0x45, 0x43, 0x4b, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45,
|
|
0x53, 0x53, 0x10, 0xca, 0x01, 0x12, 0x1b, 0x0a, 0x16, 0x43, 0x4f, 0x4e, 0x44, 0x49, 0x54, 0x49,
|
|
0x4f, 0x4e, 0x5f, 0x46, 0x4f, 0x52, 0x47, 0x45, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10,
|
|
0xac, 0x02, 0x12, 0x1b, 0x0a, 0x16, 0x43, 0x4f, 0x4e, 0x44, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f,
|
|
0x46, 0x4f, 0x52, 0x47, 0x45, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0xad, 0x02, 0x12,
|
|
0x1d, 0x0a, 0x18, 0x43, 0x4f, 0x4e, 0x44, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x46, 0x4f, 0x52,
|
|
0x47, 0x45, 0x54, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0xae, 0x02, 0x22, 0xa9,
|
|
0x01, 0x0a, 0x07, 0x4f, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x13, 0x0a, 0x0f, 0x4f, 0x4e,
|
|
0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x49, 0x47, 0x4e, 0x4f, 0x52, 0x45, 0x10, 0x00, 0x12,
|
|
0x13, 0x0a, 0x0f, 0x4f, 0x4e, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x41, 0x4e, 0x43,
|
|
0x45, 0x4c, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x4f, 0x4e, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52,
|
|
0x5f, 0x46, 0x41, 0x54, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x4f, 0x4e, 0x5f, 0x45,
|
|
0x52, 0x52, 0x4f, 0x52, 0x5f, 0x52, 0x45, 0x54, 0x52, 0x59, 0x5f, 0x31, 0x4d, 0x49, 0x4e, 0x55,
|
|
0x54, 0x45, 0x10, 0x64, 0x12, 0x1c, 0x0a, 0x18, 0x4f, 0x4e, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52,
|
|
0x5f, 0x52, 0x45, 0x54, 0x52, 0x59, 0x5f, 0x31, 0x30, 0x4d, 0x49, 0x4e, 0x55, 0x54, 0x45, 0x53,
|
|
0x10, 0x65, 0x12, 0x26, 0x0a, 0x22, 0x4f, 0x4e, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x52,
|
|
0x45, 0x54, 0x52, 0x59, 0x5f, 0x45, 0x58, 0x50, 0x4f, 0x4e, 0x45, 0x4e, 0x54, 0x49, 0x41, 0x4c,
|
|
0x5f, 0x42, 0x41, 0x43, 0x4b, 0x4f, 0x46, 0x46, 0x10, 0x67, 0x42, 0x08, 0x0a, 0x06, 0x61, 0x63,
|
|
0x74, 0x69, 0x6f, 0x6e, 0x22, 0x42, 0x0a, 0x04, 0x41, 0x75, 0x74, 0x68, 0x12, 0x1a, 0x0a, 0x08,
|
|
0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08,
|
|
0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72,
|
|
0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x73, 0x65,
|
|
0x72, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x22, 0x51, 0x0a, 0x04, 0x55, 0x73, 0x65, 0x72,
|
|
0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
|
|
0x6e, 0x61, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x0f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64,
|
|
0x5f, 0x62, 0x63, 0x72, 0x79, 0x70, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
|
|
0x0e, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x42, 0x63, 0x72, 0x79, 0x70, 0x74, 0x42,
|
|
0x0a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x42, 0x2c, 0x5a, 0x2a, 0x67,
|
|
0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x61, 0x72, 0x65, 0x74, 0x68,
|
|
0x67, 0x65, 0x6f, 0x72, 0x67, 0x65, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x72, 0x65, 0x73, 0x74, 0x2f,
|
|
0x67, 0x65, 0x6e, 0x2f, 0x67, 0x6f, 0x2f, 0x76, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
|
|
0x33,
|
|
}
|
|
|
|
var (
|
|
file_v1_config_proto_rawDescOnce sync.Once
|
|
file_v1_config_proto_rawDescData = file_v1_config_proto_rawDesc
|
|
)
|
|
|
|
func file_v1_config_proto_rawDescGZIP() []byte {
|
|
file_v1_config_proto_rawDescOnce.Do(func() {
|
|
file_v1_config_proto_rawDescData = protoimpl.X.CompressGZIP(file_v1_config_proto_rawDescData)
|
|
})
|
|
return file_v1_config_proto_rawDescData
|
|
}
|
|
|
|
var file_v1_config_proto_enumTypes = make([]protoimpl.EnumInfo, 7)
|
|
var file_v1_config_proto_msgTypes = make([]protoimpl.MessageInfo, 24)
|
|
var file_v1_config_proto_goTypes = []any{
|
|
(Multihost_Permission_Type)(0), // 0: v1.Multihost.Permission.Type
|
|
(CommandPrefix_IONiceLevel)(0), // 1: v1.CommandPrefix.IONiceLevel
|
|
(CommandPrefix_CPUNiceLevel)(0), // 2: v1.CommandPrefix.CPUNiceLevel
|
|
(Schedule_Clock)(0), // 3: v1.Schedule.Clock
|
|
(Hook_Condition)(0), // 4: v1.Hook.Condition
|
|
(Hook_OnError)(0), // 5: v1.Hook.OnError
|
|
(Hook_Webhook_Method)(0), // 6: v1.Hook.Webhook.Method
|
|
(*HubConfig)(nil), // 7: v1.HubConfig
|
|
(*Config)(nil), // 8: v1.Config
|
|
(*Multihost)(nil), // 9: v1.Multihost
|
|
(*Repo)(nil), // 10: v1.Repo
|
|
(*Plan)(nil), // 11: v1.Plan
|
|
(*CommandPrefix)(nil), // 12: v1.CommandPrefix
|
|
(*RetentionPolicy)(nil), // 13: v1.RetentionPolicy
|
|
(*PrunePolicy)(nil), // 14: v1.PrunePolicy
|
|
(*CheckPolicy)(nil), // 15: v1.CheckPolicy
|
|
(*Schedule)(nil), // 16: v1.Schedule
|
|
(*Hook)(nil), // 17: v1.Hook
|
|
(*Auth)(nil), // 18: v1.Auth
|
|
(*User)(nil), // 19: v1.User
|
|
(*HubConfig_InstanceInfo)(nil), // 20: v1.HubConfig.InstanceInfo
|
|
(*Multihost_Peer)(nil), // 21: v1.Multihost.Peer
|
|
(*Multihost_Permission)(nil), // 22: v1.Multihost.Permission
|
|
(*RetentionPolicy_TimeBucketedCounts)(nil), // 23: v1.RetentionPolicy.TimeBucketedCounts
|
|
(*Hook_Command)(nil), // 24: v1.Hook.Command
|
|
(*Hook_Webhook)(nil), // 25: v1.Hook.Webhook
|
|
(*Hook_Discord)(nil), // 26: v1.Hook.Discord
|
|
(*Hook_Gotify)(nil), // 27: v1.Hook.Gotify
|
|
(*Hook_Slack)(nil), // 28: v1.Hook.Slack
|
|
(*Hook_Shoutrrr)(nil), // 29: v1.Hook.Shoutrrr
|
|
(*Hook_Healthchecks)(nil), // 30: v1.Hook.Healthchecks
|
|
(*PrivateKey)(nil), // 31: v1.PrivateKey
|
|
}
|
|
var file_v1_config_proto_depIdxs = []int32{
|
|
20, // 0: v1.HubConfig.instances:type_name -> v1.HubConfig.InstanceInfo
|
|
10, // 1: v1.Config.repos:type_name -> v1.Repo
|
|
11, // 2: v1.Config.plans:type_name -> v1.Plan
|
|
18, // 3: v1.Config.auth:type_name -> v1.Auth
|
|
9, // 4: v1.Config.multihost:type_name -> v1.Multihost
|
|
31, // 5: v1.Multihost.identity:type_name -> v1.PrivateKey
|
|
21, // 6: v1.Multihost.known_hosts:type_name -> v1.Multihost.Peer
|
|
21, // 7: v1.Multihost.authorized_clients:type_name -> v1.Multihost.Peer
|
|
14, // 8: v1.Repo.prune_policy:type_name -> v1.PrunePolicy
|
|
15, // 9: v1.Repo.check_policy:type_name -> v1.CheckPolicy
|
|
17, // 10: v1.Repo.hooks:type_name -> v1.Hook
|
|
12, // 11: v1.Repo.command_prefix:type_name -> v1.CommandPrefix
|
|
16, // 12: v1.Plan.schedule:type_name -> v1.Schedule
|
|
13, // 13: v1.Plan.retention:type_name -> v1.RetentionPolicy
|
|
17, // 14: v1.Plan.hooks:type_name -> v1.Hook
|
|
1, // 15: v1.CommandPrefix.io_nice:type_name -> v1.CommandPrefix.IONiceLevel
|
|
2, // 16: v1.CommandPrefix.cpu_nice:type_name -> v1.CommandPrefix.CPUNiceLevel
|
|
23, // 17: v1.RetentionPolicy.policy_time_bucketed:type_name -> v1.RetentionPolicy.TimeBucketedCounts
|
|
16, // 18: v1.PrunePolicy.schedule:type_name -> v1.Schedule
|
|
16, // 19: v1.CheckPolicy.schedule:type_name -> v1.Schedule
|
|
3, // 20: v1.Schedule.clock:type_name -> v1.Schedule.Clock
|
|
4, // 21: v1.Hook.conditions:type_name -> v1.Hook.Condition
|
|
5, // 22: v1.Hook.on_error:type_name -> v1.Hook.OnError
|
|
24, // 23: v1.Hook.action_command:type_name -> v1.Hook.Command
|
|
25, // 24: v1.Hook.action_webhook:type_name -> v1.Hook.Webhook
|
|
26, // 25: v1.Hook.action_discord:type_name -> v1.Hook.Discord
|
|
27, // 26: v1.Hook.action_gotify:type_name -> v1.Hook.Gotify
|
|
28, // 27: v1.Hook.action_slack:type_name -> v1.Hook.Slack
|
|
29, // 28: v1.Hook.action_shoutrrr:type_name -> v1.Hook.Shoutrrr
|
|
30, // 29: v1.Hook.action_healthchecks:type_name -> v1.Hook.Healthchecks
|
|
19, // 30: v1.Auth.users:type_name -> v1.User
|
|
22, // 31: v1.Multihost.Peer.permissions:type_name -> v1.Multihost.Permission
|
|
0, // 32: v1.Multihost.Permission.type:type_name -> v1.Multihost.Permission.Type
|
|
6, // 33: v1.Hook.Webhook.method:type_name -> v1.Hook.Webhook.Method
|
|
34, // [34:34] is the sub-list for method output_type
|
|
34, // [34:34] is the sub-list for method input_type
|
|
34, // [34:34] is the sub-list for extension type_name
|
|
34, // [34:34] is the sub-list for extension extendee
|
|
0, // [0:34] is the sub-list for field type_name
|
|
}
|
|
|
|
func init() { file_v1_config_proto_init() }
|
|
func file_v1_config_proto_init() {
|
|
if File_v1_config_proto != nil {
|
|
return
|
|
}
|
|
file_v1_crypto_proto_init()
|
|
file_v1_config_proto_msgTypes[6].OneofWrappers = []any{
|
|
(*RetentionPolicy_PolicyKeepLastN)(nil),
|
|
(*RetentionPolicy_PolicyTimeBucketed)(nil),
|
|
(*RetentionPolicy_PolicyKeepAll)(nil),
|
|
}
|
|
file_v1_config_proto_msgTypes[8].OneofWrappers = []any{
|
|
(*CheckPolicy_StructureOnly)(nil),
|
|
(*CheckPolicy_ReadDataSubsetPercent)(nil),
|
|
}
|
|
file_v1_config_proto_msgTypes[9].OneofWrappers = []any{
|
|
(*Schedule_Disabled)(nil),
|
|
(*Schedule_Cron)(nil),
|
|
(*Schedule_MaxFrequencyDays)(nil),
|
|
(*Schedule_MaxFrequencyHours)(nil),
|
|
}
|
|
file_v1_config_proto_msgTypes[10].OneofWrappers = []any{
|
|
(*Hook_ActionCommand)(nil),
|
|
(*Hook_ActionWebhook)(nil),
|
|
(*Hook_ActionDiscord)(nil),
|
|
(*Hook_ActionGotify)(nil),
|
|
(*Hook_ActionSlack)(nil),
|
|
(*Hook_ActionShoutrrr)(nil),
|
|
(*Hook_ActionHealthchecks)(nil),
|
|
}
|
|
file_v1_config_proto_msgTypes[12].OneofWrappers = []any{
|
|
(*User_PasswordBcrypt)(nil),
|
|
}
|
|
type x struct{}
|
|
out := protoimpl.TypeBuilder{
|
|
File: protoimpl.DescBuilder{
|
|
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
|
RawDescriptor: file_v1_config_proto_rawDesc,
|
|
NumEnums: 7,
|
|
NumMessages: 24,
|
|
NumExtensions: 0,
|
|
NumServices: 0,
|
|
},
|
|
GoTypes: file_v1_config_proto_goTypes,
|
|
DependencyIndexes: file_v1_config_proto_depIdxs,
|
|
EnumInfos: file_v1_config_proto_enumTypes,
|
|
MessageInfos: file_v1_config_proto_msgTypes,
|
|
}.Build()
|
|
File_v1_config_proto = out.File
|
|
file_v1_config_proto_rawDesc = nil
|
|
file_v1_config_proto_goTypes = nil
|
|
file_v1_config_proto_depIdxs = nil
|
|
}
|