v1alpha1

package
v1.2.0 Latest Latest
Warning

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

Go to latest
Published: Jun 4, 2023 License: Apache-2.0 Imports: 9 Imported by: 6

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the oadp v1alpha1 API group +kubebuilder:object:generate=true +groupName=oadp.openshift.io

Index

Constants

View Source
const ConditionReconciled = "Reconciled"

Conditions

View Source
const DataMoverDeploymentLabel = "openshift.io/oadp-data-mover"
View Source
const DataMoverLabel = "openshift.io/volume-snapshot-mover"

datamover labels

View Source
const OadpBSLProviderLabel = "openshift.io/oadp-bsl-provider"
View Source
const OadpBSLnameLabel = "openshift.io/oadp-bsl-name"
View Source
const OadpOperatorLabel = "openshift.io/oadp"
View Source
const OperatorTypeMTC = "mtc"
View Source
const ReconcileCompleteMessage = "Reconcile complete"
View Source
const ReconciledReasonComplete = "Complete"
View Source
const ReconciledReasonError = "Error"
View Source
const RegistryDeploymentLabel = "openshift.io/oadp-registry"
View Source
const StorageClassLabel = "openshift.io/vsm-storageclass"

Variables

View Source
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 added in v0.5.0

type ApplicationConfig struct {
	Velero *VeleroConfig `json:"velero,omitempty"`
	Restic *ResticConfig `json:"restic,omitempty"`
}

ApplicationConfig defines the configuration for the Data Protection Application

func (*ApplicationConfig) DeepCopy added in v0.5.0

func (in *ApplicationConfig) DeepCopy() *ApplicationConfig

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

func (*ApplicationConfig) DeepCopyInto added in v0.5.0

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 added in v0.5.0

type BackupLocation struct {

	// +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 added in v0.5.0

func (in *BackupLocation) DeepCopy() *BackupLocation

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

func (*BackupLocation) DeepCopyInto added in v0.5.0

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 added in v0.5.0

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 added in v0.5.0

func (in *CloudStorage) DeepCopy() *CloudStorage

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

func (*CloudStorage) DeepCopyInto added in v0.5.0

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 added in v0.5.0

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

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

type CloudStorageList added in v0.5.0

type CloudStorageList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []CloudStorage `json:"items"`
}

func (*CloudStorageList) DeepCopy added in v0.5.0

func (in *CloudStorageList) DeepCopy() *CloudStorageList

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

func (*CloudStorageList) DeepCopyInto added in v0.5.0

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 added in v0.5.0

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

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

type CloudStorageLocation added in v0.5.2

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

func (*CloudStorageLocation) DeepCopy added in v0.5.2

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

func (*CloudStorageLocation) DeepCopyInto added in v0.5.2

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 added in v0.5.2

type CloudStorageProvider string
const (
	AWSBucketProvider   CloudStorageProvider = "aws"
	AzureBucketProvider CloudStorageProvider = "azure"
	GCPBucketProvider   CloudStorageProvider = "gcp"
)

type CloudStorageSpec added in v0.5.0

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 enable the use of shared config loading for AWS Buckets
	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"`
	// +kubebuilder:validation:Enum=aws
	// provider is the provider of the cloud storage
	Provider CloudStorageProvider `json:"provider"`
}

func (*CloudStorageSpec) DeepCopy added in v0.5.0

func (in *CloudStorageSpec) DeepCopy() *CloudStorageSpec

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

func (*CloudStorageSpec) DeepCopyInto added in v0.5.0

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 added in v0.5.0

type CloudStorageStatus struct {
	Name       string       `json:"name"`
	LastSynced *metav1.Time `json:"lastSyncTimestamp,omitempty"`
}

func (*CloudStorageStatus) DeepCopy added in v0.5.0

func (in *CloudStorageStatus) DeepCopy() *CloudStorageStatus

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

func (*CloudStorageStatus) DeepCopyInto added in v0.5.0

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

type CustomPlugin struct {
	Name  string `json:"name"`
	Image string `json:"image"`
}

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 added in v1.1.0

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

DataMover defines the various config for DPA data mover

func (*DataMover) DeepCopy added in v1.1.0

func (in *DataMover) DeepCopy() *DataMover

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

func (*DataMover) DeepCopyInto added in v1.1.0

func (in *DataMover) DeepCopyInto(out *DataMover)

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

type DataMoverVolumeOptions added in v1.2.0

type DataMoverVolumeOptions struct {
	SourceVolumeOptions      *VolumeOptions `json:"sourceVolumeOptions,omitempty"`
	DestinationVolumeOptions *VolumeOptions `json:"destinationVolumeOptions,omitempty"`
}

func (*DataMoverVolumeOptions) DeepCopy added in v1.2.0

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

func (*DataMoverVolumeOptions) DeepCopyInto added in v1.2.0

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 added in v0.5.0

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 added in v1.2.0

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 added in v0.5.3

func (dpa *DataProtectionApplication) BackupImages() bool

Default BackupImages behavior when nil to true

func (*DataProtectionApplication) DeepCopy added in v0.5.0

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

func (*DataProtectionApplication) DeepCopyInto added in v0.5.0

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

func (*DataProtectionApplication) DeepCopyObject added in v0.5.0

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

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

