v1

package
v4.6.0 Latest Latest
Warning

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

Go to latest
Published: Dec 20, 2024 License: Apache-2.0 Imports: 3 Imported by: 3

Documentation

Overview

Package v1 is v1 version of the API

Package v1 contains API Schema definitions for the xuanwu v1 API group +kubebuilder:object:generate=true +groupName=xuanwu.huawei.io

Package v1 contains API Schema definitions for the xuanwu v1 API group

Package v1 contains API Schema definitions for the xuanwu v1 API group

Index

Constants

View Source
const GroupName = "xuanwu.huawei.io"

GroupName is the group name use in this package.

Variables

View Source
var (

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = schemeBuilder.AddToScheme
	// SchemeGroupVersion is group version used to register these objects.
	SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1"}
)

Functions

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type CapacityType

type CapacityType string

CapacityType type for capacity

const (
	// TotalCapacity the total capacity of the storage pool
	TotalCapacity CapacityType = "TotalCapacity"
	// UsedCapacity the total capacity of the storage pool
	UsedCapacity CapacityType = "UsedCapacity"
	// FreeCapacity the total capacity of the storage pool
	FreeCapacity CapacityType = "FreeCapacity"
)

type ModifyContents

type ModifyContents struct {
	// ModifyContentName used to config the VolumeModifyContent name.
	ModifyContentName string `json:"modifyContentName,omitempty" protobuf:"bytes,1,opt,name=modifyContentName"`

	// SourceVolume used to config the source PersistentVolumeClaim, format is <namespace>/<name>.
	SourceVolume string `json:"sourceVolume,omitempty" protobuf:"bytes,2,opt,name=sourceVolume"`

	// phase represents the current phase of VolumeModifyContent.
	// +optional
	Status VolumeModifyContentPhase `json:"status,omitempty" protobuf:"bytes,4,opt,name=status"`
}

ModifyContents defines the desired VolumeModifyContent status detail

func (*ModifyContents) DeepCopy

func (in *ModifyContents) DeepCopy() *ModifyContents

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

func (*ModifyContents) DeepCopyInto

func (in *ModifyContents) DeepCopyInto(out *ModifyContents)

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

type Pool

type Pool struct {
	Name       string            `json:"name,omitempty" protobuf:"bytes,1,opt,name=name"`
	Capacities map[string]string `json:"capacities,omitempty" protobuf:"bytes,1,opt,name=capacities"`
}

Pool is the schema for storage pool capacity

func (*Pool) DeepCopy

func (in *Pool) DeepCopy() *Pool

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

func (*Pool) DeepCopyInto

func (in *Pool) DeepCopyInto(out *Pool)

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

type StorageBackendClaim

