Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the node v1alpha1 API group +kubebuilder:object:generate=true +groupName=node.oneinfra.ereslibre.es
Index ¶
Constants ¶
const ( // Issued represents a join request Issued condition Issued commonv1alpha1.ConditionType = "Issued" )
const (
// NodeJoinRequestOpenAPISchema represents the OpenAPI schema for kind NodeJoinRequest
NodeJoinRequestOpenAPISchema = `description: NodeJoinRequest is the Schema for the nodejoinrequests API
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
kind:
description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
spec:
description: NodeJoinRequestSpec defines the desired state of NodeJoinRequest
properties:
apiServerEndpoint:
description: The API Server endpoint for what this join request is for. The generated kubeconfig file for the kubelet will point to this endpoint. If not provided, the default cluster API endpoint will be used.
type: string
containerRuntimeEndpoint:
description: The local node container runtime endpoint. (e.g. unix:///run/containerd/containerd.sock)
type: string
extraSANs:
description: A list of extra Subject Alternative Names (SAN's) that will be included in the Kubelet server certificate issued by oneinfra.
items:
type: string
type: array
imageServiceEndpoint:
description: The local node image service endpoint. It's usually the same as the container runtime endpoint. (e.g. unix:///run/containerd/containerd.sock)
type: string
symmetricKey:
description: Base64 encoded symmetric key, used by ` + "`" + `oneinfra` + "`" + ` management cluster to cipher joining information. This key must be ciphered with the join public key of the cluster to be joined, and encoded in base64. The public join key of every managed cluster can be found on the ` + "`" + `oneinfra-join` + "`" + ` ConfigMap present in the ` + "`" + `oneinfra-system` + "`" + ` namespace.
type: string
type: object
status:
description: NodeJoinRequestStatus defines the observed state of NodeJoinRequest
properties:
conditions:
description: Conditions contains a list of conditions for this request. ` + "`" + `oneinfra` + "`" + ` will set the ` + "`" + `Issued` + "`" + ` condition to ` + "`" + `True` + "`" + ` when this request has all the information set, and available in this ` + "`" + `Status` + "`" + ` object.
items:
description: Condition represents a condition
properties:
lastSetTime:
format: date-time
type: string
lastTransitionTime:
format: date-time
type: string
message:
type: string
reason:
type: string
status:
description: ConditionStatus represents a condition status
type: string
type:
description: ConditionType represents a condition type
type: string
type: object
type: array
kubeConfig:
description: KubeConfig has the kubeconfig contents that the kubelet should use. Filled by ` + "`" + `oneinfra` + "`" + `, and ciphered using the provided SymmetricKey in the request spec. Base64 encoded.
type: string
kubeletClientCACertificate:
description: KubeletClientCACertificate contains the contents of the Kubelet client CA certificate to be used. Filled by ` + "`" + `oneinfra` + "`" + `, and ciphered using the provided SymmetricKey in the request spec. Base64 encoded.
type: string
kubeletConfig:
description: KubeletConfig has the kubelet configuration contents that the kubelet should use. Filled by ` + "`" + `oneinfra` + "`" + `, and ciphered using the provided SymmetricKey in the request spec. Base64 encoded.
type: string
kubeletServerCertificate:
description: KubeletServerCertificate contains the contents of the Kubelet server certificate to be used. Filled by ` + "`" + `oneinfra` + "`" + `, and ciphered using the provided SymmetricKey in the request spec. Base64 encoded.
type: string
kubeletServerPrivateKey:
description: KubeletServerPrivateKey contains the contents of the Kubelet server private key to be used. Filled by ` + "`" + `oneinfra` + "`" + `, and ciphered using the provided SymmetricKey in the request spec. Base64 encoded.
type: string
kubernetesVersion:
description: KubernetesVersion contains the Kubernetes version of the cluster this node is joining to. Filled by ` + "`" + `oneinfra` + "`" + `, and ciphered using the provided SymmetricKey in the request spec. Base64 encoded.
type: string
vpn:
description: VPN contains the VPN information for this node join request. Nil if VPN is disabled. Filled by ` + "`" + `oneinfra` + "`" + `.
properties:
CIDR:
description: CIDR for this cluster. Filled by ` + "`" + `oneinfra` + "`" + `, and ciphered using the provided SymmetricKey in the request spec. Base64 encoded.
type: string
address:
description: Address contains the VPN address of this node. Filled by ` + "`" + `oneinfra` + "`" + `, and ciphered using the provided SymmetricKey in the request spec. Base64 encoded.
type: string
endpoint:
description: Endpoint contains the VPN endpoint this peer should connect to. Filled by ` + "`" + `oneinfra` + "`" + `, and ciphered using the provided SymmetricKey in the request spec. Base64 encoded.
type: string
endpointPublicKey:
description: EndpointPublicKey contains the VPN endpoint public key. Filled by ` + "`" + `oneinfra` + "`" + `, and ciphered using the provided SymmetricKey in the request spec. Base64 encoded.
type: string
peerPrivateKey:
description: PeerPrivateKey contains the VPN peer private key. Filled by ` + "`" + `oneinfra` + "`" + `, and ciphered using the provided SymmetricKey in the request spec. Base64 encoded.
type: string
type: object
type: object
type: object
`
)
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "node.oneinfra.ereslibre.es", Version: "v1alpha1"} // SchemeGroupVersion is group version used to register these objects (client-gen compatibility) SchemeGroupVersion = GroupVersion // 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 NodeJoinRequest ¶
type NodeJoinRequest struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec NodeJoinRequestSpec `json:"spec,omitempty"` Status NodeJoinRequestStatus `json:"status,omitempty"` }
NodeJoinRequest is the Schema for the nodejoinrequests API
func (*NodeJoinRequest) DeepCopy ¶
func (in *NodeJoinRequest) DeepCopy() *NodeJoinRequest
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeJoinRequest.
func (*NodeJoinRequest) DeepCopyInto ¶
func (in *NodeJoinRequest) DeepCopyInto(out *NodeJoinRequest)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NodeJoinRequest) DeepCopyObject ¶
func (in *NodeJoinRequest) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NodeJoinRequestList ¶
type NodeJoinRequestList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []NodeJoinRequest `json:"items"` }
NodeJoinRequestList contains a list of NodeJoinRequest
func (*NodeJoinRequestList) DeepCopy ¶
func (in *NodeJoinRequestList) DeepCopy() *NodeJoinRequestList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeJoinRequestList.
func (*NodeJoinRequestList) DeepCopyInto ¶
func (in *NodeJoinRequestList) DeepCopyInto(out *NodeJoinRequestList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NodeJoinRequestList) DeepCopyObject ¶
func (in *NodeJoinRequestList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NodeJoinRequestSpec ¶
type NodeJoinRequestSpec struct { // Base64 encoded symmetric key, used by `oneinfra` management // cluster to cipher joining information. This key must be ciphered // with the join public key of the cluster to be joined, and encoded // in base64. The public join key of every managed cluster can be // found on the `oneinfra-join` ConfigMap present in the // `oneinfra-system` namespace. SymmetricKey string `json:"symmetricKey,omitempty"` // The API Server endpoint for what this join request is for. The // generated kubeconfig file for the kubelet will point to this // endpoint. If not provided, the default cluster API endpoint will // be used. // // +optional APIServerEndpoint string `json:"apiServerEndpoint,omitempty"` // The local node container runtime endpoint. // (e.g. unix:///run/containerd/containerd.sock) ContainerRuntimeEndpoint string `json:"containerRuntimeEndpoint,omitempty"` // The local node image service endpoint. It's usually the same as // the container runtime endpoint. // (e.g. unix:///run/containerd/containerd.sock) ImageServiceEndpoint string `json:"imageServiceEndpoint,omitempty"` // A list of extra Subject Alternative Names (SAN's) that will be // included in the Kubelet server certificate issued by oneinfra. // // +optional ExtraSANs []string `json:"extraSANs,omitempty"` }
NodeJoinRequestSpec defines the desired state of NodeJoinRequest
func (*NodeJoinRequestSpec) DeepCopy ¶
func (in *NodeJoinRequestSpec) DeepCopy() *NodeJoinRequestSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeJoinRequestSpec.
func (*NodeJoinRequestSpec) DeepCopyInto ¶
func (in *NodeJoinRequestSpec) DeepCopyInto(out *NodeJoinRequestSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeJoinRequestStatus ¶
type NodeJoinRequestStatus struct { // KubernetesVersion contains the Kubernetes version of the cluster // this node is joining to. Filled by `oneinfra`, and ciphered using // the provided SymmetricKey in the request spec. Base64 encoded. KubernetesVersion string `json:"kubernetesVersion,omitempty"` // VPN contains the VPN information for this node join request. Nil // if VPN is disabled. Filled by `oneinfra`. VPN *VPN `json:"vpn,omitempty"` // KubeConfig has the kubeconfig contents that the kubelet should // use. Filled by `oneinfra`, and ciphered using the provided // SymmetricKey in the request spec. Base64 encoded. KubeConfig string `json:"kubeConfig,omitempty"` // KubeletConfig has the kubelet configuration contents that the // kubelet should use. Filled by `oneinfra`, and ciphered using the // provided SymmetricKey in the request spec. Base64 encoded. KubeletConfig string `json:"kubeletConfig,omitempty"` // KubeletServerCertificate contains the contents of the Kubelet // server certificate to be used. Filled by `oneinfra`, and ciphered // using the provided SymmetricKey in the request spec. Base64 // encoded. KubeletServerCertificate string `json:"kubeletServerCertificate,omitempty"` // KubeletServerPrivateKey contains the contents of the Kubelet // server private key to be used. Filled by `oneinfra`, and ciphered // using the provided SymmetricKey in the request spec. Base64 // encoded. KubeletServerPrivateKey string `json:"kubeletServerPrivateKey,omitempty"` // KubeletClientCACertificate contains the contents of the Kubelet // client CA certificate to be used. Filled by `oneinfra`, and ciphered // using the provided SymmetricKey in the request spec. Base64 // encoded. KubeletClientCACertificate string `json:"kubeletClientCACertificate,omitempty"` // Conditions contains a list of conditions for this // request. `oneinfra` will set the `Issued` condition to `True` // when this request has all the information set, and available in // this `Status` object. Conditions commonv1alpha1.ConditionList `json:"conditions,omitempty"` }
NodeJoinRequestStatus defines the observed state of NodeJoinRequest
func (*NodeJoinRequestStatus) DeepCopy ¶
func (in *NodeJoinRequestStatus) DeepCopy() *NodeJoinRequestStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeJoinRequestStatus.
func (*NodeJoinRequestStatus) DeepCopyInto ¶
func (in *NodeJoinRequestStatus) DeepCopyInto(out *NodeJoinRequestStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VPN ¶
type VPN struct { // CIDR for this cluster. Filled by `oneinfra`, and ciphered using // the provided SymmetricKey in the request spec. Base64 encoded. CIDR string `json:"CIDR,omitempty"` // Address contains the VPN address of this node. Filled by // `oneinfra`, and ciphered using the provided SymmetricKey in the // request spec. Base64 encoded. Address string `json:"address,omitempty"` // PeerPrivateKey contains the VPN peer private key. Filled by // `oneinfra`, and ciphered using the provided SymmetricKey in the // request spec. Base64 encoded. PeerPrivateKey string `json:"peerPrivateKey,omitempty"` // Endpoint contains the VPN endpoint this peer should connect // to. Filled by `oneinfra`, and ciphered using the provided // SymmetricKey in the request spec. Base64 encoded. Endpoint string `json:"endpoint,omitempty"` // EndpointPublicKey contains the VPN endpoint public key. Filled by // `oneinfra`, and ciphered using the provided SymmetricKey in the // request spec. Base64 encoded. EndpointPublicKey string `json:"endpointPublicKey,omitempty"` }
VPN defines the VPN related information to a node join request.
func (*VPN) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPN.
func (*VPN) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.