Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the ceoslab v1alpha1 API group +kubebuilder:object:generate=true +groupName=ceoslab.arista.com
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersionResource is used to register and type these objects GroupVersionResource = schema.GroupVersionResource{Group: group, Version: version, Resource: resource} // Used by the dynamic client to create a new device (Kind) GroupVersionKind = schema.GroupVersionKind{Group: group, Version: version, Kind: kind} // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: group, Version: version} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type CEosLabDevice ¶
type CEosLabDevice struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec CEosLabDeviceSpec `json:"spec,omitempty"` Status CEosLabDeviceStatus `json:"status,omitempty"` }
CEosLabDevice is the Schema for the ceoslabdevices API
func (*CEosLabDevice) DeepCopy ¶
func (in *CEosLabDevice) DeepCopy() *CEosLabDevice
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CEosLabDevice.
func (*CEosLabDevice) DeepCopyInto ¶
func (in *CEosLabDevice) DeepCopyInto(out *CEosLabDevice)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CEosLabDevice) DeepCopyObject ¶
func (in *CEosLabDevice) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CEosLabDeviceList ¶
type CEosLabDeviceList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []CEosLabDevice `json:"items"` }
CEosLabDeviceList contains a list of CEosLabDevice
func (*CEosLabDeviceList) DeepCopy ¶
func (in *CEosLabDeviceList) DeepCopy() *CEosLabDeviceList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CEosLabDeviceList.
func (*CEosLabDeviceList) DeepCopyInto ¶
func (in *CEosLabDeviceList) DeepCopyInto(out *CEosLabDeviceList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CEosLabDeviceList) DeepCopyObject ¶
func (in *CEosLabDeviceList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CEosLabDeviceSpec ¶
type CEosLabDeviceSpec struct { // Additional environment variables. Those necessary to boot properly are already present. EnvVar map[string]string `json:"envvars,omitempty"` // Image name. Default: ceos:latest Image string `json:"image,omitempty"` // Additional arguments to pass to /sbin/init. Those necessary to boot properly are already present. Args []string `json:"args,omitempty"` // Resource requests to configure on the pod. Default: none Resources map[string]string `json:"resourcerequirements,omitempty"` // Port mappings for container services. Default: none Services map[string]ServiceConfig `json:"services,omitempty"` // Init container image name. Default: networkop/init-wait:latest InitContainerImage string `json:"initcontainerimage,omitempty"` // Number of data interfaces to create. An additional interface (eth0) is created for pod connectivity. Default: 0 interfaces NumInterfaces int32 `json:"numinterfaces,omitempty"` // Time (in seconds) to wait before starting the device. Default: 0 seconds Sleep int32 `json:"sleep,omitempty"` // X.509 certificate configuration. CertConfig CertConfig `json:"certconfig,omitempty"` // Explicit interface mapping between kernel devices and interface names. If this is defined, any unmapped devices are ignored. IntfMapping map[string]string `json:"intfmapping,omitempty"` // EOS feature toggle overrides ToggleOverrides map[string]bool `json:"toggleoverrides,omitempty"` // EOS agents to for the startup probe to block on WaitForAgents []string `json:"waitforagents,omitempty"` }
CEosLabDeviceSpec defines the desired state of CEosLabDevice
func (*CEosLabDeviceSpec) DeepCopy ¶
func (in *CEosLabDeviceSpec) DeepCopy() *CEosLabDeviceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CEosLabDeviceSpec.
func (*CEosLabDeviceSpec) DeepCopyInto ¶
func (in *CEosLabDeviceSpec) DeepCopyInto(out *CEosLabDeviceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CEosLabDeviceStatus ¶
type CEosLabDeviceStatus struct { // Device status State string `json:"status,omitempty"` // Reason for potential failure Reason string `json:"reason,omitempty"` // ConfigMap state as configured in configmaps ConfigMapStatus ConfigMapStatus `json:"configmapconfig,omitempty"` // ConfigMap state as present in the pod. If these diverge, we need to restart the pod to // update. Even if an in-place update is possible these are needed at boot time. PodConfigMapStatus ConfigMapStatus `json:"podconfigmapconfig,omitempty"` }
CEosLabDeviceStatus defines the observed state of CEosLabDevice
func (*CEosLabDeviceStatus) DeepCopy ¶
func (in *CEosLabDeviceStatus) DeepCopy() *CEosLabDeviceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CEosLabDeviceStatus.
func (*CEosLabDeviceStatus) DeepCopyInto ¶
func (in *CEosLabDeviceStatus) DeepCopyInto(out *CEosLabDeviceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CertConfig ¶
type CertConfig struct { // Configuration for self-signed certificates. SelfSignedCerts []SelfSignedCertConfig `json:"selfsignedcerts,omitempty"` }
func (*CertConfig) DeepCopy ¶
func (in *CertConfig) DeepCopy() *CertConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertConfig.
func (*CertConfig) DeepCopyInto ¶
func (in *CertConfig) DeepCopyInto(out *CertConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConfigMapStatus ¶
type ConfigMapStatus struct { SelfSignedCertStatus map[string]SelfSignedCertConfig `json:"selfsignedcertstatus,omitempty"` IntfMappingStatus map[string]string `json:"intfmappingstatus,omitempty"` ToggleOverridesStatus map[string]bool `json:"toggleoverridesstatus,omitempty"` RcEosStale bool `json:"rceosstale,omitempty"` StartupConfigResourceVersion *string `json:"startupconfigresourceversion,omitempty"` }
func (*ConfigMapStatus) DeepCopy ¶
func (in *ConfigMapStatus) DeepCopy() *ConfigMapStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigMapStatus.
func (*ConfigMapStatus) DeepCopyInto ¶
func (in *ConfigMapStatus) DeepCopyInto(out *ConfigMapStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PortConfig ¶
type PortConfig struct { // Port inside the container. In int32 `json:"in,omitempty"` // Port outside the container. Defaults to the same as in. Out int32 `json:"out,omitempty"` }
func (*PortConfig) DeepCopy ¶
func (in *PortConfig) DeepCopy() *PortConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PortConfig.
func (*PortConfig) DeepCopyInto ¶
func (in *PortConfig) DeepCopyInto(out *PortConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SelfSignedCertConfig ¶
type SelfSignedCertConfig struct { // Certificate name on the node. CertName string `json:"certname,omitempty"` // Key name on the node. KeyName string `json:"keyname,omitempty"` // RSA keysize to use for key generation. KeySize int32 `json:"keysize,omitempty"` // Common name to set in the cert. CommonName string `json:"commonname,omitempty"` }
func (*SelfSignedCertConfig) DeepCopy ¶
func (in *SelfSignedCertConfig) DeepCopy() *SelfSignedCertConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SelfSignedCertConfig.
func (*SelfSignedCertConfig) DeepCopyInto ¶
func (in *SelfSignedCertConfig) DeepCopyInto(out *SelfSignedCertConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceConfig ¶
type ServiceConfig struct { // TCP ports to forward to the pod. TCPPorts []PortConfig `json:"tcpports,omitempty"` }
func (*ServiceConfig) DeepCopy ¶
func (in *ServiceConfig) DeepCopy() *ServiceConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceConfig.
func (*ServiceConfig) DeepCopyInto ¶
func (in *ServiceConfig) DeepCopyInto(out *ServiceConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.