type StorageBackendClaim struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`

	Spec   StorageBackendClaimSpec    `json:"spec,omitempty"`
	Status *StorageBackendClaimStatus `json:"status,omitempty"`
}

StorageBackendClaim is the Schema for the storageBackends API

func (*StorageBackendClaim) DeepCopy

func (in *StorageBackendClaim) DeepCopy() *StorageBackendClaim

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

func (*StorageBackendClaim) DeepCopyInto

func (in *StorageBackendClaim) DeepCopyInto(out *StorageBackendClaim)

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

func (*StorageBackendClaim) DeepCopyObject

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

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

type StorageBackendClaimList

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

StorageBackendClaimList contains a list of StorageBackend

func (*StorageBackendClaimList) DeepCopy

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

func (*StorageBackendClaimList) DeepCopyInto

func (in *StorageBackendClaimList) DeepCopyInto(out *StorageBackendClaimList)

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

func (*StorageBackendClaimList) DeepCopyObject

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

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

type StorageBackendClaimSpec

type StorageBackendClaimSpec struct {
	// Provider is required in storageBackend, used to filter the provider to add backend
	Provider string `json:"provider" protobuf:"bytes,1,name=provider"`

	// ConfigMapMeta used to config the storage management info, the format is <namespace>/<name>.
	// +optional
	ConfigMapMeta string `json:"configmapMeta,omitempty" protobuf:"bytes,8,opt,name=configmapMeta"`

	// SecretMeta used to config the storage sensitive info, the format is <namespace>/<name>.
	// +optional
	SecretMeta string `json:"secretMeta,omitempty" protobuf:"bytes,8,opt,name=secretMeta"`

	// maxClientThreads is used to limit the number of storage client request connections
	// +optional
	MaxClientThreads string `json:"maxClientThreads,omitempty" protobuf:"bytes,8,opt,name=maxClientThreads"`

	// User defined parameter for extension
	// +optional
	Parameters map[string]string `json:"parameters,omitempty" protobuf:"bytes,8,opt,name=parameters"`

	// UseCert is used to decide whether to use the certificate
	// +kubebuilder:default=false
	// +optional
	UseCert bool `json:"useCert,omitempty" protobuf:"bytes,9,opt,name=useCert"`

	// CertSecret is the name of the secret that holds the certificate
	// +optional
	CertSecret string `json:"certSecret,omitempty" protobuf:"bytes,9,opt,name=certSecret"`
}

StorageBackendClaimSpec defines the desired state of StorageBackend

func (*StorageBackendClaimSpec) DeepCopy

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

func (*StorageBackendClaimSpec) DeepCopyInto

func (in *StorageBackendClaimSpec) DeepCopyInto(out *StorageBackendClaimSpec)

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

type StorageBackendClaimStatus

type StorageBackendClaimStatus struct {
	// Phase represents the current phase of PersistentVolumeClaim
	// +optional
	Phase StorageBackendPhase `json:"phase,omitempty" protobuf:"bytes,1,opt,name=phase"`

	// StorageBackendId is required in storageBackend, used to filter the provider to add backend
	StorageBackendId string `json:"storageBackendId" protobuf:"bytes,1,name=storageBackendId"`

	// ConfigmapMeta is current storage configmap namespace and name, format is <namespace>/<name>,
	// such as xuanwu/backup-instance-configmap
	ConfigmapMeta string `json:"configmapMeta" protobuf:"bytes,1,name=configmapMeta"`

	// SecretMeta is current storage secret namespace and name, format is <namespace>/<name>,
	// such as xuanwu/backup-instance-secret
	SecretMeta string `json:"secretMeta" protobuf:"bytes,1,name=secretMeta"`

	// maxClientThreads is used to limit the number of storage client request connections
	// +optional
	MaxClientThreads string `json:"maxClientThreads,omitempty" protobuf:"bytes,8,opt,name=maxClientThreads"`

	// BoundContentName is the binding reference
	BoundContentName string `json:"boundContentName,omitempty" protobuf:"bytes,2,opt,name=boundContentName"`

	// StorageType is storage type
	StorageType string `json:"storageType,omitempty" protobuf:"bytes,2,opt,name=storageType"`

	// Protocol is used storage protocol
	Protocol string `json:"protocol,omitempty" protobuf:"bytes,2,opt,name=protocol"`

	// MetroBackend is the backend that form hyperMetro
	MetroBackend string `json:"metroBackend,omitempty" protobuf:"bytes,2,opt,name=metroBackend"`

	// UseCert is used to decide whether to use the certificate
	UseCert bool `json:"useCert,omitempty" protobuf:"bytes,9,opt,name=useCert"`

	// CertSecret is the name of the secret that holds the certificate
	CertSecret string `json:"certSecret,omitempty" protobuf:"bytes,9,opt,name=certSecret"`
}

StorageBackendClaimStatus defines the observed state of StorageBackend

func (*StorageBackendClaimStatus) DeepCopy

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

func (*StorageBackendClaimStatus) DeepCopyInto

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

type StorageBackendContent

type StorageBackendContent struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   StorageBackendContentSpec    `json:"spec,omitempty"`
	Status *StorageBackendContentStatus `json:"status,omitempty"`
}

StorageBackendContent is the Schema for the StorageBackendContents API

func (*StorageBackendContent) DeepCopy

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

func (*StorageBackendContent) DeepCopyInto

func (in *StorageBackendContent) DeepCopyInto(out *StorageBackendContent)

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

func (*StorageBackendContent) DeepCopyObject

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

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

type StorageBackendContentList

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

StorageBackendContentList contains a list of StorageBackendContent

func (*StorageBackendContentList) DeepCopy

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

func (*StorageBackendContentList) DeepCopyInto

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

func (*StorageBackendContentList) DeepCopyObject

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

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

type StorageBackendContentSpec

type StorageBackendContentSpec struct {
	// Provider is required in StorageBackendContent, used to filter the provider to add backend
	Provider string `json:"provider" protobuf:"bytes,1,name=provider"`

	// ConfigmapMeta is current storage configmap namespace and name, format is <namespace>/<name>.
	// such as xuanwu/backup-instance-configmap
	// +optional
	ConfigmapMeta string `json:"configmapMeta" protobuf:"bytes,1,name=configmapMeta"`

	// SecretMeta is current storage secret namespace and name, format is <namespace>/<name>.
	// such as xuanwu/backup-instance-secret
	// +optional
	SecretMeta string `json:"secretMeta" protobuf:"bytes,1,name=secretMeta"`

	// BackendClaim is the bound StorageBackendClaim namespace and name, format is <namespace>/<name>.
	// +optional
	BackendClaim string `json:"backendClaim,omitempty" protobuf:"bytes,1,opt,name=backendClaim"`

	// maxClientThreads is used to limit the number of storage client request connections
	// +optional
	MaxClientThreads string `json:"maxClientThreads,omitempty" protobuf:"bytes,8,opt,name=maxClientThreads"`

	// User defined parameter for extension
	// +optional
	Parameters map[string]string `json:"parameters,omitempty" protobuf:"bytes,8,opt,name=parameters"`

	// UseCert is used to decide whether to use the certificate
	// +kubebuilder:default=false
	// +optional
	UseCert bool `json:"useCert,omitempty" protobuf:"bytes,9,opt,name=useCert"`

	// CertSecret is the name of the secret that holds the certificate
	// +optional
	CertSecret string `json:"certSecret,omitempty" protobuf:"bytes,9,opt,name=certSecret"`
}

StorageBackendContentSpec defines the desired state of StorageBackendContent

func (*StorageBackendContentSpec) DeepCopy

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

func (*StorageBackendContentSpec) DeepCopyInto

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

type StorageBackendContentStatus

type StorageBackendContentStatus struct {
	// ContentName means the identity of the backend, the format is as follows: provider-name@backend-name#pool-name
	ContentName string `json:"contentName,omitempty" protobuf:"bytes,1,opt,name=contentName"`

	// VendorName means the flag of the storage vendor, such as EMC/IBM/NetApp/Huawei
	VendorName string `json:"vendorName,omitempty" protobuf:"bytes,1,opt,name=vendorName"`

	// ProviderVersion means the version of the provider
	ProviderVersion string `json:"providerVersion,omitempty" protobuf:"bytes,1,opt,name=providerVersion"`

	// Pools get all pools storage capacity
	Pools []Pool `json:"pools,omitempty" protobuf:"bytes,1,opt,name=pools"`

	// Capacity get the storage total capacity, used capacity and free capacity.
	Capacity map[CapacityType]string `json:"capacity,omitempty" protobuf:"bytes,1,opt,name=capacity"`

	// Capabilities get the storage total capacity, used capacity and free capacity.
	Capabilities map[string]bool `json:"capabilities,omitempty" protobuf:"bytes,1,opt,name=capabilities"`

	// Specification get the storage total specification of used capacity and free capacity.
	Specification map[string]string `json:"specification,omitempty" protobuf:"bytes,1,opt,name=specification"`

	// ConfigmapMeta is current storage configmap namespace and name, format is <namespace>/<name>.
	ConfigmapMeta string `json:"configmapMeta" protobuf:"bytes,1,name=configmapMeta"`

	// SecretMeta is current storage secret namespace and name, format is <namespace>/<name>.
	SecretMeta string `json:"secretMeta" protobuf:"bytes,1,name=secretMeta"`

	// Online indicates whether the storage login is successful
	Online bool `json:"online,omitempty" protobuf:"bytes,1,opt,name=online"`

	// maxClientThreads is used to limit the number of storage client request connections
	MaxClientThreads string `json:"maxClientThreads,omitempty" protobuf:"bytes,8,opt,name=maxClientThreads"`

	// SN is the unique identifier of a storage device.
	SN string `json:"sn,omitempty" protobuf:"bytes,1,opt,name=sn"`

	// UseCert is used to decide whether to use the certificate
	UseCert bool `json:"useCert,omitempty" protobuf:"bytes,9,opt,name=useCert"`

	// CertSecret is the name of the secret that holds the certificate
	CertSecret string `json:"certSecret,omitempty" protobuf:"bytes,9,opt,name=certSecret"`
}

StorageBackendContentStatus defines the observed state of StorageBackendContent

func (*StorageBackendContentStatus) DeepCopy

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

func (*StorageBackendContentStatus) DeepCopyInto

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

type StorageBackendPhase

type StorageBackendPhase string

StorageBackendPhase defines the phase of StorageBackend

const (
	// BackendPending means StorageBackend that are not yet bound
	BackendPending StorageBackendPhase = "Pending"
	// BackendBound means StorageBackend that are already bound
	BackendBound StorageBackendPhase = "Bound"
	// BackendUnavailable means StorageBackend failed to log in due to incorrect configurations(maybe wrong password)
	BackendUnavailable StorageBackendPhase = "Unavailable"
)

type VolumeModifyClaim

type VolumeModifyClaim struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`
	Spec              VolumeModifyClaimSpec   `json:"spec,omitempty"`
	Status            VolumeModifyClaimStatus `json:"status,omitempty"`
}

