Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the lemming v1alpha1 API group +kubebuilder:object:generate=true +groupName=lemming.openconfig.net
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "lemming.openconfig.net", Version: "v1alpha1"} // SchemeGroupVersion is needed for client-gen 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 Lemming ¶
type Lemming struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec LemmingSpec `json:"spec,omitempty"`
Status LemmingStatus `json:"status,omitempty"`
}
Lemming is the Schema for the lemmings API
func (*Lemming) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Lemming.
func (*Lemming) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Lemming) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type LemmingList ¶
type LemmingList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Lemming `json:"items"`
}
LemmingList contains a list of Lemming
func (*LemmingList) DeepCopy ¶
func (in *LemmingList) DeepCopy() *LemmingList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LemmingList.
func (*LemmingList) DeepCopyInto ¶
func (in *LemmingList) DeepCopyInto(out *LemmingList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*LemmingList) DeepCopyObject ¶
func (in *LemmingList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type LemmingPhase ¶
type LemmingPhase string
LemmingPhase is the overall status of the Lemming.
const ( // Running indicates a successfully running lemming. Running LemmingPhase = "Running" // Failed indicates an error state. Failed LemmingPhase = "Failed" // Unknown indicates an unknown state. Unknown LemmingPhase = "Unknown" // Pending indicates a pending state. Pending LemmingPhase = "Pending" )
type LemmingSpec ¶
type LemmingSpec struct {
// Image is the container image to run.
Image string `json:"image,omitempty"`
// Command is the name of the executable to run.
Command string `json:"command,omitempty"`
// Args are the args to pass to the command.
Args []string `json:"args,omitempty"`
// Env are the environment variables to set for the container.
// +listType=map
// +listMapKey=name
Env []corev1.EnvVar `json:"env,omitempty"`
// ConfigPath is the mount point for configuration inside the pod.
ConfigPath string `json:"configPath,omitempty"`
// ConfigFile is the default configuration file name for the pod.
ConfigFile string `json:"configFile,omitempty"`
// InitImage is the docker image to use as an init container for the pod.
InitImage string `json:"initImage,omitempty"`
// Ports are ports to create on the service.
Ports map[string]ServicePort `json:"ports,omitempty"`
// InterfaceCount is number of interfaces to be attached to the pod.
// +optional
InterfaceCount int `json:"interfaceCount"`
// InitSleep is the time sleep in the init container
// +optional
InitSleep int `json:"initSleep"`
// Resources are the K8s resources to allocate to lemming container.
// +optional
Resources corev1.ResourceRequirements `json:"resources"`
// TLS is the configuration the key/certs to use for management.
// +optional
TLS *TLSSpec `json:"tls"`
}
LemmingSpec defines the desired state of Lemming.
func (*LemmingSpec) DeepCopy ¶
func (in *LemmingSpec) DeepCopy() *LemmingSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LemmingSpec.
func (*LemmingSpec) DeepCopyInto ¶
func (in *LemmingSpec) DeepCopyInto(out *LemmingSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LemmingStatus ¶
type LemmingStatus struct {
// Phase is the overall status of the Lemming.
Phase LemmingPhase `json:"phase"`
// Message describes why the lemming is in the current phase.
Message string `json:"message"`
}
LemmingStatus defines the observed state of Lemming
func (*LemmingStatus) DeepCopy ¶
func (in *LemmingStatus) DeepCopy() *LemmingStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LemmingStatus.
func (*LemmingStatus) DeepCopyInto ¶
func (in *LemmingStatus) DeepCopyInto(out *LemmingStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SelfSignedSpec ¶
type SelfSignedSpec struct {
/// Common name to set in the cert.
CommonName string `json:"commonName"`
// RSA keysize to use for key generation.
KeySize int `json:"keySize"`
}
SelfSignedSpec is the configuration to generate a self-signed cert.
func (*SelfSignedSpec) DeepCopy ¶
func (in *SelfSignedSpec) DeepCopy() *SelfSignedSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SelfSignedSpec.
func (*SelfSignedSpec) DeepCopyInto ¶
func (in *SelfSignedSpec) DeepCopyInto(out *SelfSignedSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServicePort ¶
type ServicePort struct {
// InnerPort is port on the container to expose.
InnerPort int32 `json:"innerPort"`
// OuterPort is port on the container to expose.
OuterPort int32 `json:"outerPort"`
}
ServicePort describes an external L4 port on the device.
func (*ServicePort) DeepCopy ¶
func (in *ServicePort) DeepCopy() *ServicePort
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServicePort.
func (*ServicePort) DeepCopyInto ¶
func (in *ServicePort) DeepCopyInto(out *ServicePort)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TLSSpec ¶
type TLSSpec struct {
// SelfSigned generates a new self signed certificate.
// +optional
SelfSigned *SelfSignedSpec `json:"selfSigned"`
}
TLSSpec is the configuration the key/certs to use for management.
func (*TLSSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSSpec.
func (*TLSSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.