Documentation
¶
Overview ¶
Package v2 contains API Schema definitions for the cluster v2 API group +kubebuilder:object:generate=true +groupName=cluster.sealer.cool
Index ¶
- Variables
- type Cluster
- func (in *Cluster) DeepCopy() *Cluster
- func (in *Cluster) DeepCopyInto(out *Cluster)
- func (in *Cluster) DeepCopyObject() runtime.Object
- func (in *Cluster) GetAllIPList() []net.IP
- func (in *Cluster) GetAnnotationsByKey(key string) string
- func (in *Cluster) GetIPSByRole(role string) []net.IP
- func (in *Cluster) GetMaster0IP() net.IP
- func (in *Cluster) GetMasterIPList() []net.IP
- func (in *Cluster) GetMasterIPStrList() (ipStrList []string)
- func (in *Cluster) GetNodeIPList() []net.IP
- func (in *Cluster) SetAnnotations(key, value string)
- type ClusterList
- type ClusterSpec
- type ClusterStatus
- type ExternalRegistry
- type Host
- type HostAlias
- type LocalRegistry
- type Registry
- type RegistryConfig
- type SubjectAltName
- type TLSCert
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "cluster.sealer.cool", Version: "v2"} // 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 Cluster ¶
type Cluster struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ClusterSpec `json:"spec,omitempty"`
Status ClusterStatus `json:"status,omitempty"`
}
Cluster is the Schema for the clusters API
func (*Cluster) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Cluster.
func (*Cluster) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Cluster) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Cluster) GetAllIPList ¶
func (*Cluster) GetAnnotationsByKey ¶
func (*Cluster) GetMaster0IP ¶
func (*Cluster) GetMasterIPList ¶
func (*Cluster) GetMasterIPStrList ¶
func (*Cluster) GetNodeIPList ¶
func (*Cluster) SetAnnotations ¶
type ClusterList ¶
type ClusterList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Cluster `json:"items"`
}
ClusterList contains a list of Cluster
func (*ClusterList) DeepCopy ¶
func (in *ClusterList) DeepCopy() *ClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterList.
func (*ClusterList) DeepCopyInto ¶
func (in *ClusterList) DeepCopyInto(out *ClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterList) DeepCopyObject ¶
func (in *ClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterSpec ¶
type ClusterSpec struct {
// desired state of cluster
// Important: Run "make" to regenerate code after modifying this file
// Foo is an example field of Cluster. Edit Cluster_types.go to remove/update
Image string `json:"image,omitempty"`
// Why env not using map[string]string
// Because some argument is list, like: CertSANS=127.0.0.1 CertSANS=localhost, if ENV is map, will merge those two values
// but user want to config a list, using array we can convert it to {CertSANS:[127.0.0.1, localhost]}
Env []string `json:"env,omitempty"`
CMDArgs []string `json:"cmd_args,omitempty"`
CMD []string `json:"cmd,omitempty"`
// APPNames This field allows user to specify the app name they want to run launch.
APPNames []string `json:"appNames,omitempty"`
Hosts []Host `json:"hosts,omitempty"`
SSH v1.SSH `json:"ssh,omitempty"`
// HostAliases holds the mapping between IP and hostnames that will be injected as an entry in the
// host's hosts file.
HostAliases []HostAlias `json:"hostAliases,omitempty"`
// Registry field contains configurations about local registry and remote registry.
Registry Registry `json:"registry,omitempty"`
}
ClusterSpec defines the desired state of Cluster
func (*ClusterSpec) DeepCopy ¶
func (in *ClusterSpec) DeepCopy() *ClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSpec.
func (*ClusterSpec) DeepCopyInto ¶
func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterStatus ¶
type ClusterStatus struct {
}
ClusterStatus defines the observed state of Cluster
func (*ClusterStatus) DeepCopy ¶
func (in *ClusterStatus) DeepCopy() *ClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterStatus.
func (*ClusterStatus) DeepCopyInto ¶
func (in *ClusterStatus) DeepCopyInto(out *ClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExternalRegistry ¶ added in v0.9.0
type ExternalRegistry struct {
RegistryConfig
}
type Host ¶
type Host struct {
IPS []net.IP `json:"ips,omitempty"`
Roles []string `json:"roles,omitempty"`
//overwrite SSH config
SSH v1.SSH `json:"ssh,omitempty"`
//overwrite env
Env []string `json:"env,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
Taints []string `json:"taints,omitempty"`
}
func (*Host) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Host.
func (*Host) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HostAlias ¶ added in v0.9.0
type HostAlias struct {
// IP address of the host file entry.
IP string `json:"ip,omitempty"`
// Hostnames for the above IP address.
Hostnames []string `json:"hostnames,omitempty"`
}
HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the pod's hosts file.
type LocalRegistry ¶ added in v0.9.0
type LocalRegistry struct {
RegistryConfig
// HA indicate that whether local registry will be deployed on all master nodes.
// if LocalRegistry is not specified, default value is true.
HA *bool `json:"ha,omitempty"`
// Insecure indicated that whether the local registry is exposed in HTTPS.
// if true sealer will not generate default ssl cert.
Insecure *bool `json:"insecure,omitempty"`
Cert TLSCert `json:"cert,omitempty"`
}
type Registry ¶ added in v0.9.0
type Registry struct {
// LocalRegistry is the sealer builtin registry configuration
LocalRegistry *LocalRegistry `json:"localRegistry,omitempty"`
// ExternalRegistry used to serve external registry service. do not support yet.
ExternalRegistry *ExternalRegistry `json:"externalRegistry,omitempty"`
}
type RegistryConfig ¶ added in v0.9.0
type SubjectAltName ¶ added in v0.9.0
type TLSCert ¶ added in v0.9.0
type TLSCert struct {
SubjectAltName *SubjectAltName `json:"subjectAltName,omitempty"`
}