VolumeModifyClaim is the Schema for the VolumeModifyClaim API +genclient +genclient:nonNamespaced +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:object:root=true +kubebuilder:resource:scope=Cluster +kubebuilder:subresource:status +kubebuilder:resource:shortName="vmc" +kubebuilder:printcolumn:name="Status",type=string,JSONPath=`.status.phase` +kubebuilder:printcolumn:name="Ready",type=string,JSONPath=`.status.ready` +kubebuilder:printcolumn:name="SourceKind",type=string,priority=1,JSONPath=`.spec.source.kind` +kubebuilder:printcolumn:name="SourceName",type=string,priority=1,JSONPath=`.spec.source.name` +kubebuilder:printcolumn:name="StartedAt",type=string,priority=1,JSONPath=`.status.startedAt` +kubebuilder:printcolumn:name="CompletedAt",type=string,priority=1,JSONPath=`.status.completedAt` +kubebuilder:printcolumn:name="Age",type=date,JSONPath=`.metadata.creationTimestamp`

func (*VolumeModifyClaim) DeepCopy

func (in *VolumeModifyClaim) DeepCopy() *VolumeModifyClaim

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

func (*VolumeModifyClaim) DeepCopyInto

func (in *VolumeModifyClaim) DeepCopyInto(out *VolumeModifyClaim)

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

