Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the community v1alpha1 API group +kubebuilder:object:generate:=true +groupName=fabedge.io
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // SchemeGroupVersion is group version used to register these objects SchemeGroupVersion = schema.GroupVersion{Group: "fabedge.io", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} // 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"` }
Cluster is used to represent a cluster's endpoints of connector and edge nodes +kubebuilder:object:root=true +kubebuilder:resource:scope=Cluster +kubebuilder:printcolumn:name="CIDRs",type="string",JSONPath=".spec.cidrs",description="pod and service cidr list of cluster" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="How long a community is created"
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.
type ClusterList ¶
type ClusterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Cluster `json:"items"` }
ClusterList contains a list of clusters +kubebuilder:object:root=true
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 { // Token is used by child cluster to access root cluster's apiserver Token string `json:"token,omitempty"` // CIDRs is supposed to contain cluster-cidr and cluster-service-ip-range of a cluster, // these are mainly used to create ippools to avoid SNAT in calico environment CIDRs []string `json:"cidrs,omitempty"` // Endpoints of connector and exported edge nodes of a cluster EndPoints []Endpoint `json:"endpoints,omitempty"` }
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 Community ¶
type Community struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec CommunitySpec `json:"spec,omitempty"` }
Community is used to manage a communication unit, it's members should be edge nodes +kubebuilder:object:root=true +kubebuilder:resource:scope=Cluster +kubebuilder:printcolumn:name="Members",type="string",JSONPath=".spec.members",description="community members" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="How long a community is created"
func (*Community) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Community.
func (*Community) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Community) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CommunityList ¶
type CommunityList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Community `json:"items"` }
CommunityList contains a list of Community +kubebuilder:object:root=true
func (*CommunityList) DeepCopy ¶
func (in *CommunityList) DeepCopy() *CommunityList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommunityList.
func (*CommunityList) DeepCopyInto ¶
func (in *CommunityList) DeepCopyInto(out *CommunityList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CommunityList) DeepCopyObject ¶
func (in *CommunityList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CommunitySpec ¶
type CommunitySpec struct {
Members []string `json:"members,omitempty"`
}
func (*CommunitySpec) DeepCopy ¶
func (in *CommunitySpec) DeepCopy() *CommunitySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommunitySpec.
func (*CommunitySpec) DeepCopyInto ¶
func (in *CommunitySpec) DeepCopyInto(out *CommunitySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Endpoint ¶
type Endpoint struct { ID string `yaml:"id,omitempty" json:"id,omitempty"` Name string `yaml:"name,omitempty" json:"name,omitempty"` // public addresses can be IP, DNS PublicAddresses []string `yaml:"publicAddresses,omitempty" json:"publicAddresses,omitempty"` // pod subnets Subnets []string `yaml:"subnets,omitempty" json:"subnets,omitempty"` // internal IPs of kubernetes node NodeSubnets []string `yaml:"nodeSubnets,omitempty" json:"nodeSubnets,omitempty"` // Type of endpoints: Connector or EdgeNode Type EndpointType `yaml:"type,omitempty" json:"type,omitempty"` // public UDP port for IKE communication, only used to configure remote_port. Default: 500 Port *uint `yaml:"port,omitempty" json:"port,omitempty"` }
func (*Endpoint) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Endpoint.
func (*Endpoint) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EndpointType ¶
type EndpointType string
const ( Connector EndpointType = "Connector" EdgeNode EndpointType = "EdgeNode" )