// Backupy protobuf v1 — see docs/07-api-contract.md // // Messages flowing from the server to the agent over the long-lived WSS // connection. Each is wrapped in an Envelope (see envelope.proto). // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.36.11 // protoc (unknown) // source: backupv1/server_to_agent.proto package backupv1 import ( protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" reflect "reflect" sync "sync" unsafe "unsafe" ) 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) ) // RegisterAck is the reply to Register. Carries an AgentConfig snapshot so the // agent can begin work without an extra round-trip. // See docs/07-api-contract.md §5 (RegisterAck). type RegisterAck struct { state protoimpl.MessageState `protogen:"open.v1"` SessionId string `protobuf:"bytes,1,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"` Config *AgentConfig `protobuf:"bytes,2,opt,name=config,proto3" json:"config,omitempty"` HeartbeatIntervalSec uint32 `protobuf:"varint,3,opt,name=heartbeat_interval_sec,json=heartbeatIntervalSec,proto3" json:"heartbeat_interval_sec,omitempty"` ServerTimeIso string `protobuf:"bytes,4,opt,name=server_time_iso,json=serverTimeIso,proto3" json:"server_time_iso,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *RegisterAck) Reset() { *x = RegisterAck{} mi := &file_backupv1_server_to_agent_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *RegisterAck) String() string { return protoimpl.X.MessageStringOf(x) } func (*RegisterAck) ProtoMessage() {} func (x *RegisterAck) ProtoReflect() protoreflect.Message { mi := &file_backupv1_server_to_agent_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 RegisterAck.ProtoReflect.Descriptor instead. func (*RegisterAck) Descriptor() ([]byte, []int) { return file_backupv1_server_to_agent_proto_rawDescGZIP(), []int{0} } func (x *RegisterAck) GetSessionId() string { if x != nil { return x.SessionId } return "" } func (x *RegisterAck) GetConfig() *AgentConfig { if x != nil { return x.Config } return nil } func (x *RegisterAck) GetHeartbeatIntervalSec() uint32 { if x != nil { return x.HeartbeatIntervalSec } return 0 } func (x *RegisterAck) GetServerTimeIso() string { if x != nil { return x.ServerTimeIso } return "" } // AgentConfig is the full configuration snapshot for an agent. // See docs/07-api-contract.md §5 (AgentConfig). type AgentConfig struct { state protoimpl.MessageState `protogen:"open.v1"` Version uint64 `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"` Targets []*Target `protobuf:"bytes,2,rep,name=targets,proto3" json:"targets,omitempty"` Jobs []*BackupJobSpec `protobuf:"bytes,3,rep,name=jobs,proto3" json:"jobs,omitempty"` HealthChecks []*HealthCheckSpec `protobuf:"bytes,4,rep,name=health_checks,json=healthChecks,proto3" json:"health_checks,omitempty"` Maintenance *MaintenanceWindow `protobuf:"bytes,5,opt,name=maintenance,proto3" json:"maintenance,omitempty"` Advanced *AdvancedSettings `protobuf:"bytes,6,opt,name=advanced,proto3" json:"advanced,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *AgentConfig) Reset() { *x = AgentConfig{} mi := &file_backupv1_server_to_agent_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *AgentConfig) String() string { return protoimpl.X.MessageStringOf(x) } func (*AgentConfig) ProtoMessage() {} func (x *AgentConfig) ProtoReflect() protoreflect.Message { mi := &file_backupv1_server_to_agent_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 AgentConfig.ProtoReflect.Descriptor instead. func (*AgentConfig) Descriptor() ([]byte, []int) { return file_backupv1_server_to_agent_proto_rawDescGZIP(), []int{1} } func (x *AgentConfig) GetVersion() uint64 { if x != nil { return x.Version } return 0 } func (x *AgentConfig) GetTargets() []*Target { if x != nil { return x.Targets } return nil } func (x *AgentConfig) GetJobs() []*BackupJobSpec { if x != nil { return x.Jobs } return nil } func (x *AgentConfig) GetHealthChecks() []*HealthCheckSpec { if x != nil { return x.HealthChecks } return nil } func (x *AgentConfig) GetMaintenance() *MaintenanceWindow { if x != nil { return x.Maintenance } return nil } func (x *AgentConfig) GetAdvanced() *AdvancedSettings { if x != nil { return x.Advanced } return nil } // Target is a single backup source (database) managed by this agent. // See docs/07-api-contract.md §5 (Target). type Target struct { state protoimpl.MessageState `protogen:"open.v1"` Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` Type DbType `protobuf:"varint,2,opt,name=type,proto3,enum=backup.v1.DbType" json:"type,omitempty"` DisplayName string `protobuf:"bytes,3,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"` Connection *ConnectionConfig `protobuf:"bytes,4,opt,name=connection,proto3" json:"connection,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *Target) Reset() { *x = Target{} mi := &file_backupv1_server_to_agent_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *Target) String() string { return protoimpl.X.MessageStringOf(x) } func (*Target) ProtoMessage() {} func (x *Target) ProtoReflect() protoreflect.Message { mi := &file_backupv1_server_to_agent_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 Target.ProtoReflect.Descriptor instead. func (*Target) Descriptor() ([]byte, []int) { return file_backupv1_server_to_agent_proto_rawDescGZIP(), []int{2} } func (x *Target) GetId() string { if x != nil { return x.Id } return "" } func (x *Target) GetType() DbType { if x != nil { return x.Type } return DbType_DB_UNSPECIFIED } func (x *Target) GetDisplayName() string { if x != nil { return x.DisplayName } return "" } func (x *Target) GetConnection() *ConnectionConfig { if x != nil { return x.Connection } return nil } // ConnectionConfig describes how the agent connects to a Target's database. // See docs/07-api-contract.md §5 (ConnectionConfig). type ConnectionConfig struct { state protoimpl.MessageState `protogen:"open.v1"` Host string `protobuf:"bytes,1,opt,name=host,proto3" json:"host,omitempty"` Port uint32 `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"` Database string `protobuf:"bytes,3,opt,name=database,proto3" json:"database,omitempty"` Username string `protobuf:"bytes,4,opt,name=username,proto3" json:"username,omitempty"` PasswordSecretRef string `protobuf:"bytes,5,opt,name=password_secret_ref,json=passwordSecretRef,proto3" json:"password_secret_ref,omitempty"` // reference to encrypted secret in vault ContainerId string `protobuf:"bytes,6,opt,name=container_id,json=containerId,proto3" json:"container_id,omitempty"` // populated for DOCKER_EXEC strategy Strategy ConnectionStrategy `protobuf:"varint,7,opt,name=strategy,proto3,enum=backup.v1.ConnectionStrategy" json:"strategy,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *ConnectionConfig) Reset() { *x = ConnectionConfig{} mi := &file_backupv1_server_to_agent_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *ConnectionConfig) String() string { return protoimpl.X.MessageStringOf(x) } func (*ConnectionConfig) ProtoMessage() {} func (x *ConnectionConfig) ProtoReflect() protoreflect.Message { mi := &file_backupv1_server_to_agent_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 ConnectionConfig.ProtoReflect.Descriptor instead. func (*ConnectionConfig) Descriptor() ([]byte, []int) { return file_backupv1_server_to_agent_proto_rawDescGZIP(), []int{3} } func (x *ConnectionConfig) GetHost() string { if x != nil { return x.Host } return "" } func (x *ConnectionConfig) GetPort() uint32 { if x != nil { return x.Port } return 0 } func (x *ConnectionConfig) GetDatabase() string { if x != nil { return x.Database } return "" } func (x *ConnectionConfig) GetUsername() string { if x != nil { return x.Username } return "" } func (x *ConnectionConfig) GetPasswordSecretRef() string { if x != nil { return x.PasswordSecretRef } return "" } func (x *ConnectionConfig) GetContainerId() string { if x != nil { return x.ContainerId } return "" } func (x *ConnectionConfig) GetStrategy() ConnectionStrategy { if x != nil { return x.Strategy } return ConnectionStrategy_TCP } // BackupJobSpec defines a scheduled backup job for one Target. // See docs/07-api-contract.md §5 (BackupJobSpec). type BackupJobSpec struct { state protoimpl.MessageState `protogen:"open.v1"` Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` TargetId string `protobuf:"bytes,2,opt,name=target_id,json=targetId,proto3" json:"target_id,omitempty"` Cron string `protobuf:"bytes,3,opt,name=cron,proto3" json:"cron,omitempty"` // cron expression in UTC RetentionDays uint32 `protobuf:"varint,4,opt,name=retention_days,json=retentionDays,proto3" json:"retention_days,omitempty"` Compression string `protobuf:"bytes,5,opt,name=compression,proto3" json:"compression,omitempty"` // "zstd" | "gzip" | "none" EncryptionEnabled bool `protobuf:"varint,6,opt,name=encryption_enabled,json=encryptionEnabled,proto3" json:"encryption_enabled,omitempty"` PreHooks []string `protobuf:"bytes,7,rep,name=pre_hooks,json=preHooks,proto3" json:"pre_hooks,omitempty"` PostHooks []string `protobuf:"bytes,8,rep,name=post_hooks,json=postHooks,proto3" json:"post_hooks,omitempty"` Retry *RetryPolicy `protobuf:"bytes,9,opt,name=retry,proto3" json:"retry,omitempty"` TimeoutSec uint32 `protobuf:"varint,10,opt,name=timeout_sec,json=timeoutSec,proto3" json:"timeout_sec,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *BackupJobSpec) Reset() { *x = BackupJobSpec{} mi := &file_backupv1_server_to_agent_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *BackupJobSpec) String() string { return protoimpl.X.MessageStringOf(x) } func (*BackupJobSpec) ProtoMessage() {} func (x *BackupJobSpec) ProtoReflect() protoreflect.Message { mi := &file_backupv1_server_to_agent_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 BackupJobSpec.ProtoReflect.Descriptor instead. func (*BackupJobSpec) Descriptor() ([]byte, []int) { return file_backupv1_server_to_agent_proto_rawDescGZIP(), []int{4} } func (x *BackupJobSpec) GetId() string { if x != nil { return x.Id } return "" } func (x *BackupJobSpec) GetTargetId() string { if x != nil { return x.TargetId } return "" } func (x *BackupJobSpec) GetCron() string { if x != nil { return x.Cron } return "" } func (x *BackupJobSpec) GetRetentionDays() uint32 { if x != nil { return x.RetentionDays } return 0 } func (x *BackupJobSpec) GetCompression() string { if x != nil { return x.Compression } return "" } func (x *BackupJobSpec) GetEncryptionEnabled() bool { if x != nil { return x.EncryptionEnabled } return false } func (x *BackupJobSpec) GetPreHooks() []string { if x != nil { return x.PreHooks } return nil } func (x *BackupJobSpec) GetPostHooks() []string { if x != nil { return x.PostHooks } return nil } func (x *BackupJobSpec) GetRetry() *RetryPolicy { if x != nil { return x.Retry } return nil } func (x *BackupJobSpec) GetTimeoutSec() uint32 { if x != nil { return x.TimeoutSec } return 0 } // HealthCheckSpec defines a single health-check probe. // See docs/07-api-contract.md §5 (HealthCheckSpec). type HealthCheckSpec struct { state protoimpl.MessageState `protogen:"open.v1"` Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` Type CheckType `protobuf:"varint,3,opt,name=type,proto3,enum=backup.v1.CheckType" json:"type,omitempty"` Target string `protobuf:"bytes,4,opt,name=target,proto3" json:"target,omitempty"` // URL or host:port IntervalSec uint32 `protobuf:"varint,5,opt,name=interval_sec,json=intervalSec,proto3" json:"interval_sec,omitempty"` TimeoutSec uint32 `protobuf:"varint,6,opt,name=timeout_sec,json=timeoutSec,proto3" json:"timeout_sec,omitempty"` ExpectedStatus uint32 `protobuf:"varint,7,opt,name=expected_status,json=expectedStatus,proto3" json:"expected_status,omitempty"` // expected HTTP status (HTTP/HTTPS only) unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *HealthCheckSpec) Reset() { *x = HealthCheckSpec{} mi := &file_backupv1_server_to_agent_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *HealthCheckSpec) String() string { return protoimpl.X.MessageStringOf(x) } func (*HealthCheckSpec) ProtoMessage() {} func (x *HealthCheckSpec) ProtoReflect() protoreflect.Message { mi := &file_backupv1_server_to_agent_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 HealthCheckSpec.ProtoReflect.Descriptor instead. func (*HealthCheckSpec) Descriptor() ([]byte, []int) { return file_backupv1_server_to_agent_proto_rawDescGZIP(), []int{5} } func (x *HealthCheckSpec) GetId() string { if x != nil { return x.Id } return "" } func (x *HealthCheckSpec) GetName() string { if x != nil { return x.Name } return "" } func (x *HealthCheckSpec) GetType() CheckType { if x != nil { return x.Type } return CheckType_HTTP } func (x *HealthCheckSpec) GetTarget() string { if x != nil { return x.Target } return "" } func (x *HealthCheckSpec) GetIntervalSec() uint32 { if x != nil { return x.IntervalSec } return 0 } func (x *HealthCheckSpec) GetTimeoutSec() uint32 { if x != nil { return x.TimeoutSec } return 0 } func (x *HealthCheckSpec) GetExpectedStatus() uint32 { if x != nil { return x.ExpectedStatus } return 0 } // ConfigUpdate replaces the agent's current AgentConfig. // See docs/07-api-contract.md §5. type ConfigUpdate struct { state protoimpl.MessageState `protogen:"open.v1"` Config *AgentConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *ConfigUpdate) Reset() { *x = ConfigUpdate{} mi := &file_backupv1_server_to_agent_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *ConfigUpdate) String() string { return protoimpl.X.MessageStringOf(x) } func (*ConfigUpdate) ProtoMessage() {} func (x *ConfigUpdate) ProtoReflect() protoreflect.Message { mi := &file_backupv1_server_to_agent_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 ConfigUpdate.ProtoReflect.Descriptor instead. func (*ConfigUpdate) Descriptor() ([]byte, []int) { return file_backupv1_server_to_agent_proto_rawDescGZIP(), []int{6} } func (x *ConfigUpdate) GetConfig() *AgentConfig { if x != nil { return x.Config } return nil } // RunBackup tells the agent to execute one backup run for the named job. // Server pre-issues S3 upload credentials and a KMS-wrapped DEK. // See docs/07-api-contract.md §5 (RunBackup). type RunBackup struct { state protoimpl.MessageState `protogen:"open.v1"` JobId string `protobuf:"bytes,1,opt,name=job_id,json=jobId,proto3" json:"job_id,omitempty"` RunId string `protobuf:"bytes,2,opt,name=run_id,json=runId,proto3" json:"run_id,omitempty"` ManualTrigger bool `protobuf:"varint,3,opt,name=manual_trigger,json=manualTrigger,proto3" json:"manual_trigger,omitempty"` UploadCreds *S3UploadCreds `protobuf:"bytes,4,opt,name=upload_creds,json=uploadCreds,proto3" json:"upload_creds,omitempty"` EncryptedDek []byte `protobuf:"bytes,5,opt,name=encrypted_dek,json=encryptedDek,proto3" json:"encrypted_dek,omitempty"` // DEK wrapped by KMS unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *RunBackup) Reset() { *x = RunBackup{} mi := &file_backupv1_server_to_agent_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *RunBackup) String() string { return protoimpl.X.MessageStringOf(x) } func (*RunBackup) ProtoMessage() {} func (x *RunBackup) ProtoReflect() protoreflect.Message { mi := &file_backupv1_server_to_agent_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 RunBackup.ProtoReflect.Descriptor instead. func (*RunBackup) Descriptor() ([]byte, []int) { return file_backupv1_server_to_agent_proto_rawDescGZIP(), []int{7} } func (x *RunBackup) GetJobId() string { if x != nil { return x.JobId } return "" } func (x *RunBackup) GetRunId() string { if x != nil { return x.RunId } return "" } func (x *RunBackup) GetManualTrigger() bool { if x != nil { return x.ManualTrigger } return false } func (x *RunBackup) GetUploadCreds() *S3UploadCreds { if x != nil { return x.UploadCreds } return nil } func (x *RunBackup) GetEncryptedDek() []byte { if x != nil { return x.EncryptedDek } return nil } // CancelJob requests cancellation of an in-flight job. // See docs/07-api-contract.md §5 (CancelJob). type CancelJob struct { state protoimpl.MessageState `protogen:"open.v1"` JobId string `protobuf:"bytes,1,opt,name=job_id,json=jobId,proto3" json:"job_id,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *CancelJob) Reset() { *x = CancelJob{} mi := &file_backupv1_server_to_agent_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *CancelJob) String() string { return protoimpl.X.MessageStringOf(x) } func (*CancelJob) ProtoMessage() {} func (x *CancelJob) ProtoReflect() protoreflect.Message { mi := &file_backupv1_server_to_agent_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 CancelJob.ProtoReflect.Descriptor instead. func (*CancelJob) Descriptor() ([]byte, []int) { return file_backupv1_server_to_agent_proto_rawDescGZIP(), []int{8} } func (x *CancelJob) GetJobId() string { if x != nil { return x.JobId } return "" } // RunHealthCheck triggers an immediate, out-of-schedule health-check probe. // See docs/07-api-contract.md §5 (RunHealthCheck). type RunHealthCheck struct { state protoimpl.MessageState `protogen:"open.v1"` CheckId string `protobuf:"bytes,1,opt,name=check_id,json=checkId,proto3" json:"check_id,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *RunHealthCheck) Reset() { *x = RunHealthCheck{} mi := &file_backupv1_server_to_agent_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *RunHealthCheck) String() string { return protoimpl.X.MessageStringOf(x) } func (*RunHealthCheck) ProtoMessage() {} func (x *RunHealthCheck) ProtoReflect() protoreflect.Message { mi := &file_backupv1_server_to_agent_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 RunHealthCheck.ProtoReflect.Descriptor instead. func (*RunHealthCheck) Descriptor() ([]byte, []int) { return file_backupv1_server_to_agent_proto_rawDescGZIP(), []int{9} } func (x *RunHealthCheck) GetCheckId() string { if x != nil { return x.CheckId } return "" } // SelfUpdate asks the agent to upgrade its binary to target_version. // cosign_signature lets the agent verify the binary before swapping it in. // See docs/07-api-contract.md §5 (SelfUpdate). type SelfUpdate struct { state protoimpl.MessageState `protogen:"open.v1"` TargetVersion string `protobuf:"bytes,1,opt,name=target_version,json=targetVersion,proto3" json:"target_version,omitempty"` BinaryUrl string `protobuf:"bytes,2,opt,name=binary_url,json=binaryUrl,proto3" json:"binary_url,omitempty"` Sha256 string `protobuf:"bytes,3,opt,name=sha256,proto3" json:"sha256,omitempty"` CosignSignature []byte `protobuf:"bytes,4,opt,name=cosign_signature,json=cosignSignature,proto3" json:"cosign_signature,omitempty"` Force bool `protobuf:"varint,5,opt,name=force,proto3" json:"force,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SelfUpdate) Reset() { *x = SelfUpdate{} mi := &file_backupv1_server_to_agent_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SelfUpdate) String() string { return protoimpl.X.MessageStringOf(x) } func (*SelfUpdate) ProtoMessage() {} func (x *SelfUpdate) ProtoReflect() protoreflect.Message { mi := &file_backupv1_server_to_agent_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 SelfUpdate.ProtoReflect.Descriptor instead. func (*SelfUpdate) Descriptor() ([]byte, []int) { return file_backupv1_server_to_agent_proto_rawDescGZIP(), []int{10} } func (x *SelfUpdate) GetTargetVersion() string { if x != nil { return x.TargetVersion } return "" } func (x *SelfUpdate) GetBinaryUrl() string { if x != nil { return x.BinaryUrl } return "" } func (x *SelfUpdate) GetSha256() string { if x != nil { return x.Sha256 } return "" } func (x *SelfUpdate) GetCosignSignature() []byte { if x != nil { return x.CosignSignature } return nil } func (x *SelfUpdate) GetForce() bool { if x != nil { return x.Force } return false } // Ping is an application-level keepalive complementing WS-level pings. // The agent replies with an Ack carrying the same correlation_id. type Ping struct { state protoimpl.MessageState `protogen:"open.v1"` TsMs uint64 `protobuf:"varint,1,opt,name=ts_ms,json=tsMs,proto3" json:"ts_ms,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *Ping) Reset() { *x = Ping{} mi := &file_backupv1_server_to_agent_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *Ping) String() string { return protoimpl.X.MessageStringOf(x) } func (*Ping) ProtoMessage() {} func (x *Ping) ProtoReflect() protoreflect.Message { mi := &file_backupv1_server_to_agent_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 Ping.ProtoReflect.Descriptor instead. func (*Ping) Descriptor() ([]byte, []int) { return file_backupv1_server_to_agent_proto_rawDescGZIP(), []int{11} } func (x *Ping) GetTsMs() uint64 { if x != nil { return x.TsMs } return 0 } var File_backupv1_server_to_agent_proto protoreflect.FileDescriptor const file_backupv1_server_to_agent_proto_rawDesc = "" + "\n" + "\x1ebackupv1/server_to_agent.proto\x12\tbackup.v1\x1a\x15backupv1/common.proto\"\xba\x01\n" + "\vRegisterAck\x12\x1d\n" + "\n" + "session_id\x18\x01 \x01(\tR\tsessionId\x12.\n" + "\x06config\x18\x02 \x01(\v2\x16.backup.v1.AgentConfigR\x06config\x124\n" + "\x16heartbeat_interval_sec\x18\x03 \x01(\rR\x14heartbeatIntervalSec\x12&\n" + "\x0fserver_time_iso\x18\x04 \x01(\tR\rserverTimeIso\"\xbc\x02\n" + "\vAgentConfig\x12\x18\n" + "\aversion\x18\x01 \x01(\x04R\aversion\x12+\n" + "\atargets\x18\x02 \x03(\v2\x11.backup.v1.TargetR\atargets\x12,\n" + "\x04jobs\x18\x03 \x03(\v2\x18.backup.v1.BackupJobSpecR\x04jobs\x12?\n" + "\rhealth_checks\x18\x04 \x03(\v2\x1a.backup.v1.HealthCheckSpecR\fhealthChecks\x12>\n" + "\vmaintenance\x18\x05 \x01(\v2\x1c.backup.v1.MaintenanceWindowR\vmaintenance\x127\n" + "\badvanced\x18\x06 \x01(\v2\x1b.backup.v1.AdvancedSettingsR\badvanced\"\x9f\x01\n" + "\x06Target\x12\x0e\n" + "\x02id\x18\x01 \x01(\tR\x02id\x12%\n" + "\x04type\x18\x02 \x01(\x0e2\x11.backup.v1.DbTypeR\x04type\x12!\n" + "\fdisplay_name\x18\x03 \x01(\tR\vdisplayName\x12;\n" + "\n" + "connection\x18\x04 \x01(\v2\x1b.backup.v1.ConnectionConfigR\n" + "connection\"\x80\x02\n" + "\x10ConnectionConfig\x12\x12\n" + "\x04host\x18\x01 \x01(\tR\x04host\x12\x12\n" + "\x04port\x18\x02 \x01(\rR\x04port\x12\x1a\n" + "\bdatabase\x18\x03 \x01(\tR\bdatabase\x12\x1a\n" + "\busername\x18\x04 \x01(\tR\busername\x12.\n" + "\x13password_secret_ref\x18\x05 \x01(\tR\x11passwordSecretRef\x12!\n" + "\fcontainer_id\x18\x06 \x01(\tR\vcontainerId\x129\n" + "\bstrategy\x18\a \x01(\x0e2\x1d.backup.v1.ConnectionStrategyR\bstrategy\"\xd3\x02\n" + "\rBackupJobSpec\x12\x0e\n" + "\x02id\x18\x01 \x01(\tR\x02id\x12\x1b\n" + "\ttarget_id\x18\x02 \x01(\tR\btargetId\x12\x12\n" + "\x04cron\x18\x03 \x01(\tR\x04cron\x12%\n" + "\x0eretention_days\x18\x04 \x01(\rR\rretentionDays\x12 \n" + "\vcompression\x18\x05 \x01(\tR\vcompression\x12-\n" + "\x12encryption_enabled\x18\x06 \x01(\bR\x11encryptionEnabled\x12\x1b\n" + "\tpre_hooks\x18\a \x03(\tR\bpreHooks\x12\x1d\n" + "\n" + "post_hooks\x18\b \x03(\tR\tpostHooks\x12,\n" + "\x05retry\x18\t \x01(\v2\x16.backup.v1.RetryPolicyR\x05retry\x12\x1f\n" + "\vtimeout_sec\x18\n" + " \x01(\rR\n" + "timeoutSec\"\xe4\x01\n" + "\x0fHealthCheckSpec\x12\x0e\n" + "\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n" + "\x04name\x18\x02 \x01(\tR\x04name\x12(\n" + "\x04type\x18\x03 \x01(\x0e2\x14.backup.v1.CheckTypeR\x04type\x12\x16\n" + "\x06target\x18\x04 \x01(\tR\x06target\x12!\n" + "\finterval_sec\x18\x05 \x01(\rR\vintervalSec\x12\x1f\n" + "\vtimeout_sec\x18\x06 \x01(\rR\n" + "timeoutSec\x12'\n" + "\x0fexpected_status\x18\a \x01(\rR\x0eexpectedStatus\">\n" + "\fConfigUpdate\x12.\n" + "\x06config\x18\x01 \x01(\v2\x16.backup.v1.AgentConfigR\x06config\"\xc2\x01\n" + "\tRunBackup\x12\x15\n" + "\x06job_id\x18\x01 \x01(\tR\x05jobId\x12\x15\n" + "\x06run_id\x18\x02 \x01(\tR\x05runId\x12%\n" + "\x0emanual_trigger\x18\x03 \x01(\bR\rmanualTrigger\x12;\n" + "\fupload_creds\x18\x04 \x01(\v2\x18.backup.v1.S3UploadCredsR\vuploadCreds\x12#\n" + "\rencrypted_dek\x18\x05 \x01(\fR\fencryptedDek\"\"\n" + "\tCancelJob\x12\x15\n" + "\x06job_id\x18\x01 \x01(\tR\x05jobId\"+\n" + "\x0eRunHealthCheck\x12\x19\n" + "\bcheck_id\x18\x01 \x01(\tR\acheckId\"\xab\x01\n" + "\n" + "SelfUpdate\x12%\n" + "\x0etarget_version\x18\x01 \x01(\tR\rtargetVersion\x12\x1d\n" + "\n" + "binary_url\x18\x02 \x01(\tR\tbinaryUrl\x12\x16\n" + "\x06sha256\x18\x03 \x01(\tR\x06sha256\x12)\n" + "\x10cosign_signature\x18\x04 \x01(\fR\x0fcosignSignature\x12\x14\n" + "\x05force\x18\x05 \x01(\bR\x05force\"\x1b\n" + "\x04Ping\x12\x13\n" + "\x05ts_ms\x18\x01 \x01(\x04R\x04tsMsB\xac\x01\n" + "\rcom.backup.v1B\x12ServerToAgentProtoP\x01ZBgithub.com/backupy/backupy/packages/proto/gen/go/backupv1;backupv1\xa2\x02\x03BXX\xaa\x02\tBackup.V1\xca\x02\tBackup\\V1\xe2\x02\x15Backup\\V1\\GPBMetadata\xea\x02\n" + "Backup::V1b\x06proto3" var ( file_backupv1_server_to_agent_proto_rawDescOnce sync.Once file_backupv1_server_to_agent_proto_rawDescData []byte ) func file_backupv1_server_to_agent_proto_rawDescGZIP() []byte { file_backupv1_server_to_agent_proto_rawDescOnce.Do(func() { file_backupv1_server_to_agent_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_backupv1_server_to_agent_proto_rawDesc), len(file_backupv1_server_to_agent_proto_rawDesc))) }) return file_backupv1_server_to_agent_proto_rawDescData } var file_backupv1_server_to_agent_proto_msgTypes = make([]protoimpl.MessageInfo, 12) var file_backupv1_server_to_agent_proto_goTypes = []any{ (*RegisterAck)(nil), // 0: backup.v1.RegisterAck (*AgentConfig)(nil), // 1: backup.v1.AgentConfig (*Target)(nil), // 2: backup.v1.Target (*ConnectionConfig)(nil), // 3: backup.v1.ConnectionConfig (*BackupJobSpec)(nil), // 4: backup.v1.BackupJobSpec (*HealthCheckSpec)(nil), // 5: backup.v1.HealthCheckSpec (*ConfigUpdate)(nil), // 6: backup.v1.ConfigUpdate (*RunBackup)(nil), // 7: backup.v1.RunBackup (*CancelJob)(nil), // 8: backup.v1.CancelJob (*RunHealthCheck)(nil), // 9: backup.v1.RunHealthCheck (*SelfUpdate)(nil), // 10: backup.v1.SelfUpdate (*Ping)(nil), // 11: backup.v1.Ping (*MaintenanceWindow)(nil), // 12: backup.v1.MaintenanceWindow (*AdvancedSettings)(nil), // 13: backup.v1.AdvancedSettings (DbType)(0), // 14: backup.v1.DbType (ConnectionStrategy)(0), // 15: backup.v1.ConnectionStrategy (*RetryPolicy)(nil), // 16: backup.v1.RetryPolicy (CheckType)(0), // 17: backup.v1.CheckType (*S3UploadCreds)(nil), // 18: backup.v1.S3UploadCreds } var file_backupv1_server_to_agent_proto_depIdxs = []int32{ 1, // 0: backup.v1.RegisterAck.config:type_name -> backup.v1.AgentConfig 2, // 1: backup.v1.AgentConfig.targets:type_name -> backup.v1.Target 4, // 2: backup.v1.AgentConfig.jobs:type_name -> backup.v1.BackupJobSpec 5, // 3: backup.v1.AgentConfig.health_checks:type_name -> backup.v1.HealthCheckSpec 12, // 4: backup.v1.AgentConfig.maintenance:type_name -> backup.v1.MaintenanceWindow 13, // 5: backup.v1.AgentConfig.advanced:type_name -> backup.v1.AdvancedSettings 14, // 6: backup.v1.Target.type:type_name -> backup.v1.DbType 3, // 7: backup.v1.Target.connection:type_name -> backup.v1.ConnectionConfig 15, // 8: backup.v1.ConnectionConfig.strategy:type_name -> backup.v1.ConnectionStrategy 16, // 9: backup.v1.BackupJobSpec.retry:type_name -> backup.v1.RetryPolicy 17, // 10: backup.v1.HealthCheckSpec.type:type_name -> backup.v1.CheckType 1, // 11: backup.v1.ConfigUpdate.config:type_name -> backup.v1.AgentConfig 18, // 12: backup.v1.RunBackup.upload_creds:type_name -> backup.v1.S3UploadCreds 13, // [13:13] is the sub-list for method output_type 13, // [13:13] is the sub-list for method input_type 13, // [13:13] is the sub-list for extension type_name 13, // [13:13] is the sub-list for extension extendee 0, // [0:13] is the sub-list for field type_name } func init() { file_backupv1_server_to_agent_proto_init() } func file_backupv1_server_to_agent_proto_init() { if File_backupv1_server_to_agent_proto != nil { return } file_backupv1_common_proto_init() type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: unsafe.Slice(unsafe.StringData(file_backupv1_server_to_agent_proto_rawDesc), len(file_backupv1_server_to_agent_proto_rawDesc)), NumEnums: 0, NumMessages: 12, NumExtensions: 0, NumServices: 0, }, GoTypes: file_backupv1_server_to_agent_proto_goTypes, DependencyIndexes: file_backupv1_server_to_agent_proto_depIdxs, MessageInfos: file_backupv1_server_to_agent_proto_msgTypes, }.Build() File_backupv1_server_to_agent_proto = out.File file_backupv1_server_to_agent_proto_goTypes = nil file_backupv1_server_to_agent_proto_depIdxs = nil }