func (*VolumeModifyClaim) DeepCopyObject

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

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

type VolumeModifyClaimList

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

VolumeModifyClaimList contains a list of VolumeModifyClaim +kubebuilder:object:root=true +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*VolumeModifyClaimList) DeepCopy

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

func (*VolumeModifyClaimList) DeepCopyInto

func (in *VolumeModifyClaimList) DeepCopyInto(out *VolumeModifyClaimList)

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

func (*VolumeModifyClaimList) DeepCopyObject

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

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

type VolumeModifyClaimPhase

type VolumeModifyClaimPhase string

VolumeModifyClaimPhase defines the phase of VolumeModifyContent

const (
	// VolumeModifyClaimPending means the VolumeModifyClaim has been accepted. but the VolumeModifyContent has not been
	// created yet.
	VolumeModifyClaimPending VolumeModifyClaimPhase = "Pending"

	// VolumeModifyClaimCreating means the VolumeModifyClaim has been accepted, but one or more of VolumeModifyContent
	// has not been Completed.
	VolumeModifyClaimCreating VolumeModifyClaimPhase = "Creating"

	// VolumeModifyClaimCompleted means all associated VolumeModifyContent items have been completed.
	VolumeModifyClaimCompleted VolumeModifyClaimPhase = "Completed"

	// VolumeModifyClaimRollback means the VolumeModifyClaim receives the deletion request and starts rollback.
	VolumeModifyClaimRollback VolumeModifyClaimPhase = "Rollback"

	// VolumeModifyClaimDeleting means the VolumeModifyClaim start deleting.
	VolumeModifyClaimDeleting VolumeModifyClaimPhase = "Deleting"
)

type VolumeModifyClaimSpec

type VolumeModifyClaimSpec struct {
	// Source used to config the source resource.
	// +kubebuilder:validation:Required
	Source *VolumeModifySpecSource `json:"source" protobuf:"bytes,1,name=source"`

	// Parameters csi driver specific parameters passed in as opaque key-value pairs. This field is OPTIONAL.
	// The driver is responsible for parsing and validating these parameters.
	// +optional
	// +kubebuilder:validation:Required
	Parameters map[string]string `json:"parameters,omitempty" protobuf:"bytes,2,opt,name=parameters"`
}

VolumeModifyClaimSpec defines the desired spec of VolumeModifyClaim

