Documentation ¶
Overview ¶
Package v1 is the v1 version of the API. +groupName=velero.io
Package v1 contains API Schema definitions for the velero v1 API group +kubebuilder:object:generate=true +groupName=velero.io
Index ¶
- Constants
- Variables
- func CustomResourceKinds() sets.String
- func CustomResources() map[string]typeInfo
- func Resource(resource string) schema.GroupResource
- type AsyncOperationIDPrefix
- type Backup
- type BackupHooks
- type BackupList
- type BackupPhase
- type BackupProgress
- type BackupRepository
- type BackupRepositoryList
- type BackupRepositoryPhase
- type BackupRepositorySpec
- type BackupRepositoryStatus
- 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 ExecRestoreHook
- type HookErrorMode
- type InitRestoreHook
- type Metadata
- type ObjectStorageLocation
- type PluginInfo
- type PodVolumeBackup
- type PodVolumeBackupList
- type PodVolumeBackupPhase
- type PodVolumeBackupSpec
- type PodVolumeBackupStatus
- type PodVolumeRestore
- type PodVolumeRestoreList
- type PodVolumeRestorePhase
- type PodVolumeRestoreSpec
- type PodVolumeRestoreStatus
- type PolicyType
- type Restore
- type RestoreHooks
- type RestoreList
- type RestorePhase
- type RestoreProgress
- type RestoreResourceHook
- type RestoreResourceHookSpec
- type RestoreSpec
- type RestoreStatus
- type RestoreStatusSpec
- type Schedule
- type ScheduleList
- type SchedulePhase
- type ScheduleSpec
- type ScheduleStatus
- type ServerStatusRequest
- type ServerStatusRequestList
- type ServerStatusRequestPhase
- type ServerStatusRequestSpec
- type ServerStatusRequestStatus
- type StorageType
- type VeleroResourceUsage
- type VolumeSnapshotLocation
- type VolumeSnapshotLocationList
- type VolumeSnapshotLocationPhase
- type VolumeSnapshotLocationSpec
- type VolumeSnapshotLocationStatus
Constants ¶
const ( BackupRepositoryPhaseNew BackupRepositoryPhase = "New" BackupRepositoryPhaseReady BackupRepositoryPhase = "Ready" BackupRepositoryPhaseNotReady BackupRepositoryPhase = "NotReady" BackupRepositoryTypeRestic string = "restic" BackupRepositoryTypeKopia string = "kopia" )
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" // CSIFeatureFlag is the feature flag string that defines whether or not CSI features are being used. CSIFeatureFlag = "EnableCSI" // PreferredVersionDir is the suffix name of the directory containing the preferred version of the API group // resource within a Velero backup. PreferredVersionDir = "-preferredversion" // APIGroupVersionsFeatureFlag is the feature flag string that defines whether or not to handle multiple API Group Versions APIGroupVersionsFeatureFlag = "EnableAPIGroupVersions" )
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. // pod volume 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" // VolumeNamespaceLabel is the label key used to identify which // namespace a repository stores backups for. VolumeNamespaceLabel = "velero.io/volume-namespace" // RepositoryTypeLabel is the label key used to identify the type of a repository RepositoryTypeLabel = "velero.io/repository-type" // DataUploadLabel is the label key used to identify the dataupload for snapshot backup pod DataUploadLabel = "velero.io/data-upload" // DataUploadSnapshotInfoLabel is used to identify the configmap that contains the snapshot info of a data upload // normally the value of the label should the "true" or "false" DataUploadSnapshotInfoLabel = "velero.io/data-upload-snapshot-info" // DataDownloadLabel is the label key used to identify the datadownload for snapshot restore pod DataDownloadLabel = "velero.io/data-download" // SourceClusterK8sVersionAnnotation is the label key used to identify the k8s // git version of the backup , i.e. v1.16.4 SourceClusterK8sGitVersionAnnotation = "velero.io/source-cluster-k8s-gitversion" // SourceClusterK8sMajorVersionAnnotation is the label key used to identify the k8s // major version of the backup , i.e. 1 SourceClusterK8sMajorVersionAnnotation = "velero.io/source-cluster-k8s-major-version" // SourceClusterK8sMajorVersionAnnotation is the label key used to identify the k8s // minor version of the backup , i.e. 16 SourceClusterK8sMinorVersionAnnotation = "velero.io/source-cluster-k8s-minor-version" // ResourceTimeoutAnnotation is the annotation key used to carry the global resource // timeout value for backup to plugins. ResourceTimeoutAnnotation = "velero.io/resource-timeout" // AsyncOperationIDLabel is the label key used to identify the async operation ID AsyncOperationIDLabel = "velero.io/async-operation-id" // PVCNameLabel is the label key used to identify the the PVC's namespace and name. // The format is <namespace>/<name>. PVCNamespaceNameLabel = "velero.io/pvc-namespace-name" // ResourceUsageLabel is the label key to explain the Velero resource usage. ResourceUsageLabel = "velero.io/resource-usage" )
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" // RestorePhaseWaitingForPluginOperations means the restore of // Kubernetes resources and other async plugin operations was // successful and plugin operations are still ongoing. The // restore is not complete yet. RestorePhaseWaitingForPluginOperations RestorePhase = "WaitingForPluginOperations" // RestorePhaseWaitingForPluginOperationsPartiallyFailed means // the restore of Kubernetes resources and other async plugin // operations partially failed (final phase will be // PartiallyFailed) and other plugin operations are still // ongoing. The restore is not complete yet. RestorePhaseWaitingForPluginOperationsPartiallyFailed RestorePhase = "WaitingForPluginOperationsPartiallyFailed" // 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" // PolicyTypeNone means velero will not overwrite the resource // in cluster with the one in backup whether changed/unchanged. PolicyTypeNone PolicyType = "none" // PolicyTypeUpdate means velero will try to attempt a patch on // the changed resources. PolicyTypeUpdate PolicyType = "update" )
Variables ¶
var ( // SchemeGroupVersion is group version used to register these objects SchemeGroupVersion = schema.GroupVersion{Group: "velero.io", Version: "v1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
func CustomResourceKinds ¶ added in v1.12.0
CustomResourceKinds returns a list of all custom resources kinds within the Velero
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 AsyncOperationIDPrefix ¶ added in v1.12.0
type AsyncOperationIDPrefix string
const ( AsyncOperationIDPrefixDataDownload AsyncOperationIDPrefix = "dd-" AsyncOperationIDPrefixDataUpload AsyncOperationIDPrefix = "du-" )
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 represents 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;WaitingForPluginOperations;WaitingForPluginOperationsPartiallyFailed;Finalizing;FinalizingPartiallyFailed;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" // BackupPhaseWaitingForPluginOperations means the backup of // Kubernetes resources, creation of snapshots, and other // async plugin operations was successful and snapshot data is // currently uploading or other plugin operations are still // ongoing. The backup is not usable yet. BackupPhaseWaitingForPluginOperations BackupPhase = "WaitingForPluginOperations" // BackupPhaseWaitingForPluginOperationsPartiallyFailed means // the backup of Kubernetes resources, creation of snapshots, // and other async plugin operations partially failed (final // phase will be PartiallyFailed) and snapshot data is // currently uploading or other plugin operations are still // ongoing. The backup is not usable yet. BackupPhaseWaitingForPluginOperationsPartiallyFailed BackupPhase = "WaitingForPluginOperationsPartiallyFailed" // BackupPhaseFinalizing means the backup of // Kubernetes resources, creation of snapshots, and other // async plugin operations were successful and snapshot upload and // other plugin operations are now complete, but the Backup is awaiting // final update of resources modified during async operations. // The backup is not usable yet. BackupPhaseFinalizing BackupPhase = "Finalizing" // BackupPhaseFinalizingPartiallyFailed means the backup of // Kubernetes resources, creation of snapshots, and other // async plugin operations were successful and snapshot upload and // other plugin operations are now complete, but one or more errors // occurred during backup or async operation processing, and the // Backup is awaiting final update of resources modified during async // operations. The backup is not usable yet. BackupPhaseFinalizingPartiallyFailed BackupPhase = "FinalizingPartiallyFailed" // 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 BackupProgress ¶ added in v1.4.0
type BackupProgress struct { // TotalItems is the total number of items to be backed up. This number may change // throughout the execution of the backup due to plugins that return additional related // items to back up, the velero.io/exclude-from-backup label, and various other // filters that happen as items are processed. // +optional TotalItems int `json:"totalItems,omitempty"` // ItemsBackedUp is the number of items that have actually been written to the // backup tarball so far. // +optional ItemsBackedUp int `json:"itemsBackedUp,omitempty"` }
BackupProgress stores information about the progress of a Backup's execution.
func (*BackupProgress) DeepCopy ¶ added in v1.4.0
func (in *BackupProgress) DeepCopy() *BackupProgress
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupProgress.
func (*BackupProgress) DeepCopyInto ¶ added in v1.4.0
func (in *BackupProgress) DeepCopyInto(out *BackupProgress)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupRepository ¶ added in v1.10.0
type BackupRepository struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ObjectMeta `json:"metadata,omitempty"` // +optional Spec BackupRepositorySpec `json:"spec,omitempty"` // +optional Status BackupRepositoryStatus `json:"status,omitempty"` }
func (*BackupRepository) DeepCopy ¶ added in v1.10.0
func (in *BackupRepository) DeepCopy() *BackupRepository
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupRepository.
func (*BackupRepository) DeepCopyInto ¶ added in v1.10.0
func (in *BackupRepository) DeepCopyInto(out *BackupRepository)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BackupRepository) DeepCopyObject ¶ added in v1.10.0
func (in *BackupRepository) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BackupRepositoryList ¶ added in v1.10.0
type BackupRepositoryList struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ListMeta `json:"metadata,omitempty"` Items []BackupRepository `json:"items"` }
BackupRepositoryList is a list of BackupRepositories.
func (*BackupRepositoryList) DeepCopy ¶ added in v1.10.0
func (in *BackupRepositoryList) DeepCopy() *BackupRepositoryList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupRepositoryList.
func (*BackupRepositoryList) DeepCopyInto ¶ added in v1.10.0
func (in *BackupRepositoryList) DeepCopyInto(out *BackupRepositoryList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BackupRepositoryList) DeepCopyObject ¶ added in v1.10.0
func (in *BackupRepositoryList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BackupRepositoryPhase ¶ added in v1.10.0
type BackupRepositoryPhase string
BackupRepositoryPhase represents the lifecycle phase of a BackupRepository. +kubebuilder:validation:Enum=New;Ready;NotReady
type BackupRepositorySpec ¶ added in v1.10.0
type BackupRepositorySpec struct { // VolumeNamespace is the namespace this backup 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"` // RepositoryType indicates the type of the backend repository // +kubebuilder:validation:Enum=kopia;restic;"" // +optional RepositoryType string `json:"repositoryType"` // 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"` }
BackupRepositorySpec is the specification for a BackupRepository.
func (*BackupRepositorySpec) DeepCopy ¶ added in v1.10.0
func (in *BackupRepositorySpec) DeepCopy() *BackupRepositorySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupRepositorySpec.
func (*BackupRepositorySpec) DeepCopyInto ¶ added in v1.10.0
func (in *BackupRepositorySpec) DeepCopyInto(out *BackupRepositorySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupRepositoryStatus ¶ added in v1.10.0
type BackupRepositoryStatus struct { // Phase is the current state of the BackupRepository. // +optional Phase BackupRepositoryPhase `json:"phase,omitempty"` // Message is a message about the current status of the BackupRepository. // +optional Message string `json:"message,omitempty"` // LastMaintenanceTime is the last time maintenance was run. // +optional // +nullable LastMaintenanceTime *metav1.Time `json:"lastMaintenanceTime,omitempty"` }
BackupRepositoryStatus is the current status of a BackupRepository.
func (*BackupRepositoryStatus) DeepCopy ¶ added in v1.10.0
func (in *BackupRepositoryStatus) DeepCopy() *BackupRepositoryStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupRepositoryStatus.
func (*BackupRepositoryStatus) DeepCopyInto ¶ added in v1.10.0
func (in *BackupRepositoryStatus) DeepCopyInto(out *BackupRepositoryStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 { // +optional Metadata `json:"metadata,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 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"` // IncludedClusterScopedResources is a slice of cluster-scoped // resource type names to include in the backup. // If set to "*", all cluster-scoped resource types are included. // The default value is empty, which means only related // cluster-scoped resources are included. // +optional // +nullable IncludedClusterScopedResources []string `json:"includedClusterScopedResources,omitempty"` // ExcludedClusterScopedResources is a slice of cluster-scoped // resource type names to exclude from the backup. // If set to "*", all cluster-scoped resource types are excluded. // The default value is empty. // +optional // +nullable ExcludedClusterScopedResources []string `json:"excludedClusterScopedResources,omitempty"` // IncludedNamespaceScopedResources is a slice of namespace-scoped // resource type names to include in the backup. // The default value is "*". // +optional // +nullable IncludedNamespaceScopedResources []string `json:"includedNamespaceScopedResources,omitempty"` // ExcludedNamespaceScopedResources is a slice of namespace-scoped // resource type names to exclude from the backup. // If set to "*", all namespace-scoped resource types are excluded. // The default value is empty. // +optional // +nullable ExcludedNamespaceScopedResources []string `json:"excludedNamespaceScopedResources,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"` // OrLabelSelectors is list of metav1.LabelSelector to filter with // when adding individual objects to the backup. If multiple provided // they will be joined by the OR operator. LabelSelector as well as // OrLabelSelectors cannot co-exist in backup request, only one of them // can be used. // +optional // +nullable OrLabelSelectors []*metav1.LabelSelector `json:"orLabelSelectors,omitempty"` // SnapshotVolumes specifies whether to take 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"` // DefaultVolumesToRestic specifies whether restic should be used to take a // backup of all pod volumes by default. // // Deprecated: this field is no longer used and will be removed entirely in future. Use DefaultVolumesToFsBackup instead. // +optional // +nullable DefaultVolumesToRestic *bool `json:"defaultVolumesToRestic,omitempty"` // DefaultVolumesToFsBackup specifies whether pod volume file system backup should be used // for all volumes by default. // +optional // +nullable DefaultVolumesToFsBackup *bool `json:"defaultVolumesToFsBackup,omitempty"` // OrderedResources specifies the backup order of resources of specific Kind. // The map key is the resource name and value is a list of object names separated by commas. // Each resource name has format "namespace/objectname". For cluster resources, simply use "objectname". // +optional // +nullable OrderedResources map[string]string `json:"orderedResources,omitempty"` // CSISnapshotTimeout specifies the time used to wait for CSI VolumeSnapshot status turns to // ReadyToUse during creation, before returning error as timeout. // The default value is 10 minute. // +optional CSISnapshotTimeout metav1.Duration `json:"csiSnapshotTimeout,omitempty"` // ItemOperationTimeout specifies the time used to wait for asynchronous BackupItemAction operations // The default value is 1 hour. // +optional ItemOperationTimeout metav1.Duration `json:"itemOperationTimeout,omitempty"` // ResourcePolicy specifies the referenced resource policies that backup should follow // +optional ResourcePolicy *v1.TypedLocalObjectReference `json:"resourcePolicy,omitempty"` // SnapshotMoveData specifies whether snapshot data should be moved // +optional // +nullable SnapshotMoveData *bool `json:"snapshotMoveData,omitempty"` // DataMover specifies the data mover to be used by the backup. // If DataMover is "" or "velero", the built-in data mover will be used. // +optional DataMover string `json:"datamover,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 major version. // Deprecated: Please see FormatVersion // +optional Version int `json:"version,omitempty"` // FormatVersion is the backup format version, including major, minor, and patch version. // +optional FormatVersion string `json:"formatVersion,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"` // FailureReason is an error that caused the entire backup to fail. // +optional FailureReason string `json:"failureReason,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"` // Progress contains information about the backup's execution progress. Note // that this information is best-effort only -- if Velero fails to update it // during a backup for any reason, it may be inaccurate/stale. // +optional // +nullable Progress *BackupProgress `json:"progress,omitempty"` // CSIVolumeSnapshotsAttempted is the total number of attempted // CSI VolumeSnapshots for this backup. // +optional CSIVolumeSnapshotsAttempted int `json:"csiVolumeSnapshotsAttempted,omitempty"` // CSIVolumeSnapshotsCompleted is the total number of successfully // completed CSI VolumeSnapshots for this backup. // +optional CSIVolumeSnapshotsCompleted int `json:"csiVolumeSnapshotsCompleted,omitempty"` // BackupItemOperationsAttempted is the total number of attempted // async BackupItemAction operations for this backup. // +optional BackupItemOperationsAttempted int `json:"backupItemOperationsAttempted,omitempty"` // BackupItemOperationsCompleted is the total number of successfully completed // async BackupItemAction operations for this backup. // +optional BackupItemOperationsCompleted int `json:"backupItemOperationsCompleted,omitempty"` // BackupItemOperationsFailed is the total number of async // BackupItemAction operations for this backup which ended with an error. // +optional BackupItemOperationsFailed int `json:"backupItemOperationsFailed,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"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec BackupStorageLocationSpec `json:"spec,omitempty"` 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"` metav1.ListMeta `json:"metadata,omitempty"` Items []BackupStorageLocation `json:"items"` }
BackupStorageLocationList contains a list of BackupStorageLocation
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 lifecycle phase of a Velero BackupStorageLocation. +kubebuilder:validation:Enum=Available;Unavailable +kubebuilder:default=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"` // Credential contains the credential information intended to be used with this location // +optional Credential *corev1api.SecretKeySelector `json:"credential,omitempty"` StorageType `json:",inline"` // Default indicates this location is the default backup storage location. // +optional Default bool `json:"default,omitempty"` // 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"` // ValidationFrequency defines how frequently to validate the corresponding object storage. A value of 0 disables validation. // +optional // +nullable ValidationFrequency *metav1.Duration `json:"validationFrequency,omitempty"` }
BackupStorageLocationSpec defines the desired state of 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"` // LastValidationTime is the last time the backup store location was validated // the cluster. // +optional // +nullable LastValidationTime *metav1.Time `json:"lastValidationTime,omitempty"` // Message is a message about the backup storage location's status. // +optional Message string `json:"message,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 defines the observed state of 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;BackupItemOperations;BackupResourceList;BackupResults;RestoreLog;RestoreResults;RestoreResourceList;RestoreItemOperations;CSIBackupVolumeSnapshots;CSIBackupVolumeSnapshotContents
const ( DownloadTargetKindBackupLog DownloadTargetKind = "BackupLog" DownloadTargetKindBackupContents DownloadTargetKind = "BackupContents" DownloadTargetKindBackupVolumeSnapshots DownloadTargetKind = "BackupVolumeSnapshots" DownloadTargetKindBackupItemOperations DownloadTargetKind = "BackupItemOperations" DownloadTargetKindBackupResourceList DownloadTargetKind = "BackupResourceList" DownloadTargetKindBackupResults DownloadTargetKind = "BackupResults" DownloadTargetKindRestoreLog DownloadTargetKind = "RestoreLog" DownloadTargetKindRestoreResults DownloadTargetKind = "RestoreResults" DownloadTargetKindRestoreResourceList DownloadTargetKind = "RestoreResourceList" DownloadTargetKindRestoreItemOperations DownloadTargetKind = "RestoreItemOperations" DownloadTargetKindCSIBackupVolumeSnapshots DownloadTargetKind = "CSIBackupVolumeSnapshots" DownloadTargetKindCSIBackupVolumeSnapshotContents DownloadTargetKind = "CSIBackupVolumeSnapshotContents" )
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 ExecRestoreHook ¶ added in v1.5.0
type ExecRestoreHook 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 from within a container after a pod has been restored. // +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"` // ExecTimeout defines the maximum amount of time Velero should wait for the hook to complete before // considering the execution a failure. // +optional ExecTimeout metav1.Duration `json:"execTimeout,omitempty"` // WaitTimeout defines the maximum amount of time Velero should wait for the container to be Ready // before attempting to run the command. // +optional WaitTimeout metav1.Duration `json:"waitTimeout,omitempty"` }
ExecRestoreHook is a hook that uses pod exec API to execute a command inside a container in a pod
func (*ExecRestoreHook) DeepCopy ¶ added in v1.5.0
func (in *ExecRestoreHook) DeepCopy() *ExecRestoreHook
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExecRestoreHook.
func (*ExecRestoreHook) DeepCopyInto ¶ added in v1.5.0
func (in *ExecRestoreHook) DeepCopyInto(out *ExecRestoreHook)
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 InitRestoreHook ¶ added in v1.5.0
type InitRestoreHook struct { // +kubebuilder:pruning:PreserveUnknownFields // InitContainers is list of init containers to be added to a pod during its restore. // +optional InitContainers []runtime.RawExtension `json:"initContainers"` // Timeout defines the maximum amount of time Velero should wait for the initContainers to complete. // +optional Timeout metav1.Duration `json:"timeout,omitempty"` }
InitRestoreHook is a hook that adds an init container to a PodSpec to run commands before the workload pod is able to start.
func (*InitRestoreHook) DeepCopy ¶ added in v1.5.0
func (in *InitRestoreHook) DeepCopy() *InitRestoreHook
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InitRestoreHook.
func (*InitRestoreHook) DeepCopyInto ¶ added in v1.5.0
func (in *InitRestoreHook) DeepCopyInto(out *InitRestoreHook)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Metadata ¶ added in v1.7.0
func (*Metadata) DeepCopy ¶ added in v1.7.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Metadata.
func (*Metadata) DeepCopyInto ¶ added in v1.7.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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"` // CACert defines a CA bundle to use when verifying TLS connections to the provider. // +optional CACert []byte `json:"caCert,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.0.1
PluginInfo contains attributes of a Velero plugin
func (*PluginInfo) DeepCopy ¶ added in v1.0.1
func (in *PluginInfo) DeepCopy() *PluginInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PluginInfo.
func (*PluginInfo) DeepCopyInto ¶ added in v1.0.1
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 backup repository is stored. BackupStorageLocation string `json:"backupStorageLocation"` // RepoIdentifier is the backup repository identifier. RepoIdentifier string `json:"repoIdentifier"` // UploaderType is the type of the uploader to handle the data transfer. // +kubebuilder:validation:Enum=kopia;restic;"" // +optional UploaderType string `json:"uploaderType"` // 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 shared.DataMoveOperationProgress `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 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 backup repository is stored. BackupStorageLocation string `json:"backupStorageLocation"` // RepoIdentifier is the backup repository identifier. RepoIdentifier string `json:"repoIdentifier"` // UploaderType is the type of the uploader to handle the data transfer. // +kubebuilder:validation:Enum=kopia;restic;"" // +optional UploaderType string `json:"uploaderType"` // SnapshotID is the ID of the volume snapshot to be restored. SnapshotID string `json:"snapshotID"` // SourceNamespace is the original namespace for namaspace mapping. SourceNamespace string `json:"sourceNamespace"` }
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 shared.DataMoveOperationProgress `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 PolicyType ¶ added in v1.9.0
type PolicyType string
PolicyType helps specify the ExistingResourcePolicy
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 RestoreHooks ¶ added in v1.5.0
type RestoreHooks struct {
Resources []RestoreResourceHookSpec `json:"resources,omitempty"`
}
RestoreHooks contains custom behaviors that should be executed during or post restore.
func (*RestoreHooks) DeepCopy ¶ added in v1.5.0
func (in *RestoreHooks) DeepCopy() *RestoreHooks
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreHooks.
func (*RestoreHooks) DeepCopyInto ¶ added in v1.5.0
func (in *RestoreHooks) DeepCopyInto(out *RestoreHooks)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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;WaitingForPluginOperations;WaitingForPluginOperationsPartiallyFailed;Completed;PartiallyFailed;Failed
type RestoreProgress ¶ added in v1.6.0
type RestoreProgress struct { // TotalItems is the total number of items to be restored. This number may change // throughout the execution of the restore due to plugins that return additional related // items to restore // +optional TotalItems int `json:"totalItems,omitempty"` // ItemsRestored is the number of items that have actually been restored so far // +optional ItemsRestored int `json:"itemsRestored,omitempty"` }
RestoreProgress stores information about the restore's execution progress
func (*RestoreProgress) DeepCopy ¶ added in v1.6.0
func (in *RestoreProgress) DeepCopy() *RestoreProgress
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreProgress.
func (*RestoreProgress) DeepCopyInto ¶ added in v1.6.0
func (in *RestoreProgress) DeepCopyInto(out *RestoreProgress)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RestoreResourceHook ¶ added in v1.5.0
type RestoreResourceHook struct { // Exec defines an exec restore hook. Exec *ExecRestoreHook `json:"exec,omitempty"` // Init defines an init restore hook. Init *InitRestoreHook `json:"init,omitempty"` }
RestoreResourceHook defines a restore hook for a resource.
func (*RestoreResourceHook) DeepCopy ¶ added in v1.5.0
func (in *RestoreResourceHook) DeepCopy() *RestoreResourceHook
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreResourceHook.
func (*RestoreResourceHook) DeepCopyInto ¶ added in v1.5.0
func (in *RestoreResourceHook) DeepCopyInto(out *RestoreResourceHook)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RestoreResourceHookSpec ¶ added in v1.5.0
type RestoreResourceHookSpec 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"` // PostHooks is a list of RestoreResourceHooks to execute during and after restoring a resource. // +optional PostHooks []RestoreResourceHook `json:"postHooks,omitempty"` }
RestoreResourceHookSpec defines one or more RestoreResrouceHooks that should be executed based on the rules defined for namespaces, resources, and label selector.
func (*RestoreResourceHookSpec) DeepCopy ¶ added in v1.5.0
func (in *RestoreResourceHookSpec) DeepCopy() *RestoreResourceHookSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreResourceHookSpec.
func (*RestoreResourceHookSpec) DeepCopyInto ¶ added in v1.5.0
func (in *RestoreResourceHookSpec) DeepCopyInto(out *RestoreResourceHookSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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"` // OrLabelSelectors is list of metav1.LabelSelector to filter with // when restoring individual objects from the backup. If multiple provided // they will be joined by the OR operator. LabelSelector as well as // OrLabelSelectors cannot co-exist in restore request, only one of them // can be used // +optional // +nullable OrLabelSelectors []*metav1.LabelSelector `json:"orLabelSelectors,omitempty"` // RestorePVs specifies whether to restore all included // PVs from snapshot // +optional // +nullable RestorePVs *bool `json:"restorePVs,omitempty"` // RestoreStatus specifies which resources we should restore the status // field. If nil, no objects are included. Optional. // +optional // +nullable RestoreStatus *RestoreStatusSpec `json:"restoreStatus,omitempty"` // PreserveNodePorts specifies whether to restore old nodePorts from backup. // +optional // +nullable PreserveNodePorts *bool `json:"preserveNodePorts,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"` // Hooks represent custom behaviors that should be executed during or post restore. // +optional Hooks RestoreHooks `json:"hooks,omitempty"` // ExistingResourcePolicy specifies the restore behavior for the Kubernetes resource to be restored // +optional // +nullable ExistingResourcePolicy PolicyType `json:"existingResourcePolicy,omitempty"` // ItemOperationTimeout specifies the time used to wait for RestoreItemAction operations // The default value is 1 hour. // +optional ItemOperationTimeout metav1.Duration `json:"itemOperationTimeout,omitempty"` // ResourceModifier specifies the reference to JSON resource patches that should be applied to resources before restoration. // +optional // +nullable ResourceModifier *v1.TypedLocalObjectReference `json:"resourceModifier,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"` // StartTimestamp records the time the restore operation was started. // The server's time is used for StartTimestamps // +optional // +nullable StartTimestamp *metav1.Time `json:"startTimestamp,omitempty"` // CompletionTimestamp records the time the restore operation was completed. // Completion time is recorded even on failed restore. // The server's time is used for StartTimestamps // +optional // +nullable CompletionTimestamp *metav1.Time `json:"completionTimestamp,omitempty"` // Progress contains information about the restore's execution progress. Note // that this information is best-effort only -- if Velero fails to update it // during a restore for any reason, it may be inaccurate/stale. // +optional // +nullable Progress *RestoreProgress `json:"progress,omitempty"` // RestoreItemOperationsAttempted is the total number of attempted // async RestoreItemAction operations for this restore. // +optional RestoreItemOperationsAttempted int `json:"restoreItemOperationsAttempted,omitempty"` // RestoreItemOperationsCompleted is the total number of successfully completed // async RestoreItemAction operations for this restore. // +optional RestoreItemOperationsCompleted int `json:"restoreItemOperationsCompleted,omitempty"` // RestoreItemOperationsFailed is the total number of async // RestoreItemAction operations for this restore which ended with an error. // +optional RestoreItemOperationsFailed int `json:"restoreItemOperationsFailed,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 RestoreStatusSpec ¶ added in v1.9.0
type RestoreStatusSpec struct { // IncludedResources specifies the resources to which will restore the status. // If empty, it applies to all resources. // +optional // +nullable IncludedResources []string `json:"includedResources,omitempty"` // ExcludedResources specifies the resources to which will not restore the status. // +optional // +nullable ExcludedResources []string `json:"excludedResources,omitempty"` }
func (*RestoreStatusSpec) DeepCopy ¶ added in v1.9.0
func (in *RestoreStatusSpec) DeepCopy() *RestoreStatusSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreStatusSpec.
func (*RestoreStatusSpec) DeepCopyInto ¶ added in v1.9.0
func (in *RestoreStatusSpec) DeepCopyInto(out *RestoreStatusSpec)
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"` // UseOwnerReferencesBackup specifies whether to use // OwnerReferences on backups created by this Schedule. // +optional // +nullable UseOwnerReferencesInBackup *bool `json:"useOwnerReferencesInBackup,omitempty"` // Paused specifies whether the schedule is paused or not // +optional Paused bool `json:"paused,omitempty"` }
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 VeleroResourceUsage ¶ added in v1.12.0
type VeleroResourceUsage string
const (
VeleroResourceUsageDataUploadResult VeleroResourceUsage = "DataUpload"
)
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 lifecycle 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"` // Credential contains the credential information intended to be used with this location // +optional Credential *corev1api.SecretKeySelector `json:"credential,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_repository_types.go
- backup_types.go
- backupstoragelocation_types.go
- constants.go
- delete_backup_request_types.go
- doc.go
- download_request_types.go
- groupversion_info.go
- labels_annotations.go
- pod_volume_backup_types.go
- pod_volume_restore_type.go
- register.go
- restore_types.go
- schedule_types.go
- server_status_request_types.go
- volume_snapshot_location_type.go
- zz_generated.deepcopy.go