Documentation
¶
Overview ¶
Package v1 is the v1 version of the API. +groupName=velero.io
Index ¶
- Constants
- Variables
- func CustomResources() map[string]typeInfo
- func Resource(resource string) schema.GroupResource
- type Backup
- type BackupHooks
- type BackupList
- type BackupPhase
- type BackupResourceHook
- type BackupResourceHookSpec
- type BackupSpec
- type BackupStatus
- type BackupStorageLocation
- type BackupStorageLocationAccessMode
- type BackupStorageLocationList
- type BackupStorageLocationPhase
- type BackupStorageLocationSpec
- type BackupStorageLocationStatus
- type DeleteBackupRequest
- type DeleteBackupRequestList
- type DeleteBackupRequestPhase
- type DeleteBackupRequestSpec
- type DeleteBackupRequestStatus
- type DownloadRequest
- type DownloadRequestList
- type DownloadRequestPhase
- type DownloadRequestSpec
- type DownloadRequestStatus
- type DownloadTarget
- type DownloadTargetKind
- type ExecHook
- type HookErrorMode
- type ObjectStorageLocation
- type PluginInfo
- type PodVolumeBackup
- type PodVolumeBackupList
- type PodVolumeBackupPhase
- type PodVolumeBackupSpec
- type PodVolumeBackupStatus
- type PodVolumeOperationProgress
- type PodVolumeRestore
- type PodVolumeRestoreList
- type PodVolumeRestorePhase
- type PodVolumeRestoreSpec
- type PodVolumeRestoreStatus
- type ResticRepository
- type ResticRepositoryList
- type ResticRepositoryPhase
- type ResticRepositorySpec
- type ResticRepositoryStatus
- type Restore
- type RestoreList
- type RestorePhase
- type RestoreSpec
- type RestoreStatus
- type Schedule
- type ScheduleList
- type SchedulePhase
- type ScheduleSpec
- type ScheduleStatus
- type ServerStatusRequest
- type ServerStatusRequestList
- type ServerStatusRequestPhase
- type ServerStatusRequestSpec
- type ServerStatusRequestStatus
- type StorageType
- type VolumeSnapshotLocation
- type VolumeSnapshotLocationList
- type VolumeSnapshotLocationPhase
- type VolumeSnapshotLocationSpec
- type VolumeSnapshotLocationStatus
Constants ¶
const ( // DefaultNamespace is the Kubernetes namespace that is used by default for // the Velero server and API objects. DefaultNamespace = "velero" // ResourcesDir is a top-level directory expected in backups which contains sub-directories // for each resource type in the backup. ResourcesDir = "resources" // MetadataDir is a top-level directory expected in backups which contains // files that store metadata about the backup, such as the backup version. MetadataDir = "metadata" // ClusterScopedDir is the name of the directory containing cluster-scoped // resources within a Velero backup. ClusterScopedDir = "cluster" // NamespaceScopedDir is the name of the directory containing namespace-scoped // resource within a Velero backup. NamespaceScopedDir = "namespaces" )
const ( // BackupNameLabel is the label key used to identify a backup by name. BackupNameLabel = "velero.io/backup-name" // BackupUIDLabel is the label key used to identify a backup by uid. BackupUIDLabel = "velero.io/backup-uid" // RestoreNameLabel is the label key used to identify a restore by name. RestoreNameLabel = "velero.io/restore-name" // ScheduleNameLabel is the label key used to identify a schedule by name. ScheduleNameLabel = "velero.io/schedule-name" // RestoreUIDLabel is the label key used to identify a restore by uid. RestoreUIDLabel = "velero.io/restore-uid" // PodUIDLabel is the label key used to identify a pod by uid. PodUIDLabel = "velero.io/pod-uid" // PVCUIDLabel is the label key used to identify a PVC by uid. PVCUIDLabel = "velero.io/pvc-uid" // PodVolumeOperationTimeoutAnnotation is the annotation key used to apply // a backup/restore-specific timeout value for pod volume operations (i.e. // restic backups/restores). PodVolumeOperationTimeoutAnnotation = "velero.io/pod-volume-timeout" // StorageLocationLabel is the label key used to identify the storage // location of a backup. StorageLocationLabel = "velero.io/storage-location" // ResticVolumeNamespaceLabel is the label key used to identify which // namespace a restic repository stores pod volume backups for. ResticVolumeNamespaceLabel = "velero.io/volume-namespace" )
const GroupName = "velero.io"
GroupName is the group name for the Velero API
Variables ¶
var ( // SchemeBuilder collects the scheme builder functions for the Velero API SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) // AddToScheme applies the SchemeBuilder functions to a specified scheme AddToScheme = SchemeBuilder.AddToScheme )
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1"}
SchemeGroupVersion is the GroupVersion for the Velero API
Functions ¶
func CustomResources ¶
func CustomResources() map[string]typeInfo
CustomResources returns a map of all custom resources within the Velero API group, keyed on Kind.
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource gets a Velero GroupResource for a specified resource
Types ¶
type Backup ¶
type Backup struct {
metav1.TypeMeta `json:",inline"`
// +optional
metav1.ObjectMeta `json:"metadata,omitempty"`
// +optional
Spec BackupSpec `json:"spec,omitempty"`
// +optional
Status BackupStatus `json:"status,omitempty"`
}
Backup is a Velero resource that respresents the capture of Kubernetes cluster state at a point in time (API objects and associated volume state).
func (*Backup) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Backup.
func (*Backup) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Backup) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BackupHooks ¶
type BackupHooks struct {
// Resources are hooks that should be executed when backing up individual instances of a resource.
// +optional
// +nullable
Resources []BackupResourceHookSpec `json:"resources,omitempty"`
}
BackupHooks contains custom behaviors that should be executed at different phases of the backup.
func (*BackupHooks) DeepCopy ¶
func (in *BackupHooks) DeepCopy() *BackupHooks
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupHooks.
func (*BackupHooks) DeepCopyInto ¶
func (in *BackupHooks) DeepCopyInto(out *BackupHooks)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupList ¶
type BackupList struct {
metav1.TypeMeta `json:",inline"`
// +optional
metav1.ListMeta `json:"metadata,omitempty"`
Items []Backup `json:"items"`
}
BackupList is a list of Backups.
func (*BackupList) DeepCopy ¶
func (in *BackupList) DeepCopy() *BackupList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupList.
func (*BackupList) DeepCopyInto ¶
func (in *BackupList) DeepCopyInto(out *BackupList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BackupList) DeepCopyObject ¶
func (in *BackupList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BackupPhase ¶
type BackupPhase string
BackupPhase is a string representation of the lifecycle phase of a Velero backup. +kubebuilder:validation:Enum=New;FailedValidation;InProgress;Completed;PartiallyFailed;Failed;Deleting
const ( // BackupPhaseNew means the backup has been created but not // yet processed by the BackupController. BackupPhaseNew BackupPhase = "New" // BackupPhaseFailedValidation means the backup has failed // the controller's validations and therefore will not run. BackupPhaseFailedValidation BackupPhase = "FailedValidation" // BackupPhaseInProgress means the backup is currently executing. BackupPhaseInProgress BackupPhase = "InProgress" // BackupPhaseCompleted means the backup has run successfully without // errors. BackupPhaseCompleted BackupPhase = "Completed" // BackupPhasePartiallyFailed means the backup has run to completion // but encountered 1+ errors backing up individual items. BackupPhasePartiallyFailed BackupPhase = "PartiallyFailed" // BackupPhaseFailed means the backup ran but encountered an error that // prevented it from completing successfully. BackupPhaseFailed BackupPhase = "Failed" // BackupPhaseDeleting means the backup and all its associated data are being deleted. BackupPhaseDeleting BackupPhase = "Deleting" )
type BackupResourceHook ¶
type BackupResourceHook struct {
// Exec defines an exec hook.
Exec *ExecHook `json:"exec"`
}
BackupResourceHook defines a hook for a resource.
func (*BackupResourceHook) DeepCopy ¶
func (in *BackupResourceHook) DeepCopy() *BackupResourceHook
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupResourceHook.
func (*BackupResourceHook) DeepCopyInto ¶
func (in *BackupResourceHook) DeepCopyInto(out *BackupResourceHook)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupResourceHookSpec ¶
type BackupResourceHookSpec struct {
// Name is the name of this hook.
Name string `json:"name"`
// IncludedNamespaces specifies the namespaces to which this hook spec applies. If empty, it applies
// to all namespaces.
// +optional
// +nullable
IncludedNamespaces []string `json:"includedNamespaces,omitempty"`
// ExcludedNamespaces specifies the namespaces to which this hook spec does not apply.
// +optional
// +nullable
ExcludedNamespaces []string `json:"excludedNamespaces,omitempty"`
// IncludedResources specifies the resources to which this hook spec applies. If empty, it applies
// to all resources.
// +optional
// +nullable
IncludedResources []string `json:"includedResources,omitempty"`
// ExcludedResources specifies the resources to which this hook spec does not apply.
// +optional
// +nullable
ExcludedResources []string `json:"excludedResources,omitempty"`
// LabelSelector, if specified, filters the resources to which this hook spec applies.
// +optional
// +nullable
LabelSelector *metav1.LabelSelector `json:"labelSelector,omitempty"`
// PreHooks is a list of BackupResourceHooks to execute prior to storing the item in the backup.
// These are executed before any "additional items" from item actions are processed.
// +optional
PreHooks []BackupResourceHook `json:"pre,omitempty"`
// PostHooks is a list of BackupResourceHooks to execute after storing the item in the backup.
// These are executed after all "additional items" from item actions are processed.
// +optional
PostHooks []BackupResourceHook `json:"post,omitempty"`
}
BackupResourceHookSpec defines one or more BackupResourceHooks that should be executed based on the rules defined for namespaces, resources, and label selector.
func (*BackupResourceHookSpec) DeepCopy ¶
func (in *BackupResourceHookSpec) DeepCopy() *BackupResourceHookSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupResourceHookSpec.
func (*BackupResourceHookSpec) DeepCopyInto ¶
func (in *BackupResourceHookSpec) DeepCopyInto(out *BackupResourceHookSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupSpec ¶
type BackupSpec struct {
// IncludedNamespaces is a slice of namespace names to include objects
// from. If empty, all namespaces are included.
// +optional
// +nullable
IncludedNamespaces []string `json:"includedNamespaces,omitempty"`
// ExcludedNamespaces contains a list of namespaces that are not
// included in the backup.
// +optional
// +nullable
ExcludedNamespaces []string `json:"excludedNamespaces,omitempty"`
// IncludedResources is a slice of resource names to include
// in the backup. If empty, all resources are included.
// +optional
// +nullable
IncludedResources []string `json:"includedResources,omitempty"`
// ExcludedResources is a slice of resource names that are not
// included in the backup.
// +optional
// +nullable
ExcludedResources []string `json:"excludedResources,omitempty"`
// LabelSelector is a metav1.LabelSelector to filter with
// when adding individual objects to the backup. If empty
// or nil, all objects are included. Optional.
// +optional
// +nullable
LabelSelector *metav1.LabelSelector `json:"labelSelector,omitempty"`
// SnapshotVolumes specifies whether to take cloud snapshots
// of any PV's referenced in the set of objects included
// in the Backup.
// +optional
// +nullable
SnapshotVolumes *bool `json:"snapshotVolumes,omitempty"`
// TTL is a time.Duration-parseable string describing how long
// the Backup should be retained for.
// +optional
TTL metav1.Duration `json:"ttl,omitempty"`
// IncludeClusterResources specifies whether cluster-scoped resources
// should be included for consideration in the backup.
// +optional
// +nullable
IncludeClusterResources *bool `json:"includeClusterResources,omitempty"`
// Hooks represent custom behaviors that should be executed at different phases of the backup.
// +optional
Hooks BackupHooks `json:"hooks,omitempty"`
// StorageLocation is a string containing the name of a BackupStorageLocation where the backup should be stored.
// +optional
StorageLocation string `json:"storageLocation,omitempty"`
// VolumeSnapshotLocations is a list containing names of VolumeSnapshotLocations associated with this backup.
// +optional
VolumeSnapshotLocations []string `json:"volumeSnapshotLocations,omitempty"`
}
BackupSpec defines the specification for a Velero backup.
func (*BackupSpec) DeepCopy ¶
func (in *BackupSpec) DeepCopy() *BackupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupSpec.
func (*BackupSpec) DeepCopyInto ¶
func (in *BackupSpec) DeepCopyInto(out *BackupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupStatus ¶
type BackupStatus struct {
// Version is the backup format version.
// +optional
Version int `json:"version,omitempty"`
// Expiration is when this Backup is eligible for garbage-collection.
// +optional
// +nullable
Expiration *metav1.Time `json:"expiration,omitempty"`
// Phase is the current state of the Backup.
// +optional
Phase BackupPhase `json:"phase,omitempty"`
// ValidationErrors is a slice of all validation errors (if
// applicable).
// +optional
// +nullable
ValidationErrors []string `json:"validationErrors,omitempty"`
// StartTimestamp records the time a backup was started.
// Separate from CreationTimestamp, since that value changes
// on restores.
// The server's time is used for StartTimestamps
// +optional
// +nullable
StartTimestamp *metav1.Time `json:"startTimestamp,omitempty"`
// CompletionTimestamp records the time a backup was completed.
// Completion time is recorded even on failed backups.
// Completion time is recorded before uploading the backup object.
// The server's time is used for CompletionTimestamps
// +optional
// +nullable
CompletionTimestamp *metav1.Time `json:"completionTimestamp,omitempty"`
// VolumeSnapshotsAttempted is the total number of attempted
// volume snapshots for this backup.
// +optional
VolumeSnapshotsAttempted int `json:"volumeSnapshotsAttempted,omitempty"`
// VolumeSnapshotsCompleted is the total number of successfully
// completed volume snapshots for this backup.
// +optional
VolumeSnapshotsCompleted int `json:"volumeSnapshotsCompleted,omitempty"`
// Warnings is a count of all warning messages that were generated during
// execution of the backup. The actual warnings are in the backup's log
// file in object storage.
// +optional
Warnings int `json:"warnings,omitempty"`
// Errors is a count of all error messages that were generated during
// execution of the backup. The actual errors are in the backup's log
// file in object storage.
// +optional
Errors int `json:"errors,omitempty"`
}
BackupStatus captures the current status of a Velero backup.
func (*BackupStatus) DeepCopy ¶
func (in *BackupStatus) DeepCopy() *BackupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupStatus.
func (*BackupStatus) DeepCopyInto ¶
func (in *BackupStatus) DeepCopyInto(out *BackupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupStorageLocation ¶
type BackupStorageLocation struct {
metav1.TypeMeta `json:",inline"`
// +optional
metav1.ObjectMeta `json:"metadata,omitempty"`
// +optional
Spec BackupStorageLocationSpec `json:"spec,omitempty"`
// +optional
Status BackupStorageLocationStatus `json:"status,omitempty"`
}
BackupStorageLocation is a location where Velero stores backup objects.
func (*BackupStorageLocation) DeepCopy ¶
func (in *BackupStorageLocation) DeepCopy() *BackupStorageLocation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupStorageLocation.
func (*BackupStorageLocation) DeepCopyInto ¶
func (in *BackupStorageLocation) DeepCopyInto(out *BackupStorageLocation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BackupStorageLocation) DeepCopyObject ¶
func (in *BackupStorageLocation) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BackupStorageLocationAccessMode ¶
type BackupStorageLocationAccessMode string
BackupStorageLocationAccessMode represents the permissions for a BackupStorageLocation. +kubebuilder:validation:Enum=ReadOnly;ReadWrite
const ( // BackupStorageLocationAccessModeReadOnly represents read-only access to a BackupStorageLocation. BackupStorageLocationAccessModeReadOnly BackupStorageLocationAccessMode = "ReadOnly" // BackupStorageLocationAccessModeReadWrite represents read and write access to a BackupStorageLocation. BackupStorageLocationAccessModeReadWrite BackupStorageLocationAccessMode = "ReadWrite" )
type BackupStorageLocationList ¶
type BackupStorageLocationList struct {
metav1.TypeMeta `json:",inline"`
// +optional
metav1.ListMeta `json:"metadata,omitempty"`
Items []BackupStorageLocation `json:"items"`
}
BackupStorageLocationList is a list of BackupStorageLocations.
func (*BackupStorageLocationList) DeepCopy ¶
func (in *BackupStorageLocationList) DeepCopy() *BackupStorageLocationList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupStorageLocationList.
func (*BackupStorageLocationList) DeepCopyInto ¶
func (in *BackupStorageLocationList) DeepCopyInto(out *BackupStorageLocationList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BackupStorageLocationList) DeepCopyObject ¶
func (in *BackupStorageLocationList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BackupStorageLocationPhase ¶
type BackupStorageLocationPhase string
BackupStorageLocationPhase is the lifecyle phase of a Velero BackupStorageLocation. +kubebuilder:validation:Enum=Available;Unavailable
const ( // BackupStorageLocationPhaseAvailable means the location is available to read and write from. BackupStorageLocationPhaseAvailable BackupStorageLocationPhase = "Available" BackupStorageLocationPhaseUnavailable BackupStorageLocationPhase = "Unavailable" )
type BackupStorageLocationSpec ¶
type BackupStorageLocationSpec struct {
// Provider is the provider of the backup storage.
Provider string `json:"provider"`
// Config is for provider-specific configuration fields.
// +optional
Config map[string]string `json:"config,omitempty"`
StorageType `json:",inline"`
// AccessMode defines the permissions for the backup storage location.
// +optional
AccessMode BackupStorageLocationAccessMode `json:"accessMode,omitempty"`
// BackupSyncPeriod defines how frequently to sync backup API objects from object storage. A value of 0 disables sync.
// +optional
// +nullable
BackupSyncPeriod *metav1.Duration `json:"backupSyncPeriod,omitempty"`
}
BackupStorageLocationSpec defines the specification for a Velero BackupStorageLocation.
func (*BackupStorageLocationSpec) DeepCopy ¶
func (in *BackupStorageLocationSpec) DeepCopy() *BackupStorageLocationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupStorageLocationSpec.
func (*BackupStorageLocationSpec) DeepCopyInto ¶
func (in *BackupStorageLocationSpec) DeepCopyInto(out *BackupStorageLocationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupStorageLocationStatus ¶
type BackupStorageLocationStatus struct {
// Phase is the current state of the BackupStorageLocation.
// +optional
Phase BackupStorageLocationPhase `json:"phase,omitempty"`
// LastSyncedTime is the last time the contents of the location were synced into
// the cluster.
// +optional
// +nullable
LastSyncedTime *metav1.Time `json:"lastSyncedTime,omitempty"`
// LastSyncedRevision is the value of the `metadata/revision` file in the backup
// storage location the last time the BSL's contents were synced into the cluster.
//
// Deprecated: this field is no longer updated or used for detecting changes to
// the location's contents and will be removed entirely in v2.0.
// +optional
LastSyncedRevision types.UID `json:"lastSyncedRevision,omitempty"`
// AccessMode is an unused field.
//
// Deprecated: there is now an AccessMode field on the Spec and this field
// will be removed entirely as of v2.0.
// +optional
AccessMode BackupStorageLocationAccessMode `json:"accessMode,omitempty"`
}
BackupStorageLocationStatus describes the current status of a Velero BackupStorageLocation.
func (*BackupStorageLocationStatus) DeepCopy ¶
func (in *BackupStorageLocationStatus) DeepCopy() *BackupStorageLocationStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupStorageLocationStatus.
func (*BackupStorageLocationStatus) DeepCopyInto ¶
func (in *BackupStorageLocationStatus) DeepCopyInto(out *BackupStorageLocationStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeleteBackupRequest ¶
type DeleteBackupRequest struct {
metav1.TypeMeta `json:",inline"`
// +optional
metav1.ObjectMeta `json:"metadata,omitempty"`
// +optional
Spec DeleteBackupRequestSpec `json:"spec,omitempty"`
// +optional
Status DeleteBackupRequestStatus `json:"status,omitempty"`
}
DeleteBackupRequest is a request to delete one or more backups.
func (*DeleteBackupRequest) DeepCopy ¶
func (in *DeleteBackupRequest) DeepCopy() *DeleteBackupRequest
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeleteBackupRequest.
func (*DeleteBackupRequest) DeepCopyInto ¶
func (in *DeleteBackupRequest) DeepCopyInto(out *DeleteBackupRequest)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DeleteBackupRequest) DeepCopyObject ¶
func (in *DeleteBackupRequest) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DeleteBackupRequestList ¶
type DeleteBackupRequestList struct {
metav1.TypeMeta `json:",inline"`
// +optional
metav1.ListMeta `json:"metadata,omitempty"`
Items []DeleteBackupRequest `json:"items"`
}
DeleteBackupRequestList is a list of DeleteBackupRequests.
func (*DeleteBackupRequestList) DeepCopy ¶
func (in *DeleteBackupRequestList) DeepCopy() *DeleteBackupRequestList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeleteBackupRequestList.
func (*DeleteBackupRequestList) DeepCopyInto ¶
func (in *DeleteBackupRequestList) DeepCopyInto(out *DeleteBackupRequestList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DeleteBackupRequestList) DeepCopyObject ¶
func (in *DeleteBackupRequestList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DeleteBackupRequestPhase ¶
type DeleteBackupRequestPhase string
DeleteBackupRequestPhase represents the lifecycle phase of a DeleteBackupRequest. +kubebuilder:validation:Enum=New;InProgress;Processed
const ( // DeleteBackupRequestPhaseNew means the DeleteBackupRequest has not been processed yet. DeleteBackupRequestPhaseNew DeleteBackupRequestPhase = "New" // DeleteBackupRequestPhaseInProgress means the DeleteBackupRequest is being processed. DeleteBackupRequestPhaseInProgress DeleteBackupRequestPhase = "InProgress" // DeleteBackupRequestPhaseProcessed means the DeleteBackupRequest has been processed. DeleteBackupRequestPhaseProcessed DeleteBackupRequestPhase = "Processed" )
type DeleteBackupRequestSpec ¶
type DeleteBackupRequestSpec struct {
BackupName string `json:"backupName"`
}
DeleteBackupRequestSpec is the specification for which backups to delete.
func (*DeleteBackupRequestSpec) DeepCopy ¶
func (in *DeleteBackupRequestSpec) DeepCopy() *DeleteBackupRequestSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeleteBackupRequestSpec.
func (*DeleteBackupRequestSpec) DeepCopyInto ¶
func (in *DeleteBackupRequestSpec) DeepCopyInto(out *DeleteBackupRequestSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeleteBackupRequestStatus ¶
type DeleteBackupRequestStatus struct {
// Phase is the current state of the DeleteBackupRequest.
// +optional
Phase DeleteBackupRequestPhase `json:"phase,omitempty"`
// Errors contains any errors that were encountered during the deletion process.
// +optional
// +nullable
Errors []string `json:"errors,omitempty"`
}
DeleteBackupRequestStatus is the current status of a DeleteBackupRequest.
func (*DeleteBackupRequestStatus) DeepCopy ¶
func (in *DeleteBackupRequestStatus) DeepCopy() *DeleteBackupRequestStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeleteBackupRequestStatus.
func (*DeleteBackupRequestStatus) DeepCopyInto ¶
func (in *DeleteBackupRequestStatus) DeepCopyInto(out *DeleteBackupRequestStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DownloadRequest ¶
type DownloadRequest struct {
metav1.TypeMeta `json:",inline"`
// +optional
metav1.ObjectMeta `json:"metadata,omitempty"`
// +optional
Spec DownloadRequestSpec `json:"spec,omitempty"`
// +optional
Status DownloadRequestStatus `json:"status,omitempty"`
}
DownloadRequest is a request to download an artifact from backup object storage, such as a backup log file.
func (*DownloadRequest) DeepCopy ¶
func (in *DownloadRequest) DeepCopy() *DownloadRequest
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DownloadRequest.
func (*DownloadRequest) DeepCopyInto ¶
func (in *DownloadRequest) DeepCopyInto(out *DownloadRequest)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DownloadRequest) DeepCopyObject ¶
func (in *DownloadRequest) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DownloadRequestList ¶
type DownloadRequestList struct {
metav1.TypeMeta `json:",inline"`
// +optional
metav1.ListMeta `json:"metadata,omitempty"`
Items []DownloadRequest `json:"items"`
}
DownloadRequestList is a list of DownloadRequests.
func (*DownloadRequestList) DeepCopy ¶
func (in *DownloadRequestList) DeepCopy() *DownloadRequestList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DownloadRequestList.
func (*DownloadRequestList) DeepCopyInto ¶
func (in *DownloadRequestList) DeepCopyInto(out *DownloadRequestList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DownloadRequestList) DeepCopyObject ¶
func (in *DownloadRequestList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DownloadRequestPhase ¶
type DownloadRequestPhase string
DownloadRequestPhase represents the lifecycle phase of a DownloadRequest. +kubebuilder:validation:Enum=New;Processed
const ( // DownloadRequestPhaseNew means the DownloadRequest has not been processed by the // DownloadRequestController yet. DownloadRequestPhaseNew DownloadRequestPhase = "New" // DownloadRequestPhaseProcessed means the DownloadRequest has been processed by the // DownloadRequestController. DownloadRequestPhaseProcessed DownloadRequestPhase = "Processed" )
type DownloadRequestSpec ¶
type DownloadRequestSpec struct {
// Target is what to download (e.g. logs for a backup).
Target DownloadTarget `json:"target"`
}
DownloadRequestSpec is the specification for a download request.
func (*DownloadRequestSpec) DeepCopy ¶
func (in *DownloadRequestSpec) DeepCopy() *DownloadRequestSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DownloadRequestSpec.
func (*DownloadRequestSpec) DeepCopyInto ¶
func (in *DownloadRequestSpec) DeepCopyInto(out *DownloadRequestSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DownloadRequestStatus ¶
type DownloadRequestStatus struct {
// Phase is the current state of the DownloadRequest.
// +optional
Phase DownloadRequestPhase `json:"phase,omitempty"`
// DownloadURL contains the pre-signed URL for the target file.
// +optional
DownloadURL string `json:"downloadURL,omitempty"`
// Expiration is when this DownloadRequest expires and can be deleted by the system.
// +optional
// +nullable
Expiration *metav1.Time `json:"expiration,omitempty"`
}
DownloadRequestStatus is the current status of a DownloadRequest.
func (*DownloadRequestStatus) DeepCopy ¶
func (in *DownloadRequestStatus) DeepCopy() *DownloadRequestStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DownloadRequestStatus.
func (*DownloadRequestStatus) DeepCopyInto ¶
func (in *DownloadRequestStatus) DeepCopyInto(out *DownloadRequestStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DownloadTarget ¶
type DownloadTarget struct {
// Kind is the type of file to download.
Kind DownloadTargetKind `json:"kind"`
// Name is the name of the kubernetes resource with which the file is associated.
Name string `json:"name"`
}
DownloadTarget is the specification for what kind of file to download, and the name of the resource with which it's associated.
func (*DownloadTarget) DeepCopy ¶
func (in *DownloadTarget) DeepCopy() *DownloadTarget
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DownloadTarget.
func (*DownloadTarget) DeepCopyInto ¶
func (in *DownloadTarget) DeepCopyInto(out *DownloadTarget)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DownloadTargetKind ¶
type DownloadTargetKind string
DownloadTargetKind represents what type of file to download. +kubebuilder:validation:Enum=BackupLog;BackupContents;BackupVolumeSnapshots;BackupResourceList;RestoreLog;RestoreResults
const ( DownloadTargetKindBackupLog DownloadTargetKind = "BackupLog" DownloadTargetKindBackupContents DownloadTargetKind = "BackupContents" DownloadTargetKindBackupVolumeSnapshots DownloadTargetKind = "BackupVolumeSnapshots" DownloadTargetKindBackupResourceList DownloadTargetKind = "BackupResourceList" DownloadTargetKindRestoreLog DownloadTargetKind = "RestoreLog" DownloadTargetKindRestoreResults DownloadTargetKind = "RestoreResults" )
type ExecHook ¶
type ExecHook struct {
// Container is the container in the pod where the command should be executed. If not specified,
// the pod's first container is used.
// +optional
Container string `json:"container,omitempty"`
// Command is the command and arguments to execute.
// +kubebuilder:validation:MinItems=1
Command []string `json:"command"`
// OnError specifies how Velero should behave if it encounters an error executing this hook.
// +optional
OnError HookErrorMode `json:"onError,omitempty"`
// Timeout defines the maximum amount of time Velero should wait for the hook to complete before
// considering the execution a failure.
// +optional
Timeout metav1.Duration `json:"timeout,omitempty"`
}
ExecHook is a hook that uses the pod exec API to execute a command in a container in a pod.
func (*ExecHook) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExecHook.
func (*ExecHook) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HookErrorMode ¶
type HookErrorMode string
HookErrorMode defines how Velero should treat an error from a hook. +kubebuilder:validation:Enum=Continue;Fail
const ( // HookErrorModeContinue means that an error from a hook is acceptable, and the backup can // proceed. HookErrorModeContinue HookErrorMode = "Continue" // HookErrorModeFail means that an error from a hook is problematic, and the backup should be in // error. HookErrorModeFail HookErrorMode = "Fail" )
type ObjectStorageLocation ¶
type ObjectStorageLocation struct {
// Bucket is the bucket to use for object storage.
Bucket string `json:"bucket"`
// Prefix is the path inside a bucket to use for Velero storage. Optional.
// +optional
Prefix string `json:"prefix,omitempty"`
}
ObjectStorageLocation specifies the settings necessary to connect to a provider's object storage.
func (*ObjectStorageLocation) DeepCopy ¶
func (in *ObjectStorageLocation) DeepCopy() *ObjectStorageLocation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectStorageLocation.
func (*ObjectStorageLocation) DeepCopyInto ¶
func (in *ObjectStorageLocation) DeepCopyInto(out *ObjectStorageLocation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PluginInfo ¶ added in v1.1.0
PluginInfo contains attributes of a Velero plugin
func (*PluginInfo) DeepCopy ¶ added in v1.1.0
func (in *PluginInfo) DeepCopy() *PluginInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PluginInfo.
func (*PluginInfo) DeepCopyInto ¶ added in v1.1.0
func (in *PluginInfo) DeepCopyInto(out *PluginInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodVolumeBackup ¶
type PodVolumeBackup struct {
metav1.TypeMeta `json:",inline"`
// +optional
metav1.ObjectMeta `json:"metadata,omitempty"`
// +optional
Spec PodVolumeBackupSpec `json:"spec,omitempty"`
// +optional
Status PodVolumeBackupStatus `json:"status,omitempty"`
}
func (*PodVolumeBackup) DeepCopy ¶
func (in *PodVolumeBackup) DeepCopy() *PodVolumeBackup
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodVolumeBackup.
func (*PodVolumeBackup) DeepCopyInto ¶
func (in *PodVolumeBackup) DeepCopyInto(out *PodVolumeBackup)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PodVolumeBackup) DeepCopyObject ¶
func (in *PodVolumeBackup) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PodVolumeBackupList ¶
type PodVolumeBackupList struct {
metav1.TypeMeta `json:",inline"`
// +optional
metav1.ListMeta `json:"metadata,omitempty"`
Items []PodVolumeBackup `json:"items"`
}
PodVolumeBackupList is a list of PodVolumeBackups.
func (*PodVolumeBackupList) DeepCopy ¶
func (in *PodVolumeBackupList) DeepCopy() *PodVolumeBackupList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodVolumeBackupList.
func (*PodVolumeBackupList) DeepCopyInto ¶
func (in *PodVolumeBackupList) DeepCopyInto(out *PodVolumeBackupList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PodVolumeBackupList) DeepCopyObject ¶
func (in *PodVolumeBackupList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PodVolumeBackupPhase ¶
type PodVolumeBackupPhase string
PodVolumeBackupPhase represents the lifecycle phase of a PodVolumeBackup. +kubebuilder:validation:Enum=New;InProgress;Completed;Failed
const ( PodVolumeBackupPhaseNew PodVolumeBackupPhase = "New" PodVolumeBackupPhaseInProgress PodVolumeBackupPhase = "InProgress" PodVolumeBackupPhaseCompleted PodVolumeBackupPhase = "Completed" PodVolumeBackupPhaseFailed PodVolumeBackupPhase = "Failed" )
type PodVolumeBackupSpec ¶
type PodVolumeBackupSpec struct {
// Node is the name of the node that the Pod is running on.
Node string `json:"node"`
// Pod is a reference to the pod containing the volume to be backed up.
Pod corev1api.ObjectReference `json:"pod"`
// Volume is the name of the volume within the Pod to be backed
// up.
Volume string `json:"volume"`
// BackupStorageLocation is the name of the backup storage location
// where the restic repository is stored.
BackupStorageLocation string `json:"backupStorageLocation"`
// RepoIdentifier is the restic repository identifier.
RepoIdentifier string `json:"repoIdentifier"`
// Tags are a map of key-value pairs that should be applied to the
// volume backup as tags.
// +optional
Tags map[string]string `json:"tags,omitempty"`
}
PodVolumeBackupSpec is the specification for a PodVolumeBackup.
func (*PodVolumeBackupSpec) DeepCopy ¶
func (in *PodVolumeBackupSpec) DeepCopy() *PodVolumeBackupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodVolumeBackupSpec.
func (*PodVolumeBackupSpec) DeepCopyInto ¶
func (in *PodVolumeBackupSpec) DeepCopyInto(out *PodVolumeBackupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodVolumeBackupStatus ¶
type PodVolumeBackupStatus struct {
// Phase is the current state of the PodVolumeBackup.
// +optional
Phase PodVolumeBackupPhase `json:"phase,omitempty"`
// Path is the full path within the controller pod being backed up.
// +optional
Path string `json:"path,omitempty"`
// SnapshotID is the identifier for the snapshot of the pod volume.
// +optional
SnapshotID string `json:"snapshotID,omitempty"`
// Message is a message about the pod volume backup's status.
// +optional
Message string `json:"message,omitempty"`
// StartTimestamp records the time a backup was started.
// Separate from CreationTimestamp, since that value changes
// on restores.
// The server's time is used for StartTimestamps
// +optional
// +nullable
StartTimestamp *metav1.Time `json:"startTimestamp,omitempty"`
// CompletionTimestamp records the time a backup was completed.
// Completion time is recorded even on failed backups.
// Completion time is recorded before uploading the backup object.
// The server's time is used for CompletionTimestamps
// +optional
// +nullable
CompletionTimestamp *metav1.Time `json:"completionTimestamp,omitempty"`
// Progress holds the total number of bytes of the volume and the current
// number of backed up bytes. This can be used to display progress information
// about the backup operation.
// +optional
Progress PodVolumeOperationProgress `json:"progress,omitempty"`
}
PodVolumeBackupStatus is the current status of a PodVolumeBackup.
func (*PodVolumeBackupStatus) DeepCopy ¶
func (in *PodVolumeBackupStatus) DeepCopy() *PodVolumeBackupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodVolumeBackupStatus.
func (*PodVolumeBackupStatus) DeepCopyInto ¶
func (in *PodVolumeBackupStatus) DeepCopyInto(out *PodVolumeBackupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodVolumeOperationProgress ¶ added in v1.2.0
type PodVolumeOperationProgress struct {
// +optional
TotalBytes int64 `json:"totalBytes,omitempty"`
// +optional
BytesDone int64 `json:"bytesDone,omitempty"`
}
PodVolumeOperationProgress represents the progress of a PodVolumeBackup/Restore (restic) operation
func (*PodVolumeOperationProgress) DeepCopy ¶ added in v1.2.0
func (in *PodVolumeOperationProgress) DeepCopy() *PodVolumeOperationProgress
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodVolumeOperationProgress.
func (*PodVolumeOperationProgress) DeepCopyInto ¶ added in v1.2.0
func (in *PodVolumeOperationProgress) DeepCopyInto(out *PodVolumeOperationProgress)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodVolumeRestore ¶
type PodVolumeRestore struct {
metav1.TypeMeta `json:",inline"`
// +optional
metav1.ObjectMeta `json:"metadata,omitempty"`
// +optional
Spec PodVolumeRestoreSpec `json:"spec,omitempty"`
// +optional
Status PodVolumeRestoreStatus `json:"status,omitempty"`
}
func (*PodVolumeRestore) DeepCopy ¶
func (in *PodVolumeRestore) DeepCopy() *PodVolumeRestore
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodVolumeRestore.
func (*PodVolumeRestore) DeepCopyInto ¶
func (in *PodVolumeRestore) DeepCopyInto(out *PodVolumeRestore)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PodVolumeRestore) DeepCopyObject ¶
func (in *PodVolumeRestore) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PodVolumeRestoreList ¶
type PodVolumeRestoreList struct {
metav1.TypeMeta `json:",inline"`
// +optional
metav1.ListMeta `json:"metadata,omitempty"`
Items []PodVolumeRestore `json:"items"`
}
PodVolumeRestoreList is a list of PodVolumeRestores.
func (*PodVolumeRestoreList) DeepCopy ¶
func (in *PodVolumeRestoreList) DeepCopy() *PodVolumeRestoreList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodVolumeRestoreList.
func (*PodVolumeRestoreList) DeepCopyInto ¶
func (in *PodVolumeRestoreList) DeepCopyInto(out *PodVolumeRestoreList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PodVolumeRestoreList) DeepCopyObject ¶
func (in *PodVolumeRestoreList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PodVolumeRestorePhase ¶
type PodVolumeRestorePhase string
PodVolumeRestorePhase represents the lifecycle phase of a PodVolumeRestore. +kubebuilder:validation:Enum=New;InProgress;Completed;Failed
const ( PodVolumeRestorePhaseNew PodVolumeRestorePhase = "New" PodVolumeRestorePhaseInProgress PodVolumeRestorePhase = "InProgress" PodVolumeRestorePhaseCompleted PodVolumeRestorePhase = "Completed" PodVolumeRestorePhaseFailed PodVolumeRestorePhase = "Failed" )
type PodVolumeRestoreSpec ¶
type PodVolumeRestoreSpec struct {
// Pod is a reference to the pod containing the volume to be restored.
Pod corev1api.ObjectReference `json:"pod"`
// Volume is the name of the volume within the Pod to be restored.
Volume string `json:"volume"`
// BackupStorageLocation is the name of the backup storage location
// where the restic repository is stored.
BackupStorageLocation string `json:"backupStorageLocation"`
// RepoIdentifier is the restic repository identifier.
RepoIdentifier string `json:"repoIdentifier"`
// SnapshotID is the ID of the volume snapshot to be restored.
SnapshotID string `json:"snapshotID"`
}
PodVolumeRestoreSpec is the specification for a PodVolumeRestore.
func (*PodVolumeRestoreSpec) DeepCopy ¶
func (in *PodVolumeRestoreSpec) DeepCopy() *PodVolumeRestoreSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodVolumeRestoreSpec.
func (*PodVolumeRestoreSpec) DeepCopyInto ¶
func (in *PodVolumeRestoreSpec) DeepCopyInto(out *PodVolumeRestoreSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodVolumeRestoreStatus ¶
type PodVolumeRestoreStatus struct {
// Phase is the current state of the PodVolumeRestore.
// +optional
Phase PodVolumeRestorePhase `json:"phase,omitempty"`
// Message is a message about the pod volume restore's status.
// +optional
Message string `json:"message,omitempty"`
// StartTimestamp records the time a restore was started.
// The server's time is used for StartTimestamps
// +optional
// +nullable
StartTimestamp *metav1.Time `json:"startTimestamp,omitempty"`
// CompletionTimestamp records the time a restore was completed.
// Completion time is recorded even on failed restores.
// The server's time is used for CompletionTimestamps
// +optional
// +nullable
CompletionTimestamp *metav1.Time `json:"completionTimestamp,omitempty"`
// Progress holds the total number of bytes of the snapshot and the current
// number of restored bytes. This can be used to display progress information
// about the restore operation.
// +optional
Progress PodVolumeOperationProgress `json:"progress,omitempty"`
}
PodVolumeRestoreStatus is the current status of a PodVolumeRestore.
func (*PodVolumeRestoreStatus) DeepCopy ¶
func (in *PodVolumeRestoreStatus) DeepCopy() *PodVolumeRestoreStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodVolumeRestoreStatus.
func (*PodVolumeRestoreStatus) DeepCopyInto ¶
func (in *PodVolumeRestoreStatus) DeepCopyInto(out *PodVolumeRestoreStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResticRepository ¶
type ResticRepository struct {
metav1.TypeMeta `json:",inline"`
// +optional
metav1.ObjectMeta `json:"metadata,omitempty"`
// +optional
Spec ResticRepositorySpec `json:"spec,omitempty"`
// +optional
Status ResticRepositoryStatus `json:"status,omitempty"`
}
func (*ResticRepository) DeepCopy ¶
func (in *ResticRepository) DeepCopy() *ResticRepository
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResticRepository.
func (*ResticRepository) DeepCopyInto ¶
func (in *ResticRepository) DeepCopyInto(out *ResticRepository)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ResticRepository) DeepCopyObject ¶
func (in *ResticRepository) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ResticRepositoryList ¶
type ResticRepositoryList struct {
metav1.TypeMeta `json:",inline"`
// +optional
metav1.ListMeta `json:"metadata,omitempty"`
Items []ResticRepository `json:"items"`
}
ResticRepositoryList is a list of ResticRepositories.
func (*ResticRepositoryList) DeepCopy ¶
func (in *ResticRepositoryList) DeepCopy() *ResticRepositoryList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResticRepositoryList.
func (*ResticRepositoryList) DeepCopyInto ¶
func (in *ResticRepositoryList) DeepCopyInto(out *ResticRepositoryList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ResticRepositoryList) DeepCopyObject ¶
func (in *ResticRepositoryList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ResticRepositoryPhase ¶
type ResticRepositoryPhase string
ResticRepositoryPhase represents the lifecycle phase of a ResticRepository. +kubebuilder:validation:Enum=New;Ready;NotReady
const ( ResticRepositoryPhaseNew ResticRepositoryPhase = "New" ResticRepositoryPhaseReady ResticRepositoryPhase = "Ready" ResticRepositoryPhaseNotReady ResticRepositoryPhase = "NotReady" )
type ResticRepositorySpec ¶
type ResticRepositorySpec struct {
// VolumeNamespace is the namespace this restic repository contains
// pod volume backups for.
VolumeNamespace string `json:"volumeNamespace"`
// BackupStorageLocation is the name of the BackupStorageLocation
// that should contain this repository.
BackupStorageLocation string `json:"backupStorageLocation"`
// ResticIdentifier is the full restic-compatible string for identifying
// this repository.
ResticIdentifier string `json:"resticIdentifier"`
// MaintenanceFrequency is how often maintenance should be run.
MaintenanceFrequency metav1.Duration `json:"maintenanceFrequency"`
}
ResticRepositorySpec is the specification for a ResticRepository.
func (*ResticRepositorySpec) DeepCopy ¶
func (in *ResticRepositorySpec) DeepCopy() *ResticRepositorySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResticRepositorySpec.
func (*ResticRepositorySpec) DeepCopyInto ¶
func (in *ResticRepositorySpec) DeepCopyInto(out *ResticRepositorySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResticRepositoryStatus ¶
type ResticRepositoryStatus struct {
// Phase is the current state of the ResticRepository.
// +optional
Phase ResticRepositoryPhase `json:"phase,omitempty"`
// Message is a message about the current status of the ResticRepository.
// +optional
Message string `json:"message,omitempty"`
// LastMaintenanceTime is the last time maintenance was run.
// +optional
// +nullable
LastMaintenanceTime *metav1.Time `json:"lastMaintenanceTime,omitempty"`
}
ResticRepositoryStatus is the current status of a ResticRepository.
func (*ResticRepositoryStatus) DeepCopy ¶
func (in *ResticRepositoryStatus) DeepCopy() *ResticRepositoryStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResticRepositoryStatus.
func (*ResticRepositoryStatus) DeepCopyInto ¶
func (in *ResticRepositoryStatus) DeepCopyInto(out *ResticRepositoryStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Restore ¶
type Restore struct {
metav1.TypeMeta `json:",inline"`
// +optional
metav1.ObjectMeta `json:"metadata,omitempty"`
// +optional
Spec RestoreSpec `json:"spec,omitempty"`
// +optional
Status RestoreStatus `json:"status,omitempty"`
}
Restore is a Velero resource that represents the application of resources from a Velero backup to a target Kubernetes cluster.
func (*Restore) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Restore.
func (*Restore) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Restore) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RestoreList ¶
type RestoreList struct {
metav1.TypeMeta `json:",inline"`
// +optional
metav1.ListMeta `json:"metadata"`
Items []Restore `json:"items"`
}
RestoreList is a list of Restores.
func (*RestoreList) DeepCopy ¶
func (in *RestoreList) DeepCopy() *RestoreList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreList.
func (*RestoreList) DeepCopyInto ¶
func (in *RestoreList) DeepCopyInto(out *RestoreList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RestoreList) DeepCopyObject ¶
func (in *RestoreList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RestorePhase ¶
type RestorePhase string
RestorePhase is a string representation of the lifecycle phase of a Velero restore +kubebuilder:validation:Enum=New;FailedValidation;InProgress;Completed;PartiallyFailed;Failed
const ( // RestorePhaseNew means the restore has been created but not // yet processed by the RestoreController RestorePhaseNew RestorePhase = "New" // RestorePhaseFailedValidation means the restore has failed // the controller's validations and therefore will not run. RestorePhaseFailedValidation RestorePhase = "FailedValidation" // RestorePhaseInProgress means the restore is currently executing. RestorePhaseInProgress RestorePhase = "InProgress" // RestorePhaseCompleted means the restore has run successfully // without errors. RestorePhaseCompleted RestorePhase = "Completed" // RestorePhasePartiallyFailed means the restore has run to completion // but encountered 1+ errors restoring individual items. RestorePhasePartiallyFailed RestorePhase = "PartiallyFailed" // RestorePhaseFailed means the restore was unable to execute. // The failing error is recorded in status.FailureReason. RestorePhaseFailed RestorePhase = "Failed" )
type RestoreSpec ¶
type RestoreSpec struct {
// BackupName is the unique name of the Velero backup to restore
// from.
BackupName string `json:"backupName"`
// ScheduleName is the unique name of the Velero schedule to restore
// from. If specified, and BackupName is empty, Velero will restore
// from the most recent successful backup created from this schedule.
// +optional
ScheduleName string `json:"scheduleName,omitempty"`
// IncludedNamespaces is a slice of namespace names to include objects
// from. If empty, all namespaces are included.
// +optional
// +nullable
IncludedNamespaces []string `json:"includedNamespaces,omitempty"`
// ExcludedNamespaces contains a list of namespaces that are not
// included in the restore.
// +optional
// +nullable
ExcludedNamespaces []string `json:"excludedNamespaces,omitempty"`
// IncludedResources is a slice of resource names to include
// in the restore. If empty, all resources in the backup are included.
// +optional
// +nullable
IncludedResources []string `json:"includedResources,omitempty"`
// ExcludedResources is a slice of resource names that are not
// included in the restore.
// +optional
// +nullable
ExcludedResources []string `json:"excludedResources,omitempty"`
// NamespaceMapping is a map of source namespace names
// to target namespace names to restore into. Any source
// namespaces not included in the map will be restored into
// namespaces of the same name.
// +optional
NamespaceMapping map[string]string `json:"namespaceMapping,omitempty"`
// LabelSelector is a metav1.LabelSelector to filter with
// when restoring individual objects from the backup. If empty
// or nil, all objects are included. Optional.
// +optional
// +nullable
LabelSelector *metav1.LabelSelector `json:"labelSelector,omitempty"`
// RestorePVs specifies whether to restore all included
// PVs from snapshot (via the cloudprovider).
// +optional
// +nullable
RestorePVs *bool `json:"restorePVs,omitempty"`
// IncludeClusterResources specifies whether cluster-scoped resources
// should be included for consideration in the restore. If null, defaults
// to true.
// +optional
// +nullable
IncludeClusterResources *bool `json:"includeClusterResources,omitempty"`
}
RestoreSpec defines the specification for a Velero restore.
func (*RestoreSpec) DeepCopy ¶
func (in *RestoreSpec) DeepCopy() *RestoreSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreSpec.
func (*RestoreSpec) DeepCopyInto ¶
func (in *RestoreSpec) DeepCopyInto(out *RestoreSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RestoreStatus ¶
type RestoreStatus struct {
// Phase is the current state of the Restore
// +optional
Phase RestorePhase `json:"phase,omitempty"`
// ValidationErrors is a slice of all validation errors (if
// applicable)
// +optional
// +nullable
ValidationErrors []string `json:"validationErrors,omitempty"`
// Warnings is a count of all warning messages that were generated during
// execution of the restore. The actual warnings are stored in object storage.
// +optional
Warnings int `json:"warnings,omitempty"`
// Errors is a count of all error messages that were generated during
// execution of the restore. The actual errors are stored in object storage.
// +optional
Errors int `json:"errors,omitempty"`
// FailureReason is an error that caused the entire restore to fail.
// +optional
FailureReason string `json:"failureReason,omitempty"`
}
RestoreStatus captures the current status of a Velero restore
func (*RestoreStatus) DeepCopy ¶
func (in *RestoreStatus) DeepCopy() *RestoreStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreStatus.
func (*RestoreStatus) DeepCopyInto ¶
func (in *RestoreStatus) DeepCopyInto(out *RestoreStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Schedule ¶
type Schedule struct {
metav1.TypeMeta `json:",inline"`
// +optional
metav1.ObjectMeta `json:"metadata"`
// +optional
Spec ScheduleSpec `json:"spec,omitempty"`
// +optional
Status ScheduleStatus `json:"status,omitempty"`
}
Schedule is a Velero resource that represents a pre-scheduled or periodic Backup that should be run.
func (*Schedule) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Schedule.
func (*Schedule) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Schedule) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ScheduleList ¶
type ScheduleList struct {
metav1.TypeMeta `json:",inline"`
// +optional
metav1.ListMeta `json:"metadata,omitempty"`
Items []Schedule `json:"items"`
}
ScheduleList is a list of Schedules.
func (*ScheduleList) DeepCopy ¶
func (in *ScheduleList) DeepCopy() *ScheduleList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleList.
func (*ScheduleList) DeepCopyInto ¶
func (in *ScheduleList) DeepCopyInto(out *ScheduleList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ScheduleList) DeepCopyObject ¶
func (in *ScheduleList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SchedulePhase ¶
type SchedulePhase string
SchedulePhase is a string representation of the lifecycle phase of a Velero schedule +kubebuilder:validation:Enum=New;Enabled;FailedValidation
const ( // SchedulePhaseNew means the schedule has been created but not // yet processed by the ScheduleController SchedulePhaseNew SchedulePhase = "New" // SchedulePhaseEnabled means the schedule has been validated and // will now be triggering backups according to the schedule spec. SchedulePhaseEnabled SchedulePhase = "Enabled" // SchedulePhaseFailedValidation means the schedule has failed // the controller's validations and therefore will not trigger backups. SchedulePhaseFailedValidation SchedulePhase = "FailedValidation" )
type ScheduleSpec ¶
type ScheduleSpec struct {
// Template is the definition of the Backup to be run
// on the provided schedule
Template BackupSpec `json:"template"`
// Schedule is a Cron expression defining when to run
// the Backup.
Schedule string `json:"schedule"`
}
ScheduleSpec defines the specification for a Velero schedule
func (*ScheduleSpec) DeepCopy ¶
func (in *ScheduleSpec) DeepCopy() *ScheduleSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleSpec.
func (*ScheduleSpec) DeepCopyInto ¶
func (in *ScheduleSpec) DeepCopyInto(out *ScheduleSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScheduleStatus ¶
type ScheduleStatus struct {
// Phase is the current phase of the Schedule
// +optional
Phase SchedulePhase `json:"phase,omitempty"`
// LastBackup is the last time a Backup was run for this
// Schedule schedule
// +optional
// +nullable
LastBackup *metav1.Time `json:"lastBackup,omitempty"`
// ValidationErrors is a slice of all validation errors (if
// applicable)
// +optional
ValidationErrors []string `json:"validationErrors,omitempty"`
}
ScheduleStatus captures the current state of a Velero schedule
func (*ScheduleStatus) DeepCopy ¶
func (in *ScheduleStatus) DeepCopy() *ScheduleStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleStatus.
func (*ScheduleStatus) DeepCopyInto ¶
func (in *ScheduleStatus) DeepCopyInto(out *ScheduleStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServerStatusRequest ¶
type ServerStatusRequest struct {
metav1.TypeMeta `json:",inline"`
// +optional
metav1.ObjectMeta `json:"metadata,omitempty"`
// +optional
Spec ServerStatusRequestSpec `json:"spec,omitempty"`
// +optional
Status ServerStatusRequestStatus `json:"status,omitempty"`
}
ServerStatusRequest is a request to access current status information about the Velero server.
func (*ServerStatusRequest) DeepCopy ¶
func (in *ServerStatusRequest) DeepCopy() *ServerStatusRequest
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerStatusRequest.
func (*ServerStatusRequest) DeepCopyInto ¶
func (in *ServerStatusRequest) DeepCopyInto(out *ServerStatusRequest)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServerStatusRequest) DeepCopyObject ¶
func (in *ServerStatusRequest) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ServerStatusRequestList ¶
type ServerStatusRequestList struct {
metav1.TypeMeta `json:",inline"`
// +optional
metav1.ListMeta `json:"metadata,omitempty"`
Items []ServerStatusRequest `json:"items"`
}
ServerStatusRequestList is a list of ServerStatusRequests.
func (*ServerStatusRequestList) DeepCopy ¶
func (in *ServerStatusRequestList) DeepCopy() *ServerStatusRequestList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerStatusRequestList.
func (*ServerStatusRequestList) DeepCopyInto ¶
func (in *ServerStatusRequestList) DeepCopyInto(out *ServerStatusRequestList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServerStatusRequestList) DeepCopyObject ¶
func (in *ServerStatusRequestList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ServerStatusRequestPhase ¶
type ServerStatusRequestPhase string
ServerStatusRequestPhase represents the lifecycle phase of a ServerStatusRequest. +kubebuilder:validation:Enum=New;Processed
const ( // ServerStatusRequestPhaseNew means the ServerStatusRequest has not been processed yet. ServerStatusRequestPhaseNew ServerStatusRequestPhase = "New" // ServerStatusRequestPhaseProcessed means the ServerStatusRequest has been processed. ServerStatusRequestPhaseProcessed ServerStatusRequestPhase = "Processed" )
type ServerStatusRequestSpec ¶
type ServerStatusRequestSpec struct {
}
ServerStatusRequestSpec is the specification for a ServerStatusRequest.
func (*ServerStatusRequestSpec) DeepCopy ¶
func (in *ServerStatusRequestSpec) DeepCopy() *ServerStatusRequestSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerStatusRequestSpec.
func (*ServerStatusRequestSpec) DeepCopyInto ¶
func (in *ServerStatusRequestSpec) DeepCopyInto(out *ServerStatusRequestSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServerStatusRequestStatus ¶
type ServerStatusRequestStatus struct {
// Phase is the current lifecycle phase of the ServerStatusRequest.
// +optional
Phase ServerStatusRequestPhase `json:"phase,omitempty"`
// ProcessedTimestamp is when the ServerStatusRequest was processed
// by the ServerStatusRequestController.
// +optional
// +nullable
ProcessedTimestamp *metav1.Time `json:"processedTimestamp,omitempty"`
// ServerVersion is the Velero server version.
// +optional
ServerVersion string `json:"serverVersion,omitempty"`
// Plugins list information about the plugins running on the Velero server
// +optional
// +nullable
Plugins []PluginInfo `json:"plugins,omitempty"`
}
ServerStatusRequestStatus is the current status of a ServerStatusRequest.
func (*ServerStatusRequestStatus) DeepCopy ¶
func (in *ServerStatusRequestStatus) DeepCopy() *ServerStatusRequestStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerStatusRequestStatus.
func (*ServerStatusRequestStatus) DeepCopyInto ¶
func (in *ServerStatusRequestStatus) DeepCopyInto(out *ServerStatusRequestStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StorageType ¶
type StorageType struct {
ObjectStorage *ObjectStorageLocation `json:"objectStorage"`
}
StorageType represents the type of storage that a backup location uses. ObjectStorage must be non-nil, since it is currently the only supported StorageType.
func (*StorageType) DeepCopy ¶
func (in *StorageType) DeepCopy() *StorageType
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageType.
func (*StorageType) DeepCopyInto ¶
func (in *StorageType) DeepCopyInto(out *StorageType)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumeSnapshotLocation ¶
type VolumeSnapshotLocation struct {
metav1.TypeMeta `json:",inline"`
// +optional
metav1.ObjectMeta `json:"metadata,omitempty"`
// +optional
Spec VolumeSnapshotLocationSpec `json:"spec,omitempty"`
// +optional
Status VolumeSnapshotLocationStatus `json:"status,omitempty"`
}
VolumeSnapshotLocation is a location where Velero stores volume snapshots.
func (*VolumeSnapshotLocation) DeepCopy ¶
func (in *VolumeSnapshotLocation) DeepCopy() *VolumeSnapshotLocation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeSnapshotLocation.
func (*VolumeSnapshotLocation) DeepCopyInto ¶
func (in *VolumeSnapshotLocation) DeepCopyInto(out *VolumeSnapshotLocation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VolumeSnapshotLocation) DeepCopyObject ¶
func (in *VolumeSnapshotLocation) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type VolumeSnapshotLocationList ¶
type VolumeSnapshotLocationList struct {
metav1.TypeMeta `json:",inline"`
// +optional
metav1.ListMeta `json:"metadata,omitempty"`
Items []VolumeSnapshotLocation `json:"items"`
}
VolumeSnapshotLocationList is a list of VolumeSnapshotLocations.
func (*VolumeSnapshotLocationList) DeepCopy ¶
func (in *VolumeSnapshotLocationList) DeepCopy() *VolumeSnapshotLocationList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeSnapshotLocationList.
func (*VolumeSnapshotLocationList) DeepCopyInto ¶
func (in *VolumeSnapshotLocationList) DeepCopyInto(out *VolumeSnapshotLocationList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VolumeSnapshotLocationList) DeepCopyObject ¶
func (in *VolumeSnapshotLocationList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type VolumeSnapshotLocationPhase ¶
type VolumeSnapshotLocationPhase string
VolumeSnapshotLocationPhase is the lifecyle phase of a Velero VolumeSnapshotLocation. +kubebuilder:validation:Enum=Available;Unavailable
const ( // VolumeSnapshotLocationPhaseAvailable means the location is available to read and write from. VolumeSnapshotLocationPhaseAvailable VolumeSnapshotLocationPhase = "Available" VolumeSnapshotLocationPhaseUnavailable VolumeSnapshotLocationPhase = "Unavailable" )
type VolumeSnapshotLocationSpec ¶
type VolumeSnapshotLocationSpec struct {
// Provider is the provider of the volume storage.
Provider string `json:"provider"`
// Config is for provider-specific configuration fields.
// +optional
Config map[string]string `json:"config,omitempty"`
}
VolumeSnapshotLocationSpec defines the specification for a Velero VolumeSnapshotLocation.
func (*VolumeSnapshotLocationSpec) DeepCopy ¶
func (in *VolumeSnapshotLocationSpec) DeepCopy() *VolumeSnapshotLocationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeSnapshotLocationSpec.
func (*VolumeSnapshotLocationSpec) DeepCopyInto ¶
func (in *VolumeSnapshotLocationSpec) DeepCopyInto(out *VolumeSnapshotLocationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumeSnapshotLocationStatus ¶
type VolumeSnapshotLocationStatus struct {
// +optional
Phase VolumeSnapshotLocationPhase `json:"phase,omitempty"`
}
VolumeSnapshotLocationStatus describes the current status of a Velero VolumeSnapshotLocation.
func (*VolumeSnapshotLocationStatus) DeepCopy ¶
func (in *VolumeSnapshotLocationStatus) DeepCopy() *VolumeSnapshotLocationStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeSnapshotLocationStatus.
func (*VolumeSnapshotLocationStatus) DeepCopyInto ¶
func (in *VolumeSnapshotLocationStatus) DeepCopyInto(out *VolumeSnapshotLocationStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
Source Files
¶
- backup.go
- backup_storage_location.go
- constants.go
- delete_backup_request.go
- doc.go
- download_request.go
- labels_annotations.go
- pod_volume_backup.go
- pod_volume_operation_progress.go
- pod_volume_restore.go
- register.go
- restic_repository.go
- restore.go
- schedule.go
- server_status_request.go
- volume_snapshot_location.go
- zz_generated.deepcopy.go