func (*VolumeModifyClaimSpec) DeepCopy

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

func (*VolumeModifyClaimSpec) DeepCopyInto

func (in *VolumeModifyClaimSpec) DeepCopyInto(out *VolumeModifyClaimSpec)

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

type VolumeModifyClaimStatus

type VolumeModifyClaimStatus struct {
	// phase represents the current phase of VolumeModifyClaim.
	// +optional
	Phase VolumeModifyClaimPhase `json:"phase,omitempty" protobuf:"bytes,1,opt,name=phase"`

	// Contents used to save the VolumeModifyContent status detail
	// +optional
	Contents []ModifyContents `json:"contents,omitempty" protobuf:"bytes,2,opt,name=contents"`

	// Progress represents the current progress of VolumeModifyContent. This field is OPTIONAL.
	// +optional
	Ready string `json:"ready,omitempty" protobuf:"bytes,3,opt,name=ready"`

	// Parameters csi driver specific parameters passed in as opaque key-value pairs. This field is OPTIONAL.
	// The driver is responsible for parsing and validating these parameters.
	// +optional
	Parameters map[string]string `json:"parameters,omitempty" protobuf:"bytes,4,opt,name=parameters"`

	// StartedAt is a timestamp representing the server time when this job was created.
	// It is represented in RFC3339 form and is in UTC.
	// Populated by the system.
	// Read-only.
	// +optional
	StartedAt *metav1.Time `json:"startedAt,omitempty" protobuf:"bytes,5,opt,name=startedAt"`

	// CompletedAt is a timestamp representing the server time when this job was completed.
	// It is represented in RFC3339 form and is in UTC.
	// Populated by the system.
	// Read-only.
	// +optional
	CompletedAt *metav1.Time `json:"completedAt,omitempty" protobuf:"bytes,6,opt,name=completedAt"`
}

VolumeModifyClaimStatus defines the desired status of VolumeModifyClaim

func (*VolumeModifyClaimStatus) DeepCopy

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

func (*VolumeModifyClaimStatus) DeepCopyInto

func (in *VolumeModifyClaimStatus) DeepCopyInto(out *VolumeModifyClaimStatus)

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

type VolumeModifyContent