type DataProtectionApplicationList added in v0.5.0

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 added in v0.5.0

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

func (*DataProtectionApplicationList) DeepCopyInto added in v0.5.0

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

func (*DataProtectionApplicationList) DeepCopyObject added in v0.5.0

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

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

type DataProtectionApplicationSpec added in v0.5.0

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
	//   - csiPluginImageFqin
	//   - dataMoverImageFqin
	//   - resticRestoreImageFqin
	//   - kubevirtPluginImageFqin
	// +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 added in v0.5.0

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

func (*DataProtectionApplicationSpec) DeepCopyInto added in v0.5.0

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

type DataProtectionApplicationStatus added in v0.5.0

type DataProtectionApplicationStatus struct {
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

DataProtectionApplicationStatus defines the observed state of DataProtectionApplication

func (*DataProtectionApplicationStatus) DeepCopy added in v0.5.0

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

func (*DataProtectionApplicationStatus) DeepCopyInto added in v0.5.0

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

type DefaultPlugin

type DefaultPlugin string
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 added in v1.1.0

type Features struct {
	// Contains data mover specific configurations
	// +optional
	DataMover *DataMover `json:"dataMover,omitempty"`
}

Features defines the configuration for the DPA to enable the tech preview features

func (*Features) DeepCopy added in v1.1.0

func (in *Features) DeepCopy() *Features

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

func (*Features) DeepCopyInto added in v1.1.0

func (in *Features) DeepCopyInto(out *Features)

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

type PodConfig added in v0.5.0

type PodConfig struct {
	// labels to add to pods
	// +optional
	Labels map[string]string `json:"labels,omitempty"`
	// nodeSelector defines the nodeSelector to be supplied to Restic podSpec
	// +optional
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`
	// tolerations defines the list of tolerations to be applied to Restic daemonset
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty"`
	// resourceAllocations defines the CPU and Memory resource allocations for the restic 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 added in v0.5.0

func (in *PodConfig) DeepCopy() *PodConfig

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

func (*PodConfig) DeepCopyInto added in v0.5.0

func (in *PodConfig) DeepCopyInto(out *PodConfig)

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

type ResticConfig added in v0.5.0

type ResticConfig 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 Restic Pod
	// +optional
	SupplementalGroups []int64 `json:"supplementalGroups,omitempty"`
	// timeout defines the Restic timeout, default value is 1h
	// +optional
	Timeout string `json:"timeout,omitempty"`
	// Pod specific configuration
	PodConfig *PodConfig `json:"podConfig,omitempty"`
}

ResticConfig is the configuration for restic server

func (*ResticConfig) DeepCopy added in v0.5.0

func (in *ResticConfig) DeepCopy() *ResticConfig

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

func (*ResticConfig) DeepCopyInto added in v0.5.0

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 added in v1.2.0

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 added in v1.2.0

func (in *RetainPolicy) DeepCopy() *RetainPolicy

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

func (*RetainPolicy) DeepCopyInto added in v1.2.0

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 added in v0.5.0

type SnapshotLocation struct {
	Velero *velero.VolumeSnapshotLocationSpec `json:"velero"`
}

SnapshotLocation defines the configuration for the DPA snapshot store

func (*SnapshotLocation) DeepCopy added in v0.5.0

func (in *SnapshotLocation) DeepCopy() *SnapshotLocation

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

func (*SnapshotLocation) DeepCopyInto added in v0.5.0

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
const AWSPluginImageKey UnsupportedImageKey = "awsPluginImageFqin"
const AzurePluginImageKey UnsupportedImageKey = "azurePluginImageFqin"
const CSIPluginImageKey UnsupportedImageKey = "csiPluginImageFqin"
const DataMoverImageKey UnsupportedImageKey = "dataMoverImageFqin"
const GCPPluginImageKey UnsupportedImageKey = "gcpPluginImageFqin"
const KubeVirtPluginImageKey UnsupportedImageKey = "kubevirtPluginImageFqin"
const OpenShiftPluginImageKey UnsupportedImageKey = "openshiftPluginImageFqin"
const OperatorTypeKey UnsupportedImageKey = "operator-type"
const ResticRestoreImageKey UnsupportedImageKey = "resticRestoreImageFqin"
const VSMPluginImageKey UnsupportedImageKey = "vsmPluginImageFqin"
const VeleroImageKey UnsupportedImageKey = "veleroImageFqin"

type VeleroConfig added in v0.5.0

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"`
	// 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"`
	// Velero args are settings to customize velero server arguments. Overrides values in other fields.
	// +optional
	Args *server.Args `json:"args,omitempty"`
}

func (*VeleroConfig) DeepCopy added in v0.5.0

func (in *VeleroConfig) DeepCopy() *VeleroConfig

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

func (*VeleroConfig) DeepCopyInto added in v0.5.0

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 added in v1.2.0

func (veleroConfig *VeleroConfig) HasFeatureFlag(flag string) bool

type VolumeOptions added in v1.2.0

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 added in v1.2.0

func (in *VolumeOptions) DeepCopy() *VolumeOptions

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

func (*VolumeOptions) DeepCopyInto added in v1.2.0

func (in *VolumeOptions) DeepCopyInto(out *VolumeOptions)

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