v2alpha1

package
v1.15.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 28, 2024 License: Apache-2.0 Imports: 5 Imported by: 1

Documentation

Overview

Package v2alpha1 is the v2alpha1 version of the API. +groupName=velero.io

Package v2alpha1 contains API Schema definitions for the velero v2alpha1 API group +kubebuilder:object:generate=true +groupName=velero.io

Index

Constants

This section is empty.

Variables

View Source
var (
	// SchemeGroupVersion is group version used to register these objects
	SchemeGroupVersion = schema.GroupVersion{Group: "velero.io", Version: "v2alpha1"}

	// 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

func CustomResourceKinds() sets.Set[string]

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 CSISnapshotSpec

type CSISnapshotSpec struct {
	// VolumeSnapshot is the name of the volume snapshot to be backed up
	VolumeSnapshot string `json:"volumeSnapshot"`

	// StorageClass is the name of the storage class of the PVC that the volume snapshot is created from
	StorageClass string `json:"storageClass"`

	// SnapshotClass is the name of the snapshot class that the volume snapshot is created with
	// +optional
	SnapshotClass string `json:"snapshotClass"`
}

CSISnapshotSpec is the specification for a CSI snapshot.

func (*CSISnapshotSpec) DeepCopy

func (in *CSISnapshotSpec) DeepCopy() *CSISnapshotSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSISnapshotSpec.

func (*CSISnapshotSpec) DeepCopyInto

func (in *CSISnapshotSpec) DeepCopyInto(out *CSISnapshotSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DataDownload

type DataDownload struct {
	metav1.TypeMeta `json:",inline"`

	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// +optional
	Spec DataDownloadSpec `json:"spec,omitempty"`

	// +optional
	Status DataDownloadStatus `json:"status,omitempty"`
}

DataDownload acts as the protocol between data mover plugins and data mover controller for the datamover restore operation

func (*DataDownload) DeepCopy

func (in *DataDownload) DeepCopy() *DataDownload

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataDownload.

func (*DataDownload) DeepCopyInto

func (in *DataDownload) DeepCopyInto(out *DataDownload)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*DataDownload) DeepCopyObject

func (in *DataDownload) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type DataDownloadList

type DataDownloadList struct {
	metav1.TypeMeta `json:",inline"`

	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []DataDownload `json:"items"`
}

DataDownloadList is a list of DataDownloads.

func (*DataDownloadList) DeepCopy

func (in *DataDownloadList) DeepCopy() *DataDownloadList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataDownloadList.

func (*DataDownloadList) DeepCopyInto

func (in *DataDownloadList) DeepCopyInto(out *DataDownloadList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*DataDownloadList) DeepCopyObject

func (in *DataDownloadList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type DataDownloadPhase

type DataDownloadPhase string

DataDownloadPhase represents the lifecycle phase of a DataDownload. +kubebuilder:validation:Enum=New;Accepted;Prepared;InProgress;Canceling;Canceled;Completed;Failed

const (
	DataDownloadPhaseNew        DataDownloadPhase = "New"
	DataDownloadPhaseAccepted   DataDownloadPhase = "Accepted"
	DataDownloadPhasePrepared   DataDownloadPhase = "Prepared"
	DataDownloadPhaseInProgress DataDownloadPhase = "InProgress"
	DataDownloadPhaseCanceling  DataDownloadPhase = "Canceling"
	DataDownloadPhaseCanceled   DataDownloadPhase = "Canceled"
	DataDownloadPhaseCompleted  DataDownloadPhase = "Completed"
	DataDownloadPhaseFailed     DataDownloadPhase = "Failed"
)

type DataDownloadSpec

type DataDownloadSpec struct {
	// TargetVolume is the information of the target PVC and PV.
	TargetVolume TargetVolumeSpec `json:"targetVolume"`

	// BackupStorageLocation is the name of the backup storage location
	// where the backup repository is stored.
	BackupStorageLocation string `json:"backupStorageLocation"`

	// 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"`

	// SnapshotID is the ID of the Velero backup snapshot to be restored from.
	SnapshotID string `json:"snapshotID"`

	// SourceNamespace is the original namespace where the volume is backed up from.
	// It may be different from SourcePVC's namespace if namespace is remapped during restore.
	SourceNamespace string `json:"sourceNamespace"`

	// DataMoverConfig is for data-mover-specific configuration fields.
	// +optional
	DataMoverConfig map[string]string `json:"dataMoverConfig,omitempty"`

	// Cancel indicates request to cancel the ongoing DataDownload. It can be set
	// when the DataDownload is in InProgress phase
	Cancel bool `json:"cancel,omitempty"`

	// OperationTimeout specifies the time used to wait internal operations,
	// before returning error as timeout.
	OperationTimeout metav1.Duration `json:"operationTimeout"`
}

DataDownloadSpec is the specification for a DataDownload.

func (*DataDownloadSpec) DeepCopy

func (in *DataDownloadSpec) DeepCopy() *DataDownloadSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataDownloadSpec.

func (*DataDownloadSpec) DeepCopyInto

func (in *DataDownloadSpec) DeepCopyInto(out *DataDownloadSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DataDownloadStatus

type DataDownloadStatus struct {
	// Phase is the current state of the DataDownload.
	// +optional
	Phase DataDownloadPhase `json:"phase,omitempty"`

	// Message is a message about the DataDownload'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"`

	// Node is name of the node where the DataDownload is processed.
	// +optional
	Node string `json:"node,omitempty"`
}

DataDownloadStatus is the current status of a DataDownload.

func (*DataDownloadStatus) DeepCopy

func (in *DataDownloadStatus) DeepCopy() *DataDownloadStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataDownloadStatus.

func (*DataDownloadStatus) DeepCopyInto

func (in *DataDownloadStatus) DeepCopyInto(out *DataDownloadStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DataUpload

type DataUpload struct {
	metav1.TypeMeta `json:",inline"`

	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// +optional
	Spec DataUploadSpec `json:"spec,omitempty"`

	// +optional
	Status DataUploadStatus `json:"status,omitempty"`
}

DataUpload acts as the protocol between data mover plugins and data mover controller for the datamover backup operation

func (*DataUpload) DeepCopy

func (in *DataUpload) DeepCopy() *DataUpload

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataUpload.

func (*DataUpload) DeepCopyInto

func (in *DataUpload) DeepCopyInto(out *DataUpload)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*DataUpload) DeepCopyObject

func (in *DataUpload) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type DataUploadList

type DataUploadList struct {
	metav1.TypeMeta `json:",inline"`

	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []DataUpload `json:"items"`
}

DataUploadList is a list of DataUploads.

func (*DataUploadList) DeepCopy

func (in *DataUploadList) DeepCopy() *DataUploadList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataUploadList.

func (*DataUploadList) DeepCopyInto

func (in *DataUploadList) DeepCopyInto(out *DataUploadList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*DataUploadList) DeepCopyObject

func (in *DataUploadList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type DataUploadPhase

type DataUploadPhase string

DataUploadPhase represents the lifecycle phase of a DataUpload. +kubebuilder:validation:Enum=New;Accepted;Prepared;InProgress;Canceling;Canceled;Completed;Failed

const (
	DataUploadPhaseNew        DataUploadPhase = "New"
	DataUploadPhaseAccepted   DataUploadPhase = "Accepted"
	DataUploadPhasePrepared   DataUploadPhase = "Prepared"
	DataUploadPhaseInProgress DataUploadPhase = "InProgress"
	DataUploadPhaseCanceling  DataUploadPhase = "Canceling"
	DataUploadPhaseCanceled   DataUploadPhase = "Canceled"
	DataUploadPhaseCompleted  DataUploadPhase = "Completed"
	DataUploadPhaseFailed     DataUploadPhase = "Failed"
)

type DataUploadResult

type DataUploadResult struct {
	// BackupStorageLocation is the name of the backup storage location
	// where the backup repository is stored.
	BackupStorageLocation string `json:"backupStorageLocation"`

	// DataMover specifies the data mover used by the DataUpload
	// +optional
	DataMover string `json:"datamover,omitempty"`

	// SnapshotID is the identifier for the snapshot in the backup repository.
	SnapshotID string `json:"snapshotID,omitempty"`

	// SourceNamespace is the original namespace where the volume is backed up from.
	SourceNamespace string `json:"sourceNamespace"`

	// DataMoverResult stores data-mover-specific information as a result of the DataUpload.
	// +optional
	// +nullable
	DataMoverResult *map[string]string `json:"dataMoverResult,omitempty"`
}

DataUploadResult represents the SnasphotBackup result to be used by DataDownload.

func (*DataUploadResult) DeepCopy

func (in *DataUploadResult) DeepCopy() *DataUploadResult

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataUploadResult.

func (*DataUploadResult) DeepCopyInto

func (in *DataUploadResult) DeepCopyInto(out *DataUploadResult)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DataUploadSpec

type DataUploadSpec struct {
	// SnapshotType is the type of the snapshot to be backed up.
	SnapshotType SnapshotType `json:"snapshotType"`

	// If SnapshotType is CSI, CSISnapshot provides the information of the CSI snapshot.
	// +optional
	// +nullable
	CSISnapshot *CSISnapshotSpec `json:"csiSnapshot"`

	// SourcePVC is the name of the PVC which the snapshot is taken for.
	SourcePVC string `json:"sourcePVC"`

	// 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"`

	// BackupStorageLocation is the name of the backup storage location
	// where the backup repository is stored.
	BackupStorageLocation string `json:"backupStorageLocation"`

	// SourceNamespace is the original namespace where the volume is backed up from.
	// It is the same namespace for SourcePVC and CSI namespaced objects.
	SourceNamespace string `json:"sourceNamespace"`

	// DataMoverConfig is for data-mover-specific configuration fields.
	// +optional
	// +nullable
	DataMoverConfig map[string]string `json:"dataMoverConfig,omitempty"`

	// Cancel indicates request to cancel the ongoing DataUpload. It can be set
	// when the DataUpload is in InProgress phase
	Cancel bool `json:"cancel,omitempty"`

	// OperationTimeout specifies the time used to wait internal operations,
	// before returning error as timeout.
	OperationTimeout metav1.Duration `json:"operationTimeout"`
}

DataUploadSpec is the specification for a DataUpload.

func (*DataUploadSpec) DeepCopy

func (in *DataUploadSpec) DeepCopy() *DataUploadSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataUploadSpec.

func (*DataUploadSpec) DeepCopyInto

func (in *DataUploadSpec) DeepCopyInto(out *DataUploadSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DataUploadStatus

type DataUploadStatus struct {
	// Phase is the current state of the DataUpload.
	// +optional
	Phase DataUploadPhase `json:"phase,omitempty"`

	// Path is the full path of the snapshot volume being backed up.
	// +optional
	Path string `json:"path,omitempty"`

	// SnapshotID is the identifier for the snapshot in the backup repository.
	// +optional
	SnapshotID string `json:"snapshotID,omitempty"`

	// DataMoverResult stores data-mover-specific information as a result of the DataUpload.
	// +optional
	// +nullable
	DataMoverResult *map[string]string `json:"dataMoverResult,omitempty"`

	// Message is a message about the DataUpload'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"`

	// Node is name of the node where the DataUpload is processed.
	// +optional
	Node string `json:"node,omitempty"`
}

DataUploadStatus is the current status of a DataUpload.

func (*DataUploadStatus) DeepCopy

func (in *DataUploadStatus) DeepCopy() *DataUploadStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataUploadStatus.

func (*DataUploadStatus) DeepCopyInto

func (in *DataUploadStatus) DeepCopyInto(out *DataUploadStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnapshotType

type SnapshotType string
const (
	SnapshotTypeCSI SnapshotType = "CSI"
)

type TargetVolumeSpec

type TargetVolumeSpec struct {
	// PVC is the name of the target PVC that is created by Velero restore
	PVC string `json:"pvc"`

	// PV is the name of the target PV that is created by Velero restore
	PV string `json:"pv"`

	// Namespace is the target namespace
	Namespace string `json:"namespace"`
}

TargetVolumeSpec is the specification for a target PVC.

func (*TargetVolumeSpec) DeepCopy

func (in *TargetVolumeSpec) DeepCopy() *TargetVolumeSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetVolumeSpec.

func (*TargetVolumeSpec) DeepCopyInto

func (in *TargetVolumeSpec) DeepCopyInto(out *TargetVolumeSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL