Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the rainbond v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=rainbond.io
Package v1alpha1 contains API Schema definitions for the rainbond v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=rainbond.io
Index ¶
- Constants
- Variables
- func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition
- func Resource(resource string) schema.GroupResource
- type AliyunCloudDiskCSIPluginSource
- type AliyunNasCSIPluginSource
- type AvailableNodes
- type CSIPluginSource
- type Database
- type EtcdConfig
- type ImageHub
- type InstallMode
- type InstallPackageConfig
- type K8sNode
- type NFSCSIPluginSource
- type PackageCondition
- type PackageConditionStatus
- type PackageConditionType
- type RainbondCluster
- func (in *RainbondCluster) DeepCopy() *RainbondCluster
- func (in *RainbondCluster) DeepCopyInto(out *RainbondCluster)
- func (in *RainbondCluster) DeepCopyObject() runtime.Object
- func (r *RainbondCluster) FirstGatewayEIP() string
- func (in *RainbondCluster) GatewayIngressIP() string
- func (in *RainbondCluster) GatewayIngressIPs() (ips []string)
- func (in *RainbondCluster) InnerGatewayIngressIP() string
- type RainbondClusterCondition
- type RainbondClusterConditionType
- type RainbondClusterList
- type RainbondClusterSpec
- type RainbondClusterStatus
- func (in *RainbondClusterStatus) DeepCopy() *RainbondClusterStatus
- func (in *RainbondClusterStatus) DeepCopyInto(out *RainbondClusterStatus)
- func (r *RainbondClusterStatus) DeleteCondition(typ3 RainbondClusterConditionType)
- func (r *RainbondClusterStatus) GetCondition(t RainbondClusterConditionType) (int, *RainbondClusterCondition)
- func (r *RainbondClusterStatus) SetCondition(c RainbondClusterCondition)
- func (r *RainbondClusterStatus) UpdateCondition(condition *RainbondClusterCondition) bool
- type RainbondPackage
- type RainbondPackageImage
- type RainbondPackageList
- type RainbondPackagePhase
- type RainbondPackageSpec
- type RainbondPackageStatus
- type RainbondVolume
- type RainbondVolumeCondition
- type RainbondVolumeConditionType
- type RainbondVolumeList
- type RainbondVolumeSpec
- type RainbondVolumeStatus
- func (in *RainbondVolumeStatus) DeepCopy() *RainbondVolumeStatus
- func (in *RainbondVolumeStatus) DeepCopyInto(out *RainbondVolumeStatus)
- func (in *RainbondVolumeStatus) GetRainbondVolumeCondition(t RainbondVolumeConditionType) (int, *RainbondVolumeCondition)
- func (in *RainbondVolumeStatus) UpdateRainbondVolumeCondition(condition *RainbondVolumeCondition) bool
- type RbdComponent
- type RbdComponentCondition
- type RbdComponentConditionType
- type RbdComponentList
- type RbdComponentSpec
- type RbdComponentStatus
- func (in *RbdComponentStatus) DeepCopy() *RbdComponentStatus
- func (in *RbdComponentStatus) DeepCopyInto(out *RbdComponentStatus)
- func (r *RbdComponentStatus) GetCondition(t RbdComponentConditionType) (int, *RbdComponentCondition)
- func (r *RbdComponentStatus) SetCondition(c RbdComponentCondition)
- func (r *RbdComponentStatus) UpdateCondition(condition *RbdComponentCondition) bool
- type StorageClass
- type StorageClassParameters
Constants ¶
const ( RainbondClusterConditionTypeDatabaseRegion = "DatabaseRegion" RainbondClusterConditionTypeDatabaseConsole = "DatabaseConsole" RainbondClusterConditionTypeImageRepository = "ImageRepository" RainbondClusterConditionTypeKubernetesVersion = "KubernetesVersion" RainbondClusterConditionTypeKubernetesStatus = "KubernetesStatus" RainbondClusterConditionTypeStorage = "Storage" RainbondClusterConditionTypeDNS = "DNS" RainbondClusterConditionTypeContainerNetwork = "ContainerNetwork" RainbondClusterConditionTypeRunning = "Running" RainbondClusterConditionTypeMemory = "Memory" )
These are valid conditions of rainbondcluster.
Variables ¶
var ( // SchemeGroupVersion is group version used to register these objects SchemeGroupVersion = schema.GroupVersion{Group: "rainbond.io", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} // AddToScheme adds all registered types to s. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
func GetOpenAPIDefinitions ¶
func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource gets an EtcdCluster GroupResource for a specified resource
Types ¶
type AliyunCloudDiskCSIPluginSource ¶
type AliyunCloudDiskCSIPluginSource struct { // The AccessKey ID provided by Alibaba Cloud for access control. AccessKeyID string `json:"accessKeyID"` // The AccessKey Secret provided by Alibaba Cloud for access control AccessKeySecret string `json:"accessKeySecret"` // maxVolumePerNode MaxVolumePerNode string `json:"maxVolumePerNode"` }
AliyunCloudDiskCSIPluginSource represents a aliyun cloud disk CSI plugin. More info: https://github.com/kubernetes-sigs/alibaba-cloud-csi-driver/blob/master/docs/disk.md
func (*AliyunCloudDiskCSIPluginSource) DeepCopy ¶
func (in *AliyunCloudDiskCSIPluginSource) DeepCopy() *AliyunCloudDiskCSIPluginSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AliyunCloudDiskCSIPluginSource.
func (*AliyunCloudDiskCSIPluginSource) DeepCopyInto ¶
func (in *AliyunCloudDiskCSIPluginSource) DeepCopyInto(out *AliyunCloudDiskCSIPluginSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AliyunNasCSIPluginSource ¶
type AliyunNasCSIPluginSource struct { // The AccessKey ID provided by Alibaba Cloud for access control. AccessKeyID string `json:"accessKeyID"` // The AccessKey Secret provided by Alibaba Cloud for access control AccessKeySecret string `json:"accessKeySecret"` }
AliyunNasCSIPluginSource represents a aliyun cloud nas CSI plugin. More info: https://github.com/GLYASAI/alibaba-cloud-csi-driver/blob/master/docs/nas.md
func (*AliyunNasCSIPluginSource) DeepCopy ¶
func (in *AliyunNasCSIPluginSource) DeepCopy() *AliyunNasCSIPluginSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AliyunNasCSIPluginSource.
func (*AliyunNasCSIPluginSource) DeepCopyInto ¶
func (in *AliyunNasCSIPluginSource) DeepCopyInto(out *AliyunNasCSIPluginSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AvailableNodes ¶
type AvailableNodes struct { // The nodes with user-specified labels. SpecifiedNodes []*K8sNode `json:"specifiedNodes,omitempty"` // A list of kubernetes master nodes. MasterNodes []*K8sNode `json:"masterNodes,omitempty"` }
AvailableNodes contains nodes available for special rainbond components to run, such as rbd-gateway, rbd-chaos.
func (*AvailableNodes) DeepCopy ¶
func (in *AvailableNodes) DeepCopy() *AvailableNodes
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AvailableNodes.
func (*AvailableNodes) DeepCopyInto ¶
func (in *AvailableNodes) DeepCopyInto(out *AvailableNodes)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CSIPluginSource ¶
type CSIPluginSource struct { // AliyunCloudDiskCSIPluginSource represents a aliyun cloud disk CSI plugin. // More info: https://github.com/kubernetes-sigs/alibaba-cloud-csi-driver/blob/master/docs/disk.md AliyunCloudDisk *AliyunCloudDiskCSIPluginSource `json:"aliyunCloudDisk,omitempty"` // AliyunNasCSIPluginSource represents a aliyun cloud nas CSI plugin. // More info: https://github.com/GLYASAI/alibaba-cloud-csi-driver/blob/master/docs/nas.md AliyunNas *AliyunNasCSIPluginSource `json:"aliyunNas,omitempty"` // NFSCSIPluginSource represents a nfs CSI plugin. // More info: https://github.com/kubernetes-incubator/external-storage/tree/master/nfs NFS *NFSCSIPluginSource `json:"nfs,omitempty"` }
CSIPluginSource represents the source of a csi driver to create. Only one of its members may be specified.
func (*CSIPluginSource) DeepCopy ¶
func (in *CSIPluginSource) DeepCopy() *CSIPluginSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSIPluginSource.
func (*CSIPluginSource) DeepCopyInto ¶
func (in *CSIPluginSource) DeepCopyInto(out *CSIPluginSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Database ¶
type Database struct { Host string `json:"host,omitempty"` Port int `json:"port,omitempty"` Username string `json:"username,omitempty"` Password string `json:"password,omitempty"` Name string `json:"name,omitempty"` }
Database defines the connection information of database.
func (*Database) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Database.
func (*Database) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Database) RegionDataSource ¶
RegionDataSource returns the data source for database region.
type EtcdConfig ¶
type EtcdConfig struct { // Endpoints is a list of URLs. Endpoints []string `json:"endpoints,omitempty"` // Whether to use tls to connect to etcd SecretName string `json:"secretName,omitempty"` }
EtcdConfig defines the configuration of etcd client.
func (*EtcdConfig) DeepCopy ¶
func (in *EtcdConfig) DeepCopy() *EtcdConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EtcdConfig.
func (*EtcdConfig) DeepCopyInto ¶
func (in *EtcdConfig) DeepCopyInto(out *EtcdConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ImageHub ¶
type ImageHub struct { Domain string `json:"domain,omitempty"` Namespace string `json:"namespace,omitempty"` Username string `json:"username,omitempty"` Password string `json:"password,omitempty"` }
ImageHub image hub
func (*ImageHub) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageHub.
func (*ImageHub) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InstallMode ¶
type InstallMode string
InstallMode is the mode of Rainbond cluster installation
const ( // InstallationModeWithoutPackage means all Rainbond images are from the specified image repository, but still needs rainbond package. InstallationModeWithoutPackage InstallMode = "Online" // InstallationModeFullOnline means all Rainbond images are from the specified image repository. InstallationModeFullOnline InstallMode = "FullOnline" // InstallationModeFullOffline means all Rainbond images are from the specified image repository. InstallationModeOffline InstallMode = "Offline" // LabelNodeRolePrefix is a label prefix for node roles // It's copied over to here until it's merged in core: https://github.com/kubernetes/kubernetes/pull/39112 LabelNodeRolePrefix = "node-role.kubernetes.io/" // NodeLabelRole specifies the role of a node NodeLabelRole = "kubernetes.io/role" )
type InstallPackageConfig ¶
type InstallPackageConfig struct { URL string `json:"url,omitempty"` MD5 string `json:"md5,omitempty"` }
InstallPackageConfig define install package download config
func (*InstallPackageConfig) DeepCopy ¶
func (in *InstallPackageConfig) DeepCopy() *InstallPackageConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstallPackageConfig.
func (*InstallPackageConfig) DeepCopyInto ¶
func (in *InstallPackageConfig) DeepCopyInto(out *InstallPackageConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type K8sNode ¶
type K8sNode struct { Name string `json:"name,omitempty"` InternalIP string `json:"internalIP,omitempty"` ExternalIP string `json:"externalIP,omitempty"` }
K8sNode holds the information about a kubernetes node.
func (*K8sNode) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new K8sNode.
func (*K8sNode) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NFSCSIPluginSource ¶
type NFSCSIPluginSource struct { }
NFSCSIPluginSource represents a nfs CSI plugin. More info: https://github.com/kubernetes-incubator/external-storage/tree/master/nfs
func (*NFSCSIPluginSource) DeepCopy ¶
func (in *NFSCSIPluginSource) DeepCopy() *NFSCSIPluginSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NFSCSIPluginSource.
func (*NFSCSIPluginSource) DeepCopyInto ¶
func (in *NFSCSIPluginSource) DeepCopyInto(out *NFSCSIPluginSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PackageCondition ¶
type PackageCondition struct { // Type of package condition. Type PackageConditionType `json:"type" ` // Status of the condition, one of True, False, Unknown. Status PackageConditionStatus `json:"status" ` // Last time we got an update on a given condition. // +optional LastHeartbeatTime metav1.Time `json:"lastHeartbeatTime,omitempty" ` // Last time the condition transit from one status to another. // +optional LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty" ` // (brief) reason for the condition's last transition. // +optional Reason string `json:"reason,omitempty"` // Human readable message indicating details about last transition. // +optional Message string `json:"message,omitempty"` // The progress of the condition // +optional Progress int `json:"progress,omitempty"` }
PackageCondition contains condition information for package.
func (*PackageCondition) DeepCopy ¶
func (in *PackageCondition) DeepCopy() *PackageCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PackageCondition.
func (*PackageCondition) DeepCopyInto ¶
func (in *PackageCondition) DeepCopyInto(out *PackageCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PackageConditionStatus ¶
type PackageConditionStatus string
PackageConditionStatus condition status
const ( //Waiting waiting Waiting PackageConditionStatus = "Waiting" //Running Running Running PackageConditionStatus = "Running" //Completed Completed Completed PackageConditionStatus = "Completed" //Failed Failed Failed PackageConditionStatus = "Failed" )
type PackageConditionType ¶
type PackageConditionType string
PackageConditionType PackageConditionType
const ( // PackageConditionType means this package handle status Init PackageConditionType = "Init" DownloadPackage PackageConditionType = "DownloadPackage" UnpackPackage PackageConditionType = "UnpackPackage" PushImage PackageConditionType = "PushImage" Ready PackageConditionType = "Ready" )
These are valid conditions of package.
type RainbondCluster ¶
type RainbondCluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec RainbondClusterSpec `json:"spec,omitempty"` Status *RainbondClusterStatus `json:"status,omitempty"` }
RainbondCluster is the Schema for the rainbondclusters API +kubebuilder:subresource:status +kubebuilder:resource:path=rainbondclusters,scope=Namespaced
func (*RainbondCluster) DeepCopy ¶
func (in *RainbondCluster) DeepCopy() *RainbondCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RainbondCluster.
func (*RainbondCluster) DeepCopyInto ¶
func (in *RainbondCluster) DeepCopyInto(out *RainbondCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RainbondCluster) DeepCopyObject ¶
func (in *RainbondCluster) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*RainbondCluster) FirstGatewayEIP ¶
func (r *RainbondCluster) FirstGatewayEIP() string
FirstGatewayEIP returns the first external ip of the nodesforgateway list.
func (*RainbondCluster) GatewayIngressIP ¶
func (in *RainbondCluster) GatewayIngressIP() string
GatewayIngressIP returns the gateway ip, or take the internal ip of the first node for gateway if it's not exists.
func (*RainbondCluster) GatewayIngressIPs ¶
func (in *RainbondCluster) GatewayIngressIPs() (ips []string)
GatewayIngressIPs get all gateway ips
func (*RainbondCluster) InnerGatewayIngressIP ¶ added in v1.3.0
func (in *RainbondCluster) InnerGatewayIngressIP() string
InnerGatewayIngressIP -
type RainbondClusterCondition ¶ added in v1.3.0
type RainbondClusterCondition struct { // Type of rainbondclsuter condition. Type RainbondClusterConditionType `json:"type" ` // Status of the condition, one of True, False, Unknown. Status corev1.ConditionStatus `json:"status" ` // Last time we got an update on a given condition. // +optional LastHeartbeatTime metav1.Time `json:"lastHeartbeatTime,omitempty" ` // Last time the condition transit from one status to another. // +optional LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty" ` // (brief) reason for the condition's last transition. // +optional Reason string `json:"reason,omitempty"` // Human readable message indicating details about last transition. // +optional Message string `json:"message,omitempty"` }
RainbondClusterCondition contains condition information for rainbondcluster.
func NewRainbondClusterCondition ¶ added in v1.3.0
func NewRainbondClusterCondition(condType RainbondClusterConditionType, status v1.ConditionStatus, reason, message string) *RainbondClusterCondition
NewRainbondClusterCondition creates a new rianbondcluster condition.
func (*RainbondClusterCondition) DeepCopy ¶ added in v1.3.0
func (in *RainbondClusterCondition) DeepCopy() *RainbondClusterCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RainbondClusterCondition.
func (*RainbondClusterCondition) DeepCopyInto ¶ added in v1.3.0
func (in *RainbondClusterCondition) DeepCopyInto(out *RainbondClusterCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RainbondClusterConditionType ¶ added in v1.3.0
type RainbondClusterConditionType string
RainbondClusterConditionType is the type of rainbondclsuter condition.
type RainbondClusterList ¶
type RainbondClusterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []RainbondCluster `json:"items"` }
RainbondClusterList contains a list of RainbondCluster
func (*RainbondClusterList) DeepCopy ¶
func (in *RainbondClusterList) DeepCopy() *RainbondClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RainbondClusterList.
func (*RainbondClusterList) DeepCopyInto ¶
func (in *RainbondClusterList) DeepCopyInto(out *RainbondClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RainbondClusterList) DeepCopyObject ¶
func (in *RainbondClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RainbondClusterSpec ¶
type RainbondClusterSpec struct { // EnableHA is a highly available switch. EnableHA bool `json:"enableHA,omitempty"` // Repository of each Rainbond component image, eg. docker.io/rainbond. // +optional RainbondImageRepository string `json:"rainbondImageRepository,omitempty"` // Suffix of component default domain name SuffixHTTPHost string `json:"suffixHTTPHost"` // Ingress IP addresses of rbd-gateway. If not specified, // the IP of the node where the rbd-gateway is located will be used. GatewayIngressIPs []string `json:"gatewayIngressIPs,omitempty"` // Specify the nodes where the rbd-gateway will running. NodesForGateway []*K8sNode `json:"nodesForGateway,omitempty"` // Specify the nodes where the rbd-gateway will running. NodesForChaos []*K8sNode `json:"nodesForChaos,omitempty"` // InstallMode is the mode of Rainbond cluster installation. InstallMode InstallMode `json:"installMode,omitempty"` // User-specified private image repository, replacing goodrain.me. ImageHub *ImageHub `json:"imageHub,omitempty"` // the region database information that rainbond component will be used. // rainbond-operator will create one if DBInfo is empty RegionDatabase *Database `json:"regionDatabase,omitempty"` // the ui database information that rainbond component will be used. // rainbond-operator will create one if DBInfo is empty UIDatabase *Database `json:"uiDatabase,omitempty"` // the etcd connection information that rainbond component will be used. // rainbond-operator will create one if EtcdConfig is empty EtcdConfig *EtcdConfig `json:"etcdConfig,omitempty"` // define install rainbond version, This is usually image tag InstallVersion string `json:"installVersion,omitempty"` // Whether the configuration has been completed ConfigCompleted bool `json:"configCompleted,omitempty"` RainbondVolumeSpecRWX *RainbondVolumeSpec `json:"rainbondVolumeSpecRWX,omitempty"` RainbondVolumeSpecRWO *RainbondVolumeSpec `json:"rainbondVolumeSpecRWO,omitempty"` // SentinelImage is the image for rainbond operator sentinel SentinelImage string `json:"sentinelImage,omitempty"` // RbdComponents is a list of rainbond cluster components RbdComponents []*RbdComponent `json:"rbdComponents,omitempty"` }
RainbondClusterSpec defines the desired state of RainbondCluster
func (*RainbondClusterSpec) DeepCopy ¶
func (in *RainbondClusterSpec) DeepCopy() *RainbondClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RainbondClusterSpec.
func (*RainbondClusterSpec) DeepCopyInto ¶
func (in *RainbondClusterSpec) DeepCopyInto(out *RainbondClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RainbondClusterStatus ¶
type RainbondClusterStatus struct { // Versoin of Kubernetes KubernetesVersoin string `json:"kubernetesVersoin,omitempty"` // List of existing StorageClasses in the cluster // +optional StorageClasses []*StorageClass `json:"storageClasses,omitempty"` // Destination path of the installation package extraction. MasterRoleLabel string `json:"masterRoleLabel,omitempty"` // holds some recommend nodes available for rbd-gateway to run. GatewayAvailableNodes *AvailableNodes `json:"gatewayAvailableNodes,omitempty"` // holds some recommend nodes available for rbd-chaos to run. ChaosAvailableNodes *AvailableNodes `json:"chaosAvailableNodes,omitempty"` // Deprecated. ImagePullUsername is the username to pull any of images used by PodSpec ImagePullUsername string `json:"imagePullUsername,omitempty"` // Deprecated. ImagePullPassword is the password to pull any of images used by PodSpec ImagePullPassword string `json:"imagePullPassword,omitempty"` // ImagePullSecret is an optional references to secret in the same namespace to use for pulling any of the images used by PodSpec. ImagePullSecret corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"` Conditions []RainbondClusterCondition `json:"conditions,omitempty"` }
RainbondClusterStatus defines the observed state of RainbondCluster
func (*RainbondClusterStatus) DeepCopy ¶
func (in *RainbondClusterStatus) DeepCopy() *RainbondClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RainbondClusterStatus.
func (*RainbondClusterStatus) DeepCopyInto ¶
func (in *RainbondClusterStatus) DeepCopyInto(out *RainbondClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RainbondClusterStatus) DeleteCondition ¶ added in v1.3.0
func (r *RainbondClusterStatus) DeleteCondition(typ3 RainbondClusterConditionType)
func (*RainbondClusterStatus) GetCondition ¶ added in v1.3.0
func (r *RainbondClusterStatus) GetCondition(t RainbondClusterConditionType) (int, *RainbondClusterCondition)
GetCondition returns a rbdcomponent condition based on the given type.
func (*RainbondClusterStatus) SetCondition ¶ added in v1.3.0
func (r *RainbondClusterStatus) SetCondition(c RainbondClusterCondition)
SetCondition setups the given rainbondcluster condition.
func (*RainbondClusterStatus) UpdateCondition ¶ added in v1.3.0
func (r *RainbondClusterStatus) UpdateCondition(condition *RainbondClusterCondition) bool
UpdateCondition updates existing rbdcomponent condition or creates a new one. Sets LastTransitionTime to now if the status has changed. Returns true if rbdcomponent condition has changed or has been added.
type RainbondPackage ¶
type RainbondPackage struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec RainbondPackageSpec `json:"spec,omitempty"` Status *RainbondPackageStatus `json:"status,omitempty"` }
RainbondPackage is the Schema for the rainbondpackages API +kubebuilder:subresource:status +kubebuilder:resource:path=rainbondpackages,scope=Namespaced
func (*RainbondPackage) DeepCopy ¶
func (in *RainbondPackage) DeepCopy() *RainbondPackage
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RainbondPackage.
func (*RainbondPackage) DeepCopyInto ¶
func (in *RainbondPackage) DeepCopyInto(out *RainbondPackage)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RainbondPackage) DeepCopyObject ¶
func (in *RainbondPackage) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RainbondPackageImage ¶
type RainbondPackageImage struct { //Name image name Name string `json:"name,omitempty"` }
RainbondPackageImage image
func (*RainbondPackageImage) DeepCopy ¶
func (in *RainbondPackageImage) DeepCopy() *RainbondPackageImage
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RainbondPackageImage.
func (*RainbondPackageImage) DeepCopyInto ¶
func (in *RainbondPackageImage) DeepCopyInto(out *RainbondPackageImage)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RainbondPackageList ¶
type RainbondPackageList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []RainbondPackage `json:"items"` }
RainbondPackageList contains a list of RainbondPackage
func (*RainbondPackageList) DeepCopy ¶
func (in *RainbondPackageList) DeepCopy() *RainbondPackageList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RainbondPackageList.
func (*RainbondPackageList) DeepCopyInto ¶
func (in *RainbondPackageList) DeepCopyInto(out *RainbondPackageList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RainbondPackageList) DeepCopyObject ¶
func (in *RainbondPackageList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RainbondPackagePhase ¶
type RainbondPackagePhase string
RainbondPackagePhase is a label for the condition of a rainbondcluster at the current time.
type RainbondPackageSpec ¶
type RainbondPackageSpec struct { // Deprecated: The path where the rainbond package is located. PkgPath string `json:"pkgPath"` }
RainbondPackageSpec defines the desired state of RainbondPackage
func (*RainbondPackageSpec) DeepCopy ¶
func (in *RainbondPackageSpec) DeepCopy() *RainbondPackageSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RainbondPackageSpec.
func (*RainbondPackageSpec) DeepCopyInto ¶
func (in *RainbondPackageSpec) DeepCopyInto(out *RainbondPackageSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RainbondPackageStatus ¶
type RainbondPackageStatus struct { //worker and master maintenance Conditions []PackageCondition `json:"conditions,omitempty"` // The number of images that should be load and pushed. ImagesNumber int32 `json:"imagesNumber"` // ImagesPushed contains the images have been pushed. ImagesPushed []RainbondPackageImage `json:"images,omitempty"` }
RainbondPackageStatus defines the observed state of RainbondPackage
func (*RainbondPackageStatus) DeepCopy ¶
func (in *RainbondPackageStatus) DeepCopy() *RainbondPackageStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RainbondPackageStatus.
func (*RainbondPackageStatus) DeepCopyInto ¶
func (in *RainbondPackageStatus) DeepCopyInto(out *RainbondPackageStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RainbondPackageStatus) GetCondition ¶
func (r *RainbondPackageStatus) GetCondition(t PackageConditionType) (int, *PackageCondition)
GetCondition returns a rainbondpackage condition based on the given type.
type RainbondVolume ¶
type RainbondVolume struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec RainbondVolumeSpec `json:"spec,omitempty"` Status RainbondVolumeStatus `json:"status,omitempty"` }
RainbondVolume is the Schema for the rainbondvolumes API +kubebuilder:subresource:status +kubebuilder:resource:path=rainbondvolumes,scope=Namespaced
func (*RainbondVolume) DeepCopy ¶
func (in *RainbondVolume) DeepCopy() *RainbondVolume
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RainbondVolume.
func (*RainbondVolume) DeepCopyInto ¶
func (in *RainbondVolume) DeepCopyInto(out *RainbondVolume)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RainbondVolume) DeepCopyObject ¶
func (in *RainbondVolume) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RainbondVolumeCondition ¶
type RainbondVolumeCondition struct { // Type of rainbondvolume condition. Type RainbondVolumeConditionType `json:"type"` // Status of the condition, one of True, False, Unknown. Status v1.ConditionStatus `json:"status"` // Last time the condition transitioned from one status to another. LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"` // The reason for the condition's last transition. Reason string `json:"reason,omitempty"` // A human readable message indicating details about the transition. Message string `json:"message,omitempty"` }
RainbondVolumeCondition represents one current condition of an rainbondvolume.
func (*RainbondVolumeCondition) DeepCopy ¶
func (in *RainbondVolumeCondition) DeepCopy() *RainbondVolumeCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RainbondVolumeCondition.
func (*RainbondVolumeCondition) DeepCopyInto ¶
func (in *RainbondVolumeCondition) DeepCopyInto(out *RainbondVolumeCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RainbondVolumeConditionType ¶
type RainbondVolumeConditionType string
RainbondVolumeConditionType -
const ( // RainbondVolumeReady means the raionbondvolume is ready. RainbondVolumeReady RainbondVolumeConditionType = "Ready" // RainbondVolumeProgressing means the raionbondvolume is progressing. RainbondVolumeProgressing RainbondVolumeConditionType = "Progressing" )
type RainbondVolumeList ¶
type RainbondVolumeList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []RainbondVolume `json:"items"` }
RainbondVolumeList contains a list of RainbondVolume
func (*RainbondVolumeList) DeepCopy ¶
func (in *RainbondVolumeList) DeepCopy() *RainbondVolumeList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RainbondVolumeList.
func (*RainbondVolumeList) DeepCopyInto ¶
func (in *RainbondVolumeList) DeepCopyInto(out *RainbondVolumeList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RainbondVolumeList) DeepCopyObject ¶
func (in *RainbondVolumeList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RainbondVolumeSpec ¶
type RainbondVolumeSpec struct { // The name of StorageClass, which is a kind of kubernetes resource. // It will used to create pvc for rainbond components. // More info: https://kubernetes.io/docs/concepts/storage/storage-classes/ StorageClassName string `json:"storageClassName,omitempty"` StorageClassParameters *StorageClassParameters `json:"storageClassParameters,omitempty"` // CSIPlugin holds the image CSIPlugin *CSIPluginSource `json:"csiPlugin,omitempty"` StorageRequest *int32 `json:"storageRequest,omitempty"` ImageRepository string `json:"imageRepository"` }
RainbondVolumeSpec defines the desired state of RainbondVolume
func (*RainbondVolumeSpec) DeepCopy ¶
func (in *RainbondVolumeSpec) DeepCopy() *RainbondVolumeSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RainbondVolumeSpec.
func (*RainbondVolumeSpec) DeepCopyInto ¶
func (in *RainbondVolumeSpec) DeepCopyInto(out *RainbondVolumeSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RainbondVolumeStatus ¶
type RainbondVolumeStatus struct { // Condition keeps track of all rainbondvolume conditions, if they exist. Conditions []RainbondVolumeCondition `json:"conditions,omitempty"` }
RainbondVolumeStatus defines the observed state of rainbondvolume.
func (*RainbondVolumeStatus) DeepCopy ¶
func (in *RainbondVolumeStatus) DeepCopy() *RainbondVolumeStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RainbondVolumeStatus.
func (*RainbondVolumeStatus) DeepCopyInto ¶
func (in *RainbondVolumeStatus) DeepCopyInto(out *RainbondVolumeStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RainbondVolumeStatus) GetRainbondVolumeCondition ¶
func (in *RainbondVolumeStatus) GetRainbondVolumeCondition(t RainbondVolumeConditionType) (int, *RainbondVolumeCondition)
GetRainbondVolumeCondition returns a condition based on the given type.
func (*RainbondVolumeStatus) UpdateRainbondVolumeCondition ¶
func (in *RainbondVolumeStatus) UpdateRainbondVolumeCondition(condition *RainbondVolumeCondition) bool
UpdateRainbondVolumeCondition updates existing RainbondVolume condition or creates a new one. Sets LastTransitionTime to now if the status has changed. Returns true if RainbondVolume condition has changed or has been added.
type RbdComponent ¶
type RbdComponent struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec RbdComponentSpec `json:"spec,omitempty"` Status *RbdComponentStatus `json:"status,omitempty"` }
RbdComponent is the Schema for the rbdcomponents API +kubebuilder:subresource:status +kubebuilder:resource:path=rbdcomponents,scope=Namespaced
func (*RbdComponent) DeepCopy ¶
func (in *RbdComponent) DeepCopy() *RbdComponent
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RbdComponent.
func (*RbdComponent) DeepCopyInto ¶
func (in *RbdComponent) DeepCopyInto(out *RbdComponent)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RbdComponent) DeepCopyObject ¶
func (in *RbdComponent) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*RbdComponent) ImagePullPolicy ¶
func (in *RbdComponent) ImagePullPolicy() corev1.PullPolicy
ImagePullPolicy returns the ImagePullPolicy, or return PullAlways if it is empty.
type RbdComponentCondition ¶
type RbdComponentCondition struct { // Type is the type of the condition. Type RbdComponentConditionType `json:"type" protobuf:"bytes,1,opt,name=type,casttype=PodConditionType"` // Status is the status of the condition. // Can be True, False, Unknown. // More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#pod-conditions Status corev1.ConditionStatus `json:"status" protobuf:"bytes,2,opt,name=status,casttype=ConditionStatus"` // Last time the condition transitioned from one status to another. // +optional LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty" protobuf:"bytes,4,opt,name=lastTransitionTime"` // Unique, one-word, CamelCase reason for the condition's last transition. // +optional Reason string `json:"reason,omitempty" protobuf:"bytes,5,opt,name=reason"` // Human-readable message indicating details about last transition. // +optional Message string `json:"message,omitempty" protobuf:"bytes,6,opt,name=message"` }
RbdComponentCondition contains details for the current condition of this rbdcomponent.
func NewRbdComponentCondition ¶
func NewRbdComponentCondition(condType RbdComponentConditionType, status v1.ConditionStatus, reason, message string) *RbdComponentCondition
NewRbdComponentCondition creates a new rbdcomponent condition.
func (*RbdComponentCondition) DeepCopy ¶
func (in *RbdComponentCondition) DeepCopy() *RbdComponentCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RbdComponentCondition.
func (*RbdComponentCondition) DeepCopyInto ¶
func (in *RbdComponentCondition) DeepCopyInto(out *RbdComponentCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RbdComponentConditionType ¶
type RbdComponentConditionType string
RbdComponentConditionType is a valid value for RbdComponentCondition.Type
const ( // ClusterConfigCompeleted indicates whether the configuration of the rainbondcluster cluster is complete. ClusterConfigCompeleted RbdComponentConditionType = "ClusterConfigCompeleted" // ClusterConfigCompeleted indicates whether the rainbondpackage is ready. RainbondPackageReady RbdComponentConditionType = "RainbondPackageReady" // RbdComponentReady means all pods related to the rbdcomponent are ready. RbdComponentReady RbdComponentConditionType = "Ready" )
These are valid conditions of pod.
type RbdComponentList ¶
type RbdComponentList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []RbdComponent `json:"items"` }
RbdComponentList contains a list of RbdComponent
func (*RbdComponentList) DeepCopy ¶
func (in *RbdComponentList) DeepCopy() *RbdComponentList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RbdComponentList.
func (*RbdComponentList) DeepCopyInto ¶
func (in *RbdComponentList) DeepCopyInto(out *RbdComponentList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RbdComponentList) DeepCopyObject ¶
func (in *RbdComponentList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RbdComponentSpec ¶
type RbdComponentSpec struct { // Number of desired pods. This is a pointer to distinguish between explicit // zero and not specified. Defaults to 1. // +optional Replicas *int32 `json:"replicas,omitempty"` // Docker image name. Image string `json:"image,omitempty"` // Image pull policy. // One of Always, Never, IfNotPresent. // Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. // Cannot be updated. ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy,omitempty"` // Arguments to the entrypoint. // The docker image's CMD is used if this is not provided. // Variable references $(VAR_NAME) are expanded using the container's environment. If a variable // cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax // can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, // regardless of whether the variable exists or not. // Cannot be updated. // +optional Args []string `json:"args,omitempty" protobuf:"bytes,4,rep,name=args"` // Whether this component needs to be created first PriorityComponent bool `json:"priorityComponent"` // List of environment variables to set in the container. // Cannot be updated. // +optional // +patchMergeKey=name // +patchStrategy=merge Env []corev1.EnvVar `json:"env,omitempty" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,7,rep,name=env"` // Compute Resources required by this container. // Cannot be updated. // More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/ // +optional Resources corev1.ResourceRequirements `json:"resources,omitempty" protobuf:"bytes,8,opt,name=resources"` // Pod volumes to mount into the container's filesystem. // Cannot be updated. // +optional // +patchMergeKey=mountPath // +patchStrategy=merge VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty" patchStrategy:"merge" patchMergeKey:"mountPath" protobuf:"bytes,9,rep,name=volumeMounts"` // List of volumes that can be mounted by containers belonging to the pod. // More info: https://kubernetes.io/docs/concepts/storage/volumes // +optional // +patchMergeKey=name // +patchStrategy=merge,retainKeys Volumes []corev1.Volume `json:"volumes,omitempty" patchStrategy:"merge,retainKeys" patchMergeKey:"name" protobuf:"bytes,1,rep,name=volumes"` }
RbdComponentSpec defines the desired state of RbdComponent
func (*RbdComponentSpec) DeepCopy ¶
func (in *RbdComponentSpec) DeepCopy() *RbdComponentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RbdComponentSpec.
func (*RbdComponentSpec) DeepCopyInto ¶
func (in *RbdComponentSpec) DeepCopyInto(out *RbdComponentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RbdComponentStatus ¶
type RbdComponentStatus struct { // Total number of non-terminated pods targeted by this deployment (their labels match the selector). // +optional Replicas int32 `json:"replicas,omitempty" protobuf:"varint,2,opt,name=replicas"` // Total number of ready pods targeted by this deployment. // +optional ReadyReplicas int32 `json:"readyReplicas,omitempty" protobuf:"varint,7,opt,name=readyReplicas"` // Current state of rainbond component. Conditions []RbdComponentCondition `json:"conditions,omitempty"` // A list of pods Pods []corev1.LocalObjectReference `json:"pods,omitempty"` }
RbdComponentStatus defines the observed state of RbdComponent
func (*RbdComponentStatus) DeepCopy ¶
func (in *RbdComponentStatus) DeepCopy() *RbdComponentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RbdComponentStatus.
func (*RbdComponentStatus) DeepCopyInto ¶
func (in *RbdComponentStatus) DeepCopyInto(out *RbdComponentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RbdComponentStatus) GetCondition ¶
func (r *RbdComponentStatus) GetCondition(t RbdComponentConditionType) (int, *RbdComponentCondition)
GetCondition returns a rbdcomponent condition based on the given type.
func (*RbdComponentStatus) SetCondition ¶
func (r *RbdComponentStatus) SetCondition(c RbdComponentCondition)
SetCondition setups the given rbdcomponent condition.
func (*RbdComponentStatus) UpdateCondition ¶
func (r *RbdComponentStatus) UpdateCondition(condition *RbdComponentCondition) bool
UpdateCondition updates existing rbdcomponent condition or creates a new one. Sets LastTransitionTime to now if the status has changed. Returns true if rbdcomponent condition has changed or has been added.
type StorageClass ¶
type StorageClass struct { Name string `json:"name"` Provisioner string `json:"provisioner"` AccessMode corev1.PersistentVolumeAccessMode `json:"accessMode,omitempty"` }
StorageClass storage class
func (*StorageClass) DeepCopy ¶
func (in *StorageClass) DeepCopy() *StorageClass
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageClass.
func (*StorageClass) DeepCopyInto ¶
func (in *StorageClass) DeepCopyInto(out *StorageClass)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StorageClassParameters ¶
type StorageClassParameters struct { // Dynamically provisioned PersistentVolumes of this storage class are // created with these mountOptions, e.g. ["ro", "soft"]. Not validated - // mount of the PVs will simply fail if one is invalid. // +optional MountOptions []string `json:"mountOptions,omitempty" protobuf:"bytes,5,opt,name=mountOptions"` // Provisioner indicates the type of the provisioner. Provisioner string `json:"provisioner,omitempty" protobuf:"bytes,2,opt,name=provisioner"` // Parameters holds the parameters for the provisioner that should // create volumes of this storage class. // +optional Parameters map[string]string `json:"parameters,omitempty" protobuf:"bytes,3,rep,name=parameters"` }
StorageClassParameters describes the parameters for a class of storage for which PersistentVolumes can be dynamically provisioned.
func (*StorageClassParameters) DeepCopy ¶
func (in *StorageClassParameters) DeepCopy() *StorageClassParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageClassParameters.
func (*StorageClassParameters) DeepCopyInto ¶
func (in *StorageClassParameters) DeepCopyInto(out *StorageClassParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.