Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the oadp v1alpha1 API group +kubebuilder:object:generate=true +groupName=oadp.openshift.io
Index ¶
- Constants
- Variables
- type ApplicationConfig
- type BackupLocation
- type CloudStorage
- type CloudStorageList
- type CloudStorageLocation
- type CloudStorageProvider
- type CloudStorageSpec
- type CloudStorageStatus
- type CustomPlugin
- type DataMover
- type DataMoverVolumeOptions
- type DataProtectionApplication
- func (dpa *DataProtectionApplication) AutoCorrect()
- func (dpa *DataProtectionApplication) BackupImages() bool
- func (in *DataProtectionApplication) DeepCopy() *DataProtectionApplication
- func (in *DataProtectionApplication) DeepCopyInto(out *DataProtectionApplication)
- func (in *DataProtectionApplication) DeepCopyObject() runtime.Object
- func (dpa *DataProtectionApplication) GetDisableInformerCache() bool
- type DataProtectionApplicationList
- type DataProtectionApplicationSpec
- type DataProtectionApplicationStatus
- type DefaultPlugin
- type Features
- type NodeAgentCommonFields
- type NodeAgentConfig
- type PodConfig
- type ResticConfig
- type RetainPolicy
- type SnapshotLocation
- type UnsupportedImageKey
- type VeleroConfig
- type VolumeOptions
Constants ¶
const ConditionReconciled = "Reconciled"
Conditions
const OadpOperatorLabel = "openshift.io/oadp"
const OperatorTypeMTC = "mtc"
const ReconcileCompleteMessage = "Reconcile complete"
const ReconciledReasonComplete = "Complete"
const ReconciledReasonError = "Error"
const RegistryDeploymentLabel = "openshift.io/oadp-registry"
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "oadp.openshift.io", Version: "v1alpha1"} Kind = "DataProtectionApplication" // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type ApplicationConfig ¶
type ApplicationConfig struct { Velero *VeleroConfig `json:"velero,omitempty"` // (deprecation warning) ResticConfig is the configuration for restic DaemonSet. // restic is for backwards compatibility and is replaced by the nodeAgent // restic will be removed in the future // +kubebuilder:deprecatedversion:warning=1.3 // +optional Restic *ResticConfig `json:"restic,omitempty"` // NodeAgent is needed to allow selection between kopia or restic // +optional NodeAgent *NodeAgentConfig `json:"nodeAgent,omitempty"` }
ApplicationConfig defines the configuration for the Data Protection Application
func (*ApplicationConfig) DeepCopy ¶
func (in *ApplicationConfig) DeepCopy() *ApplicationConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationConfig.
func (*ApplicationConfig) DeepCopyInto ¶
func (in *ApplicationConfig) DeepCopyInto(out *ApplicationConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupLocation ¶
type BackupLocation struct { // +optional Name string `json:"name,omitempty"` // +optional Velero *velero.BackupStorageLocationSpec `json:"velero,omitempty"` // +optional CloudStorage *CloudStorageLocation `json:"bucket,omitempty"` }
BackupLocation defines the configuration for the DPA backup storage
func (*BackupLocation) DeepCopy ¶
func (in *BackupLocation) DeepCopy() *BackupLocation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupLocation.
func (*BackupLocation) DeepCopyInto ¶
func (in *BackupLocation) DeepCopyInto(out *BackupLocation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CloudStorage ¶
type CloudStorage struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec CloudStorageSpec `json:"spec,omitempty"` Status CloudStorageStatus `json:"status,omitempty"` }
func (*CloudStorage) DeepCopy ¶
func (in *CloudStorage) DeepCopy() *CloudStorage
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudStorage.
func (*CloudStorage) DeepCopyInto ¶
func (in *CloudStorage) DeepCopyInto(out *CloudStorage)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CloudStorage) DeepCopyObject ¶
func (in *CloudStorage) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CloudStorageList ¶
type CloudStorageList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []CloudStorage `json:"items"` }
func (*CloudStorageList) DeepCopy ¶
func (in *CloudStorageList) DeepCopy() *CloudStorageList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudStorageList.
func (*CloudStorageList) DeepCopyInto ¶
func (in *CloudStorageList) DeepCopyInto(out *CloudStorageList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CloudStorageList) DeepCopyObject ¶
func (in *CloudStorageList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CloudStorageLocation ¶
type CloudStorageLocation struct { CloudStorageRef corev1.LocalObjectReference `json:"cloudStorageRef"` // 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 *corev1.SecretKeySelector `json:"credential,omitempty"` // default indicates this location is the default backup storage location. // +optional Default bool `json:"default,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"` // 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"` }
CloudStorageLocation defines BackupStorageLocation using bucket referenced by CloudStorage CR.
func (*CloudStorageLocation) DeepCopy ¶
func (in *CloudStorageLocation) DeepCopy() *CloudStorageLocation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudStorageLocation.
func (*CloudStorageLocation) DeepCopyInto ¶
func (in *CloudStorageLocation) DeepCopyInto(out *CloudStorageLocation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CloudStorageProvider ¶
type CloudStorageProvider string
const ( AWSBucketProvider CloudStorageProvider = CloudStorageProvider(DefaultPluginAWS) AzureBucketProvider CloudStorageProvider = CloudStorageProvider(DefaultPluginMicrosoftAzure) GCPBucketProvider CloudStorageProvider = CloudStorageProvider(DefaultPluginGCP) )
type CloudStorageSpec ¶
type CloudStorageSpec struct { // name is the name requested for the bucket (aws, gcp) or container (azure) Name string `json:"name"` // creationSecret is the secret that is needed to be used while creating the bucket. CreationSecret corev1.SecretKeySelector `json:"creationSecret"` EnableSharedConfig *bool `json:"enableSharedConfig,omitempty"` // tags for the bucket // +kubebuilder:validation:Optional Tags map[string]string `json:"tags,omitempty"` // region for the bucket to be in, will be us-east-1 if not set. Region string `json:"region,omitempty"` // provider is the provider of the cloud storage // +kubebuilder:validation:Enum=aws Provider CloudStorageProvider `json:"provider"` }
func (*CloudStorageSpec) DeepCopy ¶
func (in *CloudStorageSpec) DeepCopy() *CloudStorageSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudStorageSpec.
func (*CloudStorageSpec) DeepCopyInto ¶
func (in *CloudStorageSpec) DeepCopyInto(out *CloudStorageSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CloudStorageStatus ¶
type CloudStorageStatus struct { Name string `json:"name"` LastSynced *metav1.Time `json:"lastSyncTimestamp,omitempty"` }
func (*CloudStorageStatus) DeepCopy ¶
func (in *CloudStorageStatus) DeepCopy() *CloudStorageStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudStorageStatus.
func (*CloudStorageStatus) DeepCopyInto ¶
func (in *CloudStorageStatus) DeepCopyInto(out *CloudStorageStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CustomPlugin ¶
func (*CustomPlugin) DeepCopy ¶
func (in *CustomPlugin) DeepCopy() *CustomPlugin
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomPlugin.
func (*CustomPlugin) DeepCopyInto ¶
func (in *CustomPlugin) DeepCopyInto(out *CustomPlugin)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DataMover ¶
type DataMover struct { // enable flag is used to specify whether you want to deploy the volume snapshot mover controller // +optional Enable bool `json:"enable,omitempty"` // User supplied Restic Secret name // +optional CredentialName string `json:"credentialName,omitempty"` // User supplied timeout to be used for VolumeSnapshotBackup and VolumeSnapshotRestore to complete, default value is 10m // +optional Timeout string `json:"timeout,omitempty"` // the number of batched volumeSnapshotBackups that can be inProgress at once, default value is 10 // +optional MaxConcurrentBackupVolumes string `json:"maxConcurrentBackupVolumes,omitempty"` // the number of batched volumeSnapshotRestores that can be inProgress at once, default value is 10 // +optional MaxConcurrentRestoreVolumes string `json:"maxConcurrentRestoreVolumes,omitempty"` // defines how often (in days) to prune the datamover snapshots from the repository // +optional PruneInterval string `json:"pruneInterval,omitempty"` // defines configurations for data mover volume options for a storageClass // +optional VolumeOptionsForStorageClasses map[string]DataMoverVolumeOptions `json:"volumeOptionsForStorageClasses,omitempty"` // defines the parameters that can be specified for retention of datamover snapshots // +optional SnapshotRetainPolicy *RetainPolicy `json:"snapshotRetainPolicy,omitempty"` // schedule is a cronspec (https://en.wikipedia.org/wiki/Cron#Overview) that // can be used to schedule datamover(volsync) synchronization to occur at regular, time-based // intervals. For example, in order to enforce datamover SnapshotRetainPolicy at a regular interval you need to // specify this Schedule trigger as a cron expression, by default the trigger is a manual trigger. For more details // on Volsync triggers, refer: https://volsync.readthedocs.io/en/stable/usage/triggers.html //+kubebuilder:validation:Pattern=`^(\d+|\*)(/\d+)?(\s+(\d+|\*)(/\d+)?){4}$` //+optional Schedule string `json:"schedule,omitempty"` }
DataMover defines the various config for DPA data mover
func (*DataMover) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataMover.
func (*DataMover) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DataMoverVolumeOptions ¶
type DataMoverVolumeOptions struct { SourceVolumeOptions *VolumeOptions `json:"sourceVolumeOptions,omitempty"` DestinationVolumeOptions *VolumeOptions `json:"destinationVolumeOptions,omitempty"` }
func (*DataMoverVolumeOptions) DeepCopy ¶
func (in *DataMoverVolumeOptions) DeepCopy() *DataMoverVolumeOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataMoverVolumeOptions.
func (*DataMoverVolumeOptions) DeepCopyInto ¶
func (in *DataMoverVolumeOptions) DeepCopyInto(out *DataMoverVolumeOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DataProtectionApplication ¶
type DataProtectionApplication struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec DataProtectionApplicationSpec `json:"spec,omitempty"` Status DataProtectionApplicationStatus `json:"status,omitempty"` }
DataProtectionApplication is the Schema for the dpa API
func (*DataProtectionApplication) AutoCorrect ¶
func (dpa *DataProtectionApplication) AutoCorrect()
AutoCorrect is a collection of auto-correction functions for the DPA CR These auto corrects are in-memory only and do not persist to the CR There should not be another place where these auto-corrects are done
func (*DataProtectionApplication) BackupImages ¶
func (dpa *DataProtectionApplication) BackupImages() bool
Default BackupImages behavior when nil to true
func (*DataProtectionApplication) DeepCopy ¶
func (in *DataProtectionApplication) DeepCopy() *DataProtectionApplication
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataProtectionApplication.
func (*DataProtectionApplication) DeepCopyInto ¶
func (in *DataProtectionApplication) DeepCopyInto(out *DataProtectionApplication)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DataProtectionApplication) DeepCopyObject ¶
func (in *DataProtectionApplication) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*DataProtectionApplication) GetDisableInformerCache ¶
func (dpa *DataProtectionApplication) GetDisableInformerCache() bool
Default DisableInformerCache behavior when nil to false
type DataProtectionApplicationList ¶
type DataProtectionApplicationList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []DataProtectionApplication `json:"items"` }
DataProtectionApplicationList contains a list of Velero
func (*DataProtectionApplicationList) DeepCopy ¶
func (in *DataProtectionApplicationList) DeepCopy() *DataProtectionApplicationList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataProtectionApplicationList.
func (*DataProtectionApplicationList) DeepCopyInto ¶
func (in *DataProtectionApplicationList) DeepCopyInto(out *DataProtectionApplicationList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DataProtectionApplicationList) DeepCopyObject ¶
func (in *DataProtectionApplicationList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DataProtectionApplicationSpec ¶
type DataProtectionApplicationSpec struct { // backupLocations defines the list of desired configuration to use for BackupStorageLocations // +optional BackupLocations []BackupLocation `json:"backupLocations"` // snapshotLocations defines the list of desired configuration to use for VolumeSnapshotLocations // +optional SnapshotLocations []SnapshotLocation `json:"snapshotLocations"` // unsupportedOverrides can be used to override images used in deployments. // Available keys are: // - veleroImageFqin // - awsPluginImageFqin // - openshiftPluginImageFqin // - azurePluginImageFqin // - gcpPluginImageFqin // - resticRestoreImageFqin // - kubevirtPluginImageFqin // - operator-type // +optional UnsupportedOverrides map[UnsupportedImageKey]string `json:"unsupportedOverrides,omitempty"` // add annotations to pods deployed by operator // +optional PodAnnotations map[string]string `json:"podAnnotations,omitempty"` // podDnsPolicy defines how a pod's DNS will be configured. // https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy // +optional PodDnsPolicy corev1.DNSPolicy `json:"podDnsPolicy,omitempty"` // podDnsConfig defines the DNS parameters of a pod in addition to // those generated from DNSPolicy. // https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-dns-config // +optional PodDnsConfig corev1.PodDNSConfig `json:"podDnsConfig,omitempty"` // backupImages is used to specify whether you want to deploy a registry for enabling backup and restore of images // +optional BackupImages *bool `json:"backupImages,omitempty"` // configuration is used to configure the data protection application's server config Configuration *ApplicationConfig `json:"configuration"` // features defines the configuration for the DPA to enable the OADP tech preview features // +optional Features *Features `json:"features"` }
DataProtectionApplicationSpec defines the desired state of Velero
func (*DataProtectionApplicationSpec) DeepCopy ¶
func (in *DataProtectionApplicationSpec) DeepCopy() *DataProtectionApplicationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataProtectionApplicationSpec.
func (*DataProtectionApplicationSpec) DeepCopyInto ¶
func (in *DataProtectionApplicationSpec) DeepCopyInto(out *DataProtectionApplicationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DataProtectionApplicationStatus ¶
type DataProtectionApplicationStatus struct {
Conditions []metav1.Condition `json:"conditions,omitempty"`
}
DataProtectionApplicationStatus defines the observed state of DataProtectionApplication
func (*DataProtectionApplicationStatus) DeepCopy ¶
func (in *DataProtectionApplicationStatus) DeepCopy() *DataProtectionApplicationStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataProtectionApplicationStatus.
func (*DataProtectionApplicationStatus) DeepCopyInto ¶
func (in *DataProtectionApplicationStatus) DeepCopyInto(out *DataProtectionApplicationStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DefaultPlugin ¶
type DefaultPlugin string
+kubebuilder:validation:Enum=aws;gcp;azure;csi;vsm;openshift;kubevirt
const DefaultPluginAWS DefaultPlugin = "aws"
const DefaultPluginCSI DefaultPlugin = "csi"
const DefaultPluginGCP DefaultPlugin = "gcp"
const DefaultPluginKubeVirt DefaultPlugin = "kubevirt"
const DefaultPluginMicrosoftAzure DefaultPlugin = "azure"
const DefaultPluginOpenShift DefaultPlugin = "openshift"
const DefaultPluginVSM DefaultPlugin = "vsm"
type Features ¶
type Features struct { // (do not use warning) Contains data mover specific configurations // dataMover is for backwards compatibility and is not necessary in OADP 1.3 // dataMover will be removed with the OADP 1.4 // +optional DataMover *DataMover `json:"dataMover,omitempty"` }
Features defines the configuration for the DPA to enable the tech preview features
func (*Features) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Features.
func (*Features) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeAgentCommonFields ¶
type NodeAgentCommonFields struct { // enable defines a boolean pointer whether we want the daemonset to // exist or not // +optional Enable *bool `json:"enable,omitempty"` // supplementalGroups defines the linux groups to be applied to the NodeAgent Pod // +optional SupplementalGroups []int64 `json:"supplementalGroups,omitempty"` // timeout defines the NodeAgent timeout, default value is 1h // +optional Timeout string `json:"timeout,omitempty"` // Pod specific configuration PodConfig *PodConfig `json:"podConfig,omitempty"` }
func (*NodeAgentCommonFields) DeepCopy ¶
func (in *NodeAgentCommonFields) DeepCopy() *NodeAgentCommonFields
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeAgentCommonFields.
func (*NodeAgentCommonFields) DeepCopyInto ¶
func (in *NodeAgentCommonFields) DeepCopyInto(out *NodeAgentCommonFields)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeAgentConfig ¶
type NodeAgentConfig struct { // Embedding NodeAgentCommonFields // +optional NodeAgentCommonFields `json:",inline"` // The type of uploader to transfer the data of pod volumes, the supported values are 'restic' or 'kopia' // +kubebuilder:validation:Enum=restic;kopia // +kubebuilder:validation:Required UploaderType string `json:"uploaderType"` }
NodeAgentConfig is the configuration for node server
func (*NodeAgentConfig) DeepCopy ¶
func (in *NodeAgentConfig) DeepCopy() *NodeAgentConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeAgentConfig.
func (*NodeAgentConfig) DeepCopyInto ¶
func (in *NodeAgentConfig) DeepCopyInto(out *NodeAgentConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodConfig ¶
type PodConfig struct { // labels to add to pods // +optional Labels map[string]string `json:"labels,omitempty"` // nodeSelector defines the nodeSelector to be supplied to podSpec // +optional NodeSelector map[string]string `json:"nodeSelector,omitempty"` // tolerations defines the list of tolerations to be applied to daemonset // +optional Tolerations []corev1.Toleration `json:"tolerations,omitempty"` // resourceAllocations defines the CPU and Memory resource allocations for the Pod // +optional // +nullable ResourceAllocations corev1.ResourceRequirements `json:"resourceAllocations,omitempty"` // env defines the list of environment variables to be supplied to podSpec // +optional Env []corev1.EnvVar `json:"env,omitempty"` }
PodConfig defines the pod configuration options
func (*PodConfig) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodConfig.
func (*PodConfig) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResticConfig ¶
type ResticConfig struct { // Embedding NodeAgentCommonFields // +optional NodeAgentCommonFields `json:",inline"` }
ResticConfig is the configuration for restic server
func (*ResticConfig) DeepCopy ¶
func (in *ResticConfig) DeepCopy() *ResticConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResticConfig.
func (*ResticConfig) DeepCopyInto ¶
func (in *ResticConfig) DeepCopyInto(out *ResticConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RetainPolicy ¶
type RetainPolicy struct { // Hourly defines the number of snapshots to be kept hourly //+optional Hourly string `json:"hourly,omitempty"` // Daily defines the number of snapshots to be kept daily //+optional Daily string `json:"daily,omitempty"` // Weekly defines the number of snapshots to be kept weekly //+optional Weekly string `json:"weekly,omitempty"` // Monthly defines the number of snapshots to be kept monthly //+optional Monthly string `json:"monthly,omitempty"` // Yearly defines the number of snapshots to be kept yearly //+optional Yearly string `json:"yearly,omitempty"` // Within defines the number of snapshots to be kept Within the given time period //+optional Within string `json:"within,omitempty"` }
RetainPolicy defines the fields for retention of datamover snapshots
func (*RetainPolicy) DeepCopy ¶
func (in *RetainPolicy) DeepCopy() *RetainPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RetainPolicy.
func (*RetainPolicy) DeepCopyInto ¶
func (in *RetainPolicy) DeepCopyInto(out *RetainPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SnapshotLocation ¶
type SnapshotLocation struct {
Velero *velero.VolumeSnapshotLocationSpec `json:"velero"`
}
SnapshotLocation defines the configuration for the DPA snapshot store
func (*SnapshotLocation) DeepCopy ¶
func (in *SnapshotLocation) DeepCopy() *SnapshotLocation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotLocation.
func (*SnapshotLocation) DeepCopyInto ¶
func (in *SnapshotLocation) DeepCopyInto(out *SnapshotLocation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UnsupportedImageKey ¶
type UnsupportedImageKey string
Field does not have enum validation for development flexibility
const AWSPluginImageKey UnsupportedImageKey = "awsPluginImageFqin"
const AzurePluginImageKey UnsupportedImageKey = "azurePluginImageFqin"
const GCPPluginImageKey UnsupportedImageKey = "gcpPluginImageFqin"
const KubeVirtPluginImageKey UnsupportedImageKey = "kubevirtPluginImageFqin"
const OpenShiftPluginImageKey UnsupportedImageKey = "openshiftPluginImageFqin"
const OperatorTypeKey UnsupportedImageKey = "operator-type"
const ResticRestoreImageKey UnsupportedImageKey = "resticRestoreImageFqin"
const VeleroImageKey UnsupportedImageKey = "veleroImageFqin"
type VeleroConfig ¶
type VeleroConfig struct { // featureFlags defines the list of features to enable for Velero instance // +optional FeatureFlags []string `json:"featureFlags,omitempty"` DefaultPlugins []DefaultPlugin `json:"defaultPlugins,omitempty"` // customPlugins defines the custom plugin to be installed with Velero // +optional CustomPlugins []CustomPlugin `json:"customPlugins,omitempty"` // restoreResourceVersionPriority represents a configmap that will be created if defined for use in conjunction with EnableAPIGroupVersions feature flag // Defining this field automatically add EnableAPIGroupVersions to the velero server feature flag // +optional RestoreResourcesVersionPriority string `json:"restoreResourcesVersionPriority,omitempty"` // If you need to install Velero without a default backup storage location noDefaultBackupLocation flag is required for confirmation // +optional NoDefaultBackupLocation bool `json:"noDefaultBackupLocation,omitempty"` // Pod specific configuration PodConfig *PodConfig `json:"podConfig,omitempty"` // Velero server’s log level (use debug for the most logging, leave unset for velero default) // +optional // +kubebuilder:validation:Enum=trace;debug;info;warning;error;fatal;panic LogLevel string `json:"logLevel,omitempty"` // How often to check status on async backup/restore operations after backup processing. Default value is 2m. // +optional ItemOperationSyncFrequency string `json:"itemOperationSyncFrequency,omitempty"` // How long to wait on asynchronous BackupItemActions and RestoreItemActions to complete before timing out. Default value is 1h. // +optional DefaultItemOperationTimeout string `json:"defaultItemOperationTimeout,omitempty"` // Use pod volume file system backup by default for volumes // +optional DefaultVolumesToFSBackup *bool `json:"defaultVolumesToFSBackup,omitempty"` // Specify whether CSI snapshot data should be moved to backup storage by default // +optional DefaultSnapshotMoveData *bool `json:"defaultSnapshotMoveData,omitempty"` // Disable informer cache for Get calls on restore. With this enabled, it will speed up restore in cases where there are backup resources which already exist in the cluster, but for very large clusters this will increase velero memory usage. Default is false. // +optional DisableInformerCache *bool `json:"disableInformerCache,omitempty"` // resourceTimeout defines how long to wait for several Velero resources before timeout occurs, // such as Velero CRD availability, volumeSnapshot deletion, and repo availability. // Default is 10m // +optional ResourceTimeout string `json:"resourceTimeout,omitempty"` }
func (*VeleroConfig) DeepCopy ¶
func (in *VeleroConfig) DeepCopy() *VeleroConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VeleroConfig.
func (*VeleroConfig) DeepCopyInto ¶
func (in *VeleroConfig) DeepCopyInto(out *VeleroConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VeleroConfig) HasFeatureFlag ¶
func (veleroConfig *VeleroConfig) HasFeatureFlag(flag string) bool
type VolumeOptions ¶
type VolumeOptions struct { // storageClassName can be used to override the StorageClass of the source // or destination PVC //+optional StorageClassName string `json:"storageClassName,omitempty"` // accessMode can be used to override the accessMode of the source or // destination PVC //+optional AccessMode corev1.PersistentVolumeAccessMode `json:"accessMode,omitempty"` // cacheStorageClassName is the storageClass that should be used when provisioning // the data mover cache volume //+optional CacheStorageClassName string `json:"cacheStorageClassName,omitempty"` // cacheCapacity determines the size of the restic metadata cache volume //+optional CacheCapacity string `json:"cacheCapacity,omitempty"` // cacheAccessMode is the access mode to be used to provision the cache volume //+optional CacheAccessMode string `json:"cacheAccessMode,omitempty"` }
VolumeOptions defines configurations for VolSync options
func (*VolumeOptions) DeepCopy ¶
func (in *VolumeOptions) DeepCopy() *VolumeOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeOptions.
func (*VolumeOptions) DeepCopyInto ¶
func (in *VolumeOptions) DeepCopyInto(out *VolumeOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.