Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the replication.storage v1alpha1 API group +kubebuilder:object:generate=true +groupName=replication.storage.openshift.io
Index ¶
- Constants
- Variables
- type ReplicationState
- type State
- type VolumeGroupReplication
- type VolumeGroupReplicationClass
- type VolumeGroupReplicationClassList
- type VolumeGroupReplicationClassSpec
- type VolumeGroupReplicationClassStatus
- type VolumeGroupReplicationContent
- type VolumeGroupReplicationContentList
- type VolumeGroupReplicationContentSource
- type VolumeGroupReplicationContentSpec
- type VolumeGroupReplicationContentStatus
- type VolumeGroupReplicationList
- type VolumeGroupReplicationSource
- type VolumeGroupReplicationSpec
- type VolumeGroupReplicationStatus
- type VolumeReplication
- type VolumeReplicationClass
- type VolumeReplicationClassList
- type VolumeReplicationClassSpec
- type VolumeReplicationClassStatus
- type VolumeReplicationList
- type VolumeReplicationSpec
- type VolumeReplicationStatus
Constants ¶
const ( ConditionCompleted = "Completed" ConditionDegraded = "Degraded" ConditionResyncing = "Resyncing" ConditionValidated = "Validated" )
These are valid condition statuses. "ConditionCompleted" means the condition is fulfilled. "ConditionDegraded" means the condition is not fulfilled. "ConditionResyncing" means the condition is resyncing.
const ( // Success condition represents the successful completion of the operation. Success = "Success" // Promoted condition represents the successful promotion of the volume. Promoted = "Promoted" // Demoted condition represents the successful demotion of the volume. Demoted = "Demoted" // FailedToPromote condition represents the failure to promote the volume. FailedToPromote = "FailedToPromote" // FailedToDemote condition represents the failure to demote the volume. FailedToDemote = "FailedToDemote" // Error condition represents the error in the operation. Error = "Error" // VolumeDegraded condition represents the volume is degraded. VolumeDegraded = "VolumeDegraded" // Healthy condition represents the volume is healthy. Healthy = "Healthy" // ResyncTriggered condition represents the resync operation is triggered. ResyncTriggered = "ResyncTriggered" // FailedToResync condition represents the failure to resync the volume. FailedToResync = "FailedToResync" // NotResyncing condition represents the volume is not resyncing. NotResyncing = "NotResyncing" // PrerequisiteMet condition represents that the prerequisite is met. PrerequisiteMet = "PrerequisiteMet" // PrerequisiteNotMet condition represents that the prerequisite is not met. PrerequisiteNotMet = "PrerequisiteNotMet" )
const (
VolumeReplicationNameAnnotation = "replication.storage.openshift.io/volume-replication-name"
)
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "replication.storage.openshift.io", Version: "v1alpha1"} // 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 ReplicationState ¶
type ReplicationState string
ReplicationState represents the replication operations to be performed on the volume. +kubebuilder:validation:Enum=primary;secondary;resync
const ( // Primary ReplicationState enables mirroring and promotes the volume to primary. Primary ReplicationState = "primary" // Secondary ReplicationState demotes the volume to secondary and resyncs the volume if out of sync. Secondary ReplicationState = "secondary" // Resync option resyncs the volume. Resync ReplicationState = "resync" )
type VolumeGroupReplication ¶
type VolumeGroupReplication struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec VolumeGroupReplicationSpec `json:"spec,omitempty"` Status VolumeGroupReplicationStatus `json:"status,omitempty"` }
VolumeGroupReplication is the Schema for the volumegroupreplications API
func (*VolumeGroupReplication) DeepCopy ¶
func (in *VolumeGroupReplication) DeepCopy() *VolumeGroupReplication
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeGroupReplication.
func (*VolumeGroupReplication) DeepCopyInto ¶
func (in *VolumeGroupReplication) DeepCopyInto(out *VolumeGroupReplication)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VolumeGroupReplication) DeepCopyObject ¶
func (in *VolumeGroupReplication) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type VolumeGroupReplicationClass ¶
type VolumeGroupReplicationClass struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec VolumeGroupReplicationClassSpec `json:"spec,omitempty"` Status VolumeGroupReplicationClassStatus `json:"status,omitempty"` }
VolumeGroupReplicationClass is the Schema for the volumegroupreplicationclasses API
func (*VolumeGroupReplicationClass) DeepCopy ¶
func (in *VolumeGroupReplicationClass) DeepCopy() *VolumeGroupReplicationClass
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeGroupReplicationClass.
func (*VolumeGroupReplicationClass) DeepCopyInto ¶
func (in *VolumeGroupReplicationClass) DeepCopyInto(out *VolumeGroupReplicationClass)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VolumeGroupReplicationClass) DeepCopyObject ¶
func (in *VolumeGroupReplicationClass) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type VolumeGroupReplicationClassList ¶
type VolumeGroupReplicationClassList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []VolumeGroupReplicationClass `json:"items"` }
VolumeGroupReplicationClassList contains a list of VolumeGroupReplicationClass
func (*VolumeGroupReplicationClassList) DeepCopy ¶
func (in *VolumeGroupReplicationClassList) DeepCopy() *VolumeGroupReplicationClassList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeGroupReplicationClassList.
func (*VolumeGroupReplicationClassList) DeepCopyInto ¶
func (in *VolumeGroupReplicationClassList) DeepCopyInto(out *VolumeGroupReplicationClassList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VolumeGroupReplicationClassList) DeepCopyObject ¶
func (in *VolumeGroupReplicationClassList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type VolumeGroupReplicationClassSpec ¶
type VolumeGroupReplicationClassSpec struct { // Provisioner is the name of storage provisioner // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="provisioner is immutable" Provisioner string `json:"provisioner"` // Parameters is a key-value map with storage provisioner specific configurations for // creating volume group replicas // +kubebuilder:validation:Optional // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="parameters are immutable" Parameters map[string]string `json:"parameters,omitempty"` }
VolumeGroupReplicationClassSpec specifies parameters that an underlying storage system uses when creating a volumegroup replica. A specific VolumeGroupReplicationClass is used by specifying its name in a VolumeGroupReplication object. +kubebuilder:validation:XValidation:rule="has(self.parameters) == has(oldSelf.parameters)",message="parameters are immutable"
func (*VolumeGroupReplicationClassSpec) DeepCopy ¶
func (in *VolumeGroupReplicationClassSpec) DeepCopy() *VolumeGroupReplicationClassSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeGroupReplicationClassSpec.
func (*VolumeGroupReplicationClassSpec) DeepCopyInto ¶
func (in *VolumeGroupReplicationClassSpec) DeepCopyInto(out *VolumeGroupReplicationClassSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumeGroupReplicationClassStatus ¶
type VolumeGroupReplicationClassStatus struct { }
VolumeGroupReplicationClassStatus defines the observed state of VolumeGroupReplicationClass
func (*VolumeGroupReplicationClassStatus) DeepCopy ¶
func (in *VolumeGroupReplicationClassStatus) DeepCopy() *VolumeGroupReplicationClassStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeGroupReplicationClassStatus.
func (*VolumeGroupReplicationClassStatus) DeepCopyInto ¶
func (in *VolumeGroupReplicationClassStatus) DeepCopyInto(out *VolumeGroupReplicationClassStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumeGroupReplicationContent ¶
type VolumeGroupReplicationContent struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec VolumeGroupReplicationContentSpec `json:"spec,omitempty"` Status VolumeGroupReplicationContentStatus `json:"status,omitempty"` }
VolumeGroupReplicationContent is the Schema for the volumegroupreplicationcontents API
func (*VolumeGroupReplicationContent) DeepCopy ¶
func (in *VolumeGroupReplicationContent) DeepCopy() *VolumeGroupReplicationContent
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeGroupReplicationContent.
func (*VolumeGroupReplicationContent) DeepCopyInto ¶
func (in *VolumeGroupReplicationContent) DeepCopyInto(out *VolumeGroupReplicationContent)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VolumeGroupReplicationContent) DeepCopyObject ¶
func (in *VolumeGroupReplicationContent) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type VolumeGroupReplicationContentList ¶
type VolumeGroupReplicationContentList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []VolumeGroupReplicationContent `json:"items"` }
VolumeGroupReplicationContentList contains a list of VolumeGroupReplicationContent
func (*VolumeGroupReplicationContentList) DeepCopy ¶
func (in *VolumeGroupReplicationContentList) DeepCopy() *VolumeGroupReplicationContentList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeGroupReplicationContentList.
func (*VolumeGroupReplicationContentList) DeepCopyInto ¶
func (in *VolumeGroupReplicationContentList) DeepCopyInto(out *VolumeGroupReplicationContentList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VolumeGroupReplicationContentList) DeepCopyObject ¶
func (in *VolumeGroupReplicationContentList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type VolumeGroupReplicationContentSource ¶
type VolumeGroupReplicationContentSource struct { // VolumeHandles is a list of volume handles on the backend to be grouped // and replicated. VolumeHandles []string `json:"volumeHandles"` }
VolumeGroupReplicationContentSource represents the CSI source of a group replication.
func (*VolumeGroupReplicationContentSource) DeepCopy ¶
func (in *VolumeGroupReplicationContentSource) DeepCopy() *VolumeGroupReplicationContentSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeGroupReplicationContentSource.
func (*VolumeGroupReplicationContentSource) DeepCopyInto ¶
func (in *VolumeGroupReplicationContentSource) DeepCopyInto(out *VolumeGroupReplicationContentSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumeGroupReplicationContentSpec ¶
type VolumeGroupReplicationContentSpec struct { // VolumeGroupreplicationRef specifies the VolumeGroupReplication object to which this // VolumeGroupReplicationContent object is bound. // VolumeGroupReplication.Spec.VolumeGroupReplicationContentName field must reference to // this VolumeGroupReplicationContent's name for the bidirectional binding to be valid. // For a pre-existing VolumeGroupReplicationContent object, name and namespace of the // VolumeGroupReplication object MUST be provided for binding to happen. // This field is immutable after creation. // Required. // +kubebuilder:validation:XValidation:rule="has(self.name) && has(self.__namespace__)",message="both volumeGroupReplicationRef.name and volumeGroupReplicationRef.namespace must be set" // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="volumeGroupReplicationRef is immutable" VolumeGroupReplicationRef corev1.ObjectReference `json:"volumeGroupReplicationRef"` // VolumeGroupReplicationHandle is a unique id returned by the CSI driver // to identify the VolumeGroupReplication on the storage system. VolumeGroupReplicationHandle string `json:"volumeGroupReplicationHandle"` // provisioner is the name of the CSI driver used to create the physical // volume group on // the underlying storage system. // This MUST be the same as the name returned by the CSI GetPluginName() call for // that driver. // Required. Provisioner string `json:"provisioner"` // VolumeGroupReplicationClassName is the name of the VolumeGroupReplicationClass from // which this group replication was (or will be) created. // +optional VolumeGroupReplicationClassName string `json:"volumeGroupReplicationClassName"` // Source specifies whether the snapshot is (or should be) dynamically provisioned // or already exists, and just requires a Kubernetes object representation. // This field is immutable after creation. // Required. Source VolumeGroupReplicationContentSource `json:"source"` }
VolumeGroupReplicationContentSpec defines the desired state of VolumeGroupReplicationContent
func (*VolumeGroupReplicationContentSpec) DeepCopy ¶
func (in *VolumeGroupReplicationContentSpec) DeepCopy() *VolumeGroupReplicationContentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeGroupReplicationContentSpec.
func (*VolumeGroupReplicationContentSpec) DeepCopyInto ¶
func (in *VolumeGroupReplicationContentSpec) DeepCopyInto(out *VolumeGroupReplicationContentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumeGroupReplicationContentStatus ¶
type VolumeGroupReplicationContentStatus struct { // PersistentVolumeRefList is the list of of PV for the group replication // The maximum number of allowed PV in the group is 100. // +optional PersistentVolumeRefList []corev1.LocalObjectReference `json:"persistentVolumeRefList,omitempty"` }
VolumeGroupReplicationContentStatus defines the status of VolumeGroupReplicationContent
func (*VolumeGroupReplicationContentStatus) DeepCopy ¶
func (in *VolumeGroupReplicationContentStatus) DeepCopy() *VolumeGroupReplicationContentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeGroupReplicationContentStatus.
func (*VolumeGroupReplicationContentStatus) DeepCopyInto ¶
func (in *VolumeGroupReplicationContentStatus) DeepCopyInto(out *VolumeGroupReplicationContentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumeGroupReplicationList ¶
type VolumeGroupReplicationList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []VolumeGroupReplication `json:"items"` }
VolumeGroupReplicationList contains a list of VolumeGroupReplication
func (*VolumeGroupReplicationList) DeepCopy ¶
func (in *VolumeGroupReplicationList) DeepCopy() *VolumeGroupReplicationList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeGroupReplicationList.
func (*VolumeGroupReplicationList) DeepCopyInto ¶
func (in *VolumeGroupReplicationList) DeepCopyInto(out *VolumeGroupReplicationList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VolumeGroupReplicationList) DeepCopyObject ¶
func (in *VolumeGroupReplicationList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type VolumeGroupReplicationSource ¶
type VolumeGroupReplicationSource struct { // Selector is a label query over persistent volume claims that are to be // grouped together for replication. // +optional // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="selector is immutable" Selector *metav1.LabelSelector `json:"selector,omitempty"` }
VolumeGroupReplicationSource specifies the source for the the volumeGroupReplication
func (*VolumeGroupReplicationSource) DeepCopy ¶
func (in *VolumeGroupReplicationSource) DeepCopy() *VolumeGroupReplicationSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeGroupReplicationSource.
func (*VolumeGroupReplicationSource) DeepCopyInto ¶
func (in *VolumeGroupReplicationSource) DeepCopyInto(out *VolumeGroupReplicationSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumeGroupReplicationSpec ¶
type VolumeGroupReplicationSpec struct { // volumeGroupReplicationClassName is the volumeGroupReplicationClass name for this VolumeGroupReplication resource // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="volumeGroupReplicationClassName is immutable" VolumeGroupReplicationClassName string `json:"volumeGroupReplicationClassName"` // volumeReplicationClassName is the volumeReplicationClass name for VolumeReplication object // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="volumReplicationClassName is immutable" VolumeReplicationClassName string `json:"volumeReplicationClassName"` // Name of the VolumeReplication object created for this volumeGroupReplication // +kubebuilder:validation:Optional // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="volumeReplicationName is immutable" VolumeReplicationName string `json:"volumeReplicationName,omitempty"` // Name of the VolumeGroupReplicationContent object created for this volumeGroupReplication // +kubebuilder:validation:Optional // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="volumeGroupReplicationContentName is immutable" VolumeGroupReplicationContentName string `json:"volumeGroupReplicationContentName,omitempty"` // Source specifies where a group replications will be created from. // This field is immutable after creation. // Required. // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="source is immutable" Source VolumeGroupReplicationSource `json:"source"` // ReplicationState represents the replication operation to be performed on the group. // Supported operations are "primary", "secondary" and "resync" // +kubebuilder:validation:Required ReplicationState ReplicationState `json:"replicationState"` // AutoResync represents the group to be auto resynced when // ReplicationState is "secondary" // +kubebuilder:default:=false AutoResync bool `json:"autoResync"` }
VolumeGroupReplicationSpec defines the desired state of VolumeGroupReplication
func (*VolumeGroupReplicationSpec) DeepCopy ¶
func (in *VolumeGroupReplicationSpec) DeepCopy() *VolumeGroupReplicationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeGroupReplicationSpec.
func (*VolumeGroupReplicationSpec) DeepCopyInto ¶
func (in *VolumeGroupReplicationSpec) DeepCopyInto(out *VolumeGroupReplicationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumeGroupReplicationStatus ¶
type VolumeGroupReplicationStatus struct { VolumeReplicationStatus `json:",inline"` // PersistentVolumeClaimsRefList is the list of PVCs for the volume group replication. // The maximum number of allowed PVCs in the group is 100. // +optional PersistentVolumeClaimsRefList []corev1.LocalObjectReference `json:"persistentVolumeClaimsRefList,omitempty"` }
VolumeGroupReplicationStatus defines the observed state of VolumeGroupReplication
func (*VolumeGroupReplicationStatus) DeepCopy ¶
func (in *VolumeGroupReplicationStatus) DeepCopy() *VolumeGroupReplicationStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeGroupReplicationStatus.
func (*VolumeGroupReplicationStatus) DeepCopyInto ¶
func (in *VolumeGroupReplicationStatus) DeepCopyInto(out *VolumeGroupReplicationStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumeReplication ¶
type VolumeReplication struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // +kubebuilder:validation:Required Spec VolumeReplicationSpec `json:"spec"` Status VolumeReplicationStatus `json:"status,omitempty"` }
VolumeReplication is the Schema for the volumereplications API.
func (*VolumeReplication) DeepCopy ¶
func (in *VolumeReplication) DeepCopy() *VolumeReplication
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeReplication.
func (*VolumeReplication) DeepCopyInto ¶
func (in *VolumeReplication) DeepCopyInto(out *VolumeReplication)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VolumeReplication) DeepCopyObject ¶
func (in *VolumeReplication) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type VolumeReplicationClass ¶
type VolumeReplicationClass struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // +kubebuilder:validation:Required Spec VolumeReplicationClassSpec `json:"spec"` Status VolumeReplicationClassStatus `json:"status,omitempty"` }
VolumeReplicationClass is the Schema for the volumereplicationclasses API.
func (*VolumeReplicationClass) DeepCopy ¶
func (in *VolumeReplicationClass) DeepCopy() *VolumeReplicationClass
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeReplicationClass.
func (*VolumeReplicationClass) DeepCopyInto ¶
func (in *VolumeReplicationClass) DeepCopyInto(out *VolumeReplicationClass)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VolumeReplicationClass) DeepCopyObject ¶
func (in *VolumeReplicationClass) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type VolumeReplicationClassList ¶
type VolumeReplicationClassList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []VolumeReplicationClass `json:"items"` }
VolumeReplicationClassList contains a list of VolumeReplicationClass.
func (*VolumeReplicationClassList) DeepCopy ¶
func (in *VolumeReplicationClassList) DeepCopy() *VolumeReplicationClassList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeReplicationClassList.
func (*VolumeReplicationClassList) DeepCopyInto ¶
func (in *VolumeReplicationClassList) DeepCopyInto(out *VolumeReplicationClassList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VolumeReplicationClassList) DeepCopyObject ¶
func (in *VolumeReplicationClassList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type VolumeReplicationClassSpec ¶
type VolumeReplicationClassSpec struct { // Provisioner is the name of storage provisioner // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="provisioner is immutable" Provisioner string `json:"provisioner"` // Parameters is a key-value map with storage provisioner specific configurations for // creating volume replicas // +kubebuilder:validation:Optional // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="parameters are immutable" Parameters map[string]string `json:"parameters,omitempty"` }
VolumeReplicationClassSpec specifies parameters that an underlying storage system uses when creating a volume replica. A specific VolumeReplicationClass is used by specifying its name in a VolumeReplication object. +kubebuilder:validation:XValidation:rule="has(self.parameters) == has(oldSelf.parameters)",message="parameters are immutable"
func (*VolumeReplicationClassSpec) DeepCopy ¶
func (in *VolumeReplicationClassSpec) DeepCopy() *VolumeReplicationClassSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeReplicationClassSpec.
func (*VolumeReplicationClassSpec) DeepCopyInto ¶
func (in *VolumeReplicationClassSpec) DeepCopyInto(out *VolumeReplicationClassSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumeReplicationClassStatus ¶
type VolumeReplicationClassStatus struct{}
VolumeReplicationClassStatus defines the observed state of VolumeReplicationClass.
func (*VolumeReplicationClassStatus) DeepCopy ¶
func (in *VolumeReplicationClassStatus) DeepCopy() *VolumeReplicationClassStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeReplicationClassStatus.
func (*VolumeReplicationClassStatus) DeepCopyInto ¶
func (in *VolumeReplicationClassStatus) DeepCopyInto(out *VolumeReplicationClassStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumeReplicationList ¶
type VolumeReplicationList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []VolumeReplication `json:"items"` }
VolumeReplicationList contains a list of VolumeReplication.
func (*VolumeReplicationList) DeepCopy ¶
func (in *VolumeReplicationList) DeepCopy() *VolumeReplicationList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeReplicationList.
func (*VolumeReplicationList) DeepCopyInto ¶
func (in *VolumeReplicationList) DeepCopyInto(out *VolumeReplicationList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VolumeReplicationList) DeepCopyObject ¶
func (in *VolumeReplicationList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type VolumeReplicationSpec ¶
type VolumeReplicationSpec struct { // VolumeReplicationClass is the VolumeReplicationClass name for this VolumeReplication resource // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="volumeReplicationClass is immutable" VolumeReplicationClass string `json:"volumeReplicationClass"` // ReplicationState represents the replication operation to be performed on the volume. // Supported operations are "primary", "secondary" and "resync" // +kubebuilder:validation:Required ReplicationState ReplicationState `json:"replicationState"` // DataSource represents the object associated with the volume // +kubebuilder:validation:Required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="dataSource is immutable" DataSource corev1.TypedLocalObjectReference `json:"dataSource"` // AutoResync represents the volume to be auto resynced when // ReplicationState is "secondary" // +kubebuilder:default:=false AutoResync bool `json:"autoResync"` // replicationHandle represents an existing (but new) replication id // +kubebuilder:validation:Optional ReplicationHandle string `json:"replicationHandle"` }
VolumeReplicationSpec defines the desired state of VolumeReplication.
func (*VolumeReplicationSpec) DeepCopy ¶
func (in *VolumeReplicationSpec) DeepCopy() *VolumeReplicationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeReplicationSpec.
func (*VolumeReplicationSpec) DeepCopyInto ¶
func (in *VolumeReplicationSpec) DeepCopyInto(out *VolumeReplicationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumeReplicationStatus ¶
type VolumeReplicationStatus struct { State State `json:"state,omitempty"` Message string `json:"message,omitempty"` // Conditions are the list of conditions and their status. Conditions []metav1.Condition `json:"conditions,omitempty"` // observedGeneration is the last generation change the operator has dealt with // +optional ObservedGeneration int64 `json:"observedGeneration,omitempty"` LastStartTime *metav1.Time `json:"lastStartTime,omitempty"` LastCompletionTime *metav1.Time `json:"lastCompletionTime,omitempty"` LastSyncTime *metav1.Time `json:"lastSyncTime,omitempty"` LastSyncBytes *int64 `json:"lastSyncBytes,omitempty"` LastSyncDuration *metav1.Duration `json:"lastSyncDuration,omitempty"` }
VolumeReplicationStatus defines the observed state of VolumeReplication.
func (*VolumeReplicationStatus) DeepCopy ¶
func (in *VolumeReplicationStatus) DeepCopy() *VolumeReplicationStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeReplicationStatus.
func (*VolumeReplicationStatus) DeepCopyInto ¶
func (in *VolumeReplicationStatus) DeepCopyInto(out *VolumeReplicationStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.