type VolumeModifyContent struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`

	Spec   VolumeModifyContentSpec   `json:"spec,omitempty"`
	Status VolumeModifyContentStatus `json:"status,omitempty"`
}

VolumeModifyContent is the Schema for the VolumeModifyContent API +genclient +genclient:nonNamespaced +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:object:root=true +kubebuilder:resource:scope=Cluster +kubebuilder:subresource:status +kubebuilder:resource:shortName="vmct" +kubebuilder:printcolumn:name="Status",type=string,JSONPath=`.status.phase` +kubebuilder:printcolumn:name="ModifyClaimName",type=string,JSONPath=`.spec.volumeModifyClaimName` +kubebuilder:printcolumn:name="SourceVolume",type=string,JSONPath=`.spec.sourceVolume` +kubebuilder:printcolumn:name="StartedAt",type=string,priority=1,JSONPath=`.status.startedAt` +kubebuilder:printcolumn:name="CompletedAt",type=string,priority=1,JSONPath=`.status.completedAt` +kubebuilder:printcolumn:name="Age",type=date,JSONPath=`.metadata.creationTimestamp`

func (*VolumeModifyContent) DeepCopy

func (in *VolumeModifyContent) DeepCopy() *VolumeModifyContent

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

func (*VolumeModifyContent) DeepCopyInto

func (in *VolumeModifyContent) DeepCopyInto(out *VolumeModifyContent)

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

func (*VolumeModifyContent) DeepCopyObject

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

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

type VolumeModifyContentList

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

VolumeModifyContentList contains a list of VolumeModifyContent +kubebuilder:object:root=true +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*VolumeModifyContentList) DeepCopy

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

func (*VolumeModifyContentList) DeepCopyInto

func (in *VolumeModifyContentList) DeepCopyInto(out *VolumeModifyContentList)

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

func (*VolumeModifyContentList) DeepCopyObject

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

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

type VolumeModifyContentPhase

type VolumeModifyContentPhase string

VolumeModifyContentPhase defines the phase of VolumeModifyContent

const (
	// VolumeModifyContentPending means the VolumeModifyContent has been accepted,
	// but modify didn't start.
	VolumeModifyContentPending VolumeModifyContentPhase = "Pending"

	// VolumeModifyContentCreating means the VolumeModifyContent has been accepted,
	// but it is in the process of being modified.
	VolumeModifyContentCreating VolumeModifyContentPhase = "Creating"

	// VolumeModifyContentCompleted means the VolumeModifyContent have been completed.
	VolumeModifyContentCompleted VolumeModifyContentPhase = "Completed"

	// VolumeModifyContentRollback means the VolumeModifyContent receives the deletion request and starts rollback.
	VolumeModifyContentRollback VolumeModifyContentPhase = "Rollback"

	// VolumeModifyContentDeleting means the VolumeModifyContent start deleting.
	VolumeModifyContentDeleting VolumeModifyContentPhase = "Deleting"
)

type VolumeModifyContentSpec

type VolumeModifyContentSpec struct {
	// VolumeModifyClaimName used to config the VolumeModifyClaim name.
	// +kubebuilder:validation:Required
	VolumeModifyClaimName string `json:"volumeModifyClaimName" protobuf:"bytes,1,name=volumeModifyClaimName"`

	// SourceVolume used to config the source PersistentVolumeClaim, format is <namespace>/<name>.
	// +kubebuilder:validation:Required
	SourceVolume string `json:"sourceVolume" protobuf:"bytes,2,name=sourceVolume"`

	// VolumeHandle used to config the source PersistentVolumeClaim volumeHandle.
	// +kubebuilder:validation:Required
	VolumeHandle string `json:"volumeHandle" protobuf:"bytes,2,name=volumeHandle"`

	// Parameters csi driver specific parameters passed in as opaque key-value pairs. This field is OPTIONAL.
	// The driver is responsible for parsing and validating these parameters.
	// +optional
	// +kubebuilder:validation:Optional
	Parameters map[string]string `json:"parameters,omitempty" protobuf:"bytes,3,opt,name=parameters"`

	// StorageClassParameters storageClass parameters
	// +optional
	// +kubebuilder:validation:Optional
	StorageClassParameters map[string]string `json:"storageClassParameters,omitempty" protobuf:"bytes,3,opt,name=storageClassParameters"`
}

VolumeModifyContentSpec defines the desired spec of VolumeModifyContent

func (*VolumeModifyContentSpec) DeepCopy

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

func (*VolumeModifyContentSpec) DeepCopyInto

func (in *VolumeModifyContentSpec) DeepCopyInto(out *VolumeModifyContentSpec)

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

type VolumeModifyContentStatus

type VolumeModifyContentStatus struct {
	// phase represents the current phase of VolumeModifyContent.
	// +optional
	Phase VolumeModifyContentPhase `json:"phase,omitempty" protobuf:"bytes,1,opt,name=phase"`

	// StartedAt is a timestamp representing the server time when this job was created.
	// It is represented in RFC3339 form and is in UTC.
	// Populated by the system.
	// Read-only.
	// +optional
	StartedAt *metav1.Time `json:"startedAt,omitempty" protobuf:"bytes,2,opt,name=startedAt"`

	// CompletedAt is a timestamp representing the server time when this job was completed.
	// It is represented in RFC3339 form and is in UTC.
	// Populated by the system.
	// Read-only.
	// +optional
	CompletedAt *metav1.Time `json:"completedAt,omitempty" protobuf:"bytes,3,opt,name=completedAt"`
}

VolumeModifyContentStatus defines the desired status of VolumeModifyContent

func (*VolumeModifyContentStatus) DeepCopy

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

func (*VolumeModifyContentStatus) DeepCopyInto

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

type VolumeModifySpecSource

type VolumeModifySpecSource struct {
	// Kind is a string value representing the source kind, default StorageClass.
	// +kubebuilder:default=StorageClass
	Kind string `json:"kind,omitempty" protobuf:"bytes,1,opt,name=kind"`

	// Name is the name of the resource
	// +kubebuilder:validation:Required
	Name string `json:"name" protobuf:"bytes,2,name=name"`
	// NameSpace is the namespace of the resource
	// +optional
	Namespace string `json:"namespace,omitempty" protobuf:"bytes,3,opt,name=namespace"`
}

VolumeModifySpecSource defines the desired source of VolumeModifyClaim

func (*VolumeModifySpecSource) DeepCopy

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

func (*VolumeModifySpecSource) DeepCopyInto

func (in *VolumeModifySpecSource) DeepCopyInto(out *VolumeModifySpecSource)

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