Documentation ¶
Overview ¶
Package v1beta1 contains API Schema definitions for the kmm v1beta1 API group +kubebuilder:object:generate=true +groupName=kmm.sigs.x-k8s.io
Index ¶
- Constants
- Variables
- type Build
- type BuildArg
- type CRStatus
- type DaemonSetStatus
- type DevicePluginContainerSpec
- type DevicePluginSpec
- type KanikoParams
- type KernelMapping
- type ModprobeArgs
- type ModprobeSpec
- type Module
- type ModuleConfig
- type ModuleItem
- type ModuleList
- type ModuleLoaderContainerSpec
- type ModuleLoaderSpec
- type ModuleSpec
- type ModuleStatus
- type NodeModuleSpec
- type NodeModuleStatus
- type NodeModulesConfig
- type NodeModulesConfigList
- type NodeModulesConfigSpec
- type NodeModulesConfigStatus
- type PreflightValidation
- func (p *PreflightValidation) ConvertFrom(srcRaw conversion.Hub) error
- func (p *PreflightValidation) ConvertTo(dstRaw conversion.Hub) error
- func (in *PreflightValidation) DeepCopy() *PreflightValidation
- func (in *PreflightValidation) DeepCopyInto(out *PreflightValidation)
- func (in *PreflightValidation) DeepCopyObject() runtime.Object
- type PreflightValidationList
- type PreflightValidationOCP
- func (p *PreflightValidationOCP) ConvertFrom(srcRaw conversion.Hub) error
- func (p *PreflightValidationOCP) ConvertTo(dstRaw conversion.Hub) error
- func (in *PreflightValidationOCP) DeepCopy() *PreflightValidationOCP
- func (in *PreflightValidationOCP) DeepCopyInto(out *PreflightValidationOCP)
- func (in *PreflightValidationOCP) DeepCopyObject() runtime.Object
- type PreflightValidationOCPList
- type PreflightValidationOCPSpec
- type PreflightValidationSpec
- type PreflightValidationStatus
- type Sign
- type TLSOptions
Constants ¶
const ( VerificationTrue = v1beta2.VerificationTrue VerificationFalse = v1beta2.VerificationFalse VerificationStageImage = v1beta2.VerificationStageImage VerificationStageBuild = v1beta2.VerificationStageBuild VerificationStageSign = v1beta2.VerificationStageSign VerificationStageRequeued = v1beta2.VerificationStageRequeued VerificationStageDone = v1beta2.VerificationStageDone )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "kmm.sigs.x-k8s.io", Version: "v1beta1"} // 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 Build ¶
type Build struct { // +optional // BuildArgs is an array of build variables that are provided to the image building backend. BuildArgs []BuildArg `json:"buildArgs"` // ConfigMap that holds Dockerfile contents DockerfileConfigMap *v1.LocalObjectReference `json:"dockerfileConfigMap"` // +optional // BaseImageRegistryTLS contains settings determining how to access registries of the base images in the build-process' Dockerfile. BaseImageRegistryTLS TLSOptions `json:"baseImageRegistryTLS,omitempty"` // +optional // Secrets is an optional list of secrets to be made available to the build system. // Those secrets should be used for private resources such as a private Github repo. // For container registries auth use module.spec.imagePullSecret instead. Secrets []v1.LocalObjectReference `json:"secrets"` // +optional // KanikoParams is used to customize the building process of the image. KanikoParams *KanikoParams `json:"kanikoParams,omitempty"` // +optional // Selector describes on which nodes will run the building process. Selector map[string]string `json:"selector,omitempty"` }
func (*Build) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Build.
func (*Build) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BuildArg ¶
BuildArg represents a build argument used when building a container image.
func (*BuildArg) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BuildArg.
func (*BuildArg) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DaemonSetStatus ¶
type DaemonSetStatus struct { // number of nodes that are targeted by the module selector NodesMatchingSelectorNumber int32 `json:"nodesMatchingSelectorNumber,omitempty"` // number of the pods that should be deployed for daemonset DesiredNumber int32 `json:"desiredNumber,omitempty"` // number of the actually deployed and running pods AvailableNumber int32 `json:"availableNumber,omitempty"` }
DaemonSetStatus contains the status for a daemonset deployed during reconciliation loop
func (*DaemonSetStatus) DeepCopy ¶
func (in *DaemonSetStatus) DeepCopy() *DaemonSetStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DaemonSetStatus.
func (*DaemonSetStatus) DeepCopyInto ¶
func (in *DaemonSetStatus) DeepCopyInto(out *DaemonSetStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevicePluginContainerSpec ¶
type DevicePluginContainerSpec struct { // Entrypoint array. Not executed within a shell. // The container image's ENTRYPOINT is used if this is not provided. // Variable references $(VAR_NAME) are expanded using the container's environment. If a variable // cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced // to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will // produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless // of whether the variable exists or not. Cannot be updated. // More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell // +optional Command []string `json:"command,omitempty" protobuf:"bytes,3,rep,name=command"` // Arguments to the entrypoint. // The container image's CMD is used if this is not provided. // Variable references $(VAR_NAME) are expanded using the container's environment. If a variable // cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced // to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. "$$(VAR_NAME)" will // produce the string literal "$(VAR_NAME)". Escaped references will never be expanded, regardless // of whether the variable exists or not. Cannot be updated. // More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell // +optional Args []string `json:"args,omitempty" protobuf:"bytes,4,rep,name=args"` // List of environment variables to set in the container. // Cannot be updated. // +optional // +patchMergeKey=name // +patchStrategy=merge Env []v1.EnvVar `json:"env,omitempty" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,7,rep,name=env"` // Image is the name of the container image that the device plugin container will run. Image string `json:"image"` // Image pull policy. // One of Always, Never, IfNotPresent. // Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. // Cannot be updated. // More info: https://kubernetes.io/docs/concepts/containers/images#updating-images // +optional ImagePullPolicy v1.PullPolicy `json:"imagePullPolicy,omitempty" protobuf:"bytes,14,opt,name=imagePullPolicy,casttype=PullPolicy"` // Compute Resources required by this container. // Cannot be updated. // More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ // +optional Resources v1.ResourceRequirements `json:"resources,omitempty" protobuf:"bytes,8,opt,name=resources"` // VolumeMounts is a list of volume mounts that are appended to the default ones. // +optional VolumeMounts []v1.VolumeMount `json:"volumeMounts,omitempty"` }
func (*DevicePluginContainerSpec) DeepCopy ¶
func (in *DevicePluginContainerSpec) DeepCopy() *DevicePluginContainerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevicePluginContainerSpec.
func (*DevicePluginContainerSpec) DeepCopyInto ¶
func (in *DevicePluginContainerSpec) DeepCopyInto(out *DevicePluginContainerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevicePluginSpec ¶
type DevicePluginSpec struct { Container DevicePluginContainerSpec `json:"container"` // +optional // ServiceAccountName is the name of the ServiceAccount to use to run this pod. // More info: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/ ServiceAccountName string `json:"serviceAccountName,omitempty"` Volumes []v1.Volume `json:"volumes,omitempty"` }
func (*DevicePluginSpec) DeepCopy ¶
func (in *DevicePluginSpec) DeepCopy() *DevicePluginSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevicePluginSpec.
func (*DevicePluginSpec) DeepCopyInto ¶
func (in *DevicePluginSpec) DeepCopyInto(out *DevicePluginSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KanikoParams ¶
type KanikoParams struct { // +optional // Kaniko image tag to use when creating the build Job Tag string `json:"tag,omitempty"` }
func (*KanikoParams) DeepCopy ¶
func (in *KanikoParams) DeepCopy() *KanikoParams
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KanikoParams.
func (*KanikoParams) DeepCopyInto ¶
func (in *KanikoParams) DeepCopyInto(out *KanikoParams)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KernelMapping ¶
type KernelMapping struct { // +optional // Build enables in-cluster builds for this mapping and allows overriding the Module's build settings. Build *Build `json:"build"` // +optional // Sign enables in-cluster signing for this mapping Sign *Sign `json:"sign,omitempty"` // ContainerImage is the name of the DriverContainer image that should be used to deploy the module. ContainerImage string `json:"containerImage"` // +optional // Literal defines a literal target kernel version to be matched exactly against node kernels. Literal string `json:"literal"` // +optional // RegistryTLS set the TLS configs for accessing the registry of the module-loader's image. RegistryTLS *TLSOptions `json:"registryTLS"` // +optional // Regexp is a regular expression to be match against node kernels. Regexp string `json:"regexp"` // Deprecated: please use InTreeModulesToRemove. // +optional // InTreeModuleToRemove specifies one in-tree kernel module that should be removed (if present) // before loading the kernel module from the ContainerImage InTreeModuleToRemove string `json:"inTreeModuleToRemove"` // +optional // InTreeModulesToRemove specifies any number of in-tree kernel modules that should be removed (if present) // before loading the kernel module from the ContainerImage InTreeModulesToRemove []string `json:"inTreeModulesToRemove"` }
KernelMapping pairs kernel versions with a DriverContainer image. Kernel versions can be matched literally or using a regular expression.
func (*KernelMapping) DeepCopy ¶
func (in *KernelMapping) DeepCopy() *KernelMapping
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KernelMapping.
func (*KernelMapping) DeepCopyInto ¶
func (in *KernelMapping) DeepCopyInto(out *KernelMapping)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ModprobeArgs ¶
type ModprobeArgs struct { // Load is an optional list of arguments to be used when loading the kernel module. // +kubebuilder:validation:MinItems=1 Load []string `json:"load,omitempty"` // Unload is an optional list of arguments to be used when unloading the kernel module. // +kubebuilder:validation:MinItems=1 Unload []string `json:"unload,omitempty"` }
func (*ModprobeArgs) DeepCopy ¶
func (in *ModprobeArgs) DeepCopy() *ModprobeArgs
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModprobeArgs.
func (*ModprobeArgs) DeepCopyInto ¶
func (in *ModprobeArgs) DeepCopyInto(out *ModprobeArgs)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ModprobeSpec ¶
type ModprobeSpec struct { // ModuleName is the name of the Module to be loaded. // This field can only be unset if rawArgs is set. // +optional ModuleName string `json:"moduleName,omitempty"` // Parameters is an optional list of kernel module parameters to be provided to modprobe. // They should be in the form of key=value and will be separated by spaces in the modprobe command. // The resulting loading command will be: `modprobe module_name ${Parameters}`. Parameters []string `json:"parameters,omitempty"` // DirName is the root directory for modules. // It adds `-d ${DirName}` to the modprobe command-line. // +kubebuilder:default=/opt DirName string `json:"dirName,omitempty"` // Args is an optional list of arguments to be passed to modprobe before the name of the kernel module. // The resulting commands will be: `modprobe ${Args} module_name`. // +optional Args *ModprobeArgs `json:"args,omitempty"` // If RawArgs are specified, they are passed straight to the modprobe binary; all other properties in this // object are ignored. // The resulting commands will be: `modprobe ${RawArgs}`. // +optional RawArgs *ModprobeArgs `json:"rawArgs,omitempty"` // FirmwarePath is the path of the firmware(s). // The firmware(s) will be copied to the host for the kernel to find them. // +optional FirmwarePath string `json:"firmwarePath,omitempty"` // ModulesLoadingOrder defines the dependency between kernel modules loading, in case // it was not created by depmod (independent kernel modules). // The list order should be: upmost module, then the module it depends on and so on. // Example: if moduleA depends on first loading moduleB, and moduleB depends on first loading moduleC // the entry should look: // ModulesLoadingOrder: // - moduleA // - moduleB // - moduleC // In order to load all 3 modules, moduleA shoud be defined in the ModuleName parameter of this struct // +optional ModulesLoadingOrder []string `json:"modulesLoadingOrder,omitempty"` }
func (*ModprobeSpec) DeepCopy ¶
func (in *ModprobeSpec) DeepCopy() *ModprobeSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModprobeSpec.
func (*ModprobeSpec) DeepCopyInto ¶
func (in *ModprobeSpec) DeepCopyInto(out *ModprobeSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Module ¶
type Module struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ModuleSpec `json:"spec,omitempty"` Status ModuleStatus `json:"status,omitempty"` }
Module describes how to load a module on different kernel versions +operator-sdk:csv:customresourcedefinitions:displayName="Module"
func (*Module) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Module.
func (*Module) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Module) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ModuleConfig ¶
type ModuleConfig struct { KernelVersion string `json:"kernelVersion"` ContainerImage string `json:"containerImage"` // +kubebuilder:default=IfNotPresent //+optional ImagePullPolicy v1.PullPolicy `json:"imagePullPolicy"` // When InsecurePull is true, the container image can be pulled without TLS. InsecurePull bool `json:"insecurePull"` //+optional InTreeModulesToRemove []string `json:"inTreeModulesToRemove,omitempty"` //+optional InTreeModuleToRemove string `json:"inTreeModuleToRemove,omitempty"` Modprobe ModprobeSpec `json:"modprobe"` //+optional Tolerations []v1.Toleration `json:"tolerations,omitempty"` }
func (*ModuleConfig) DeepCopy ¶
func (in *ModuleConfig) DeepCopy() *ModuleConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModuleConfig.
func (*ModuleConfig) DeepCopyInto ¶
func (in *ModuleConfig) DeepCopyInto(out *ModuleConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ModuleItem ¶
type ModuleItem struct { ImageRepoSecret *v1.LocalObjectReference `json:"imageRepoSecret,omitempty"` Name string `json:"name"` Namespace string `json:"namespace"` ServiceAccountName string `json:"serviceAccountName"` }
func (*ModuleItem) DeepCopy ¶
func (in *ModuleItem) DeepCopy() *ModuleItem
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModuleItem.
func (*ModuleItem) DeepCopyInto ¶
func (in *ModuleItem) DeepCopyInto(out *ModuleItem)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ModuleList ¶
type ModuleList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Module `json:"items"` }
ModuleList contains a list of Module
func (*ModuleList) DeepCopy ¶
func (in *ModuleList) DeepCopy() *ModuleList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModuleList.
func (*ModuleList) DeepCopyInto ¶
func (in *ModuleList) DeepCopyInto(out *ModuleList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ModuleList) DeepCopyObject ¶
func (in *ModuleList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ModuleLoaderContainerSpec ¶
type ModuleLoaderContainerSpec struct { // Build contains build instructions. // +optional Build *Build `json:"build,omitempty"` // +optional // Sign provides default kmod signing settings Sign *Sign `json:"sign,omitempty"` // Version defines the current version of the kernel module being used // Used for upgrading the currently loaded kernel module to a new version // +optional Version string `json:"version,omitempty"` // ContainerImage is a top-level field // +optional ContainerImage string `json:"containerImage,omitempty"` // Image pull policy. // One of Always, Never, IfNotPresent. // Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. // Cannot be updated. // More info: https://kubernetes.io/docs/concepts/containers/images#updating-images // +optional ImagePullPolicy v1.PullPolicy `json:"imagePullPolicy,omitempty" protobuf:"bytes,14,opt,name=imagePullPolicy,casttype=PullPolicy"` // KernelMappings is a list of kernel mappings. // When a node's labels match Selector, then the KMM Operator will look for the first mapping that matches its // kernel version, and use the corresponding container image to run the DriverContainer. // +kubebuilder:validation:MinItems=1 KernelMappings []KernelMapping `json:"kernelMappings"` // Modprobe is a set of properties to customize which module modprobe loads and with which properties. Modprobe ModprobeSpec `json:"modprobe"` // +optional // RegistryTLS set the TLS configs for accessing the registry of the module-loader's image. RegistryTLS TLSOptions `json:"registryTLS"` // Deprecated: please use InTreeModulesToRemove. // +optional // InTreeModuleToRemove specifies one in-tree kernel module that should be removed (if present) // before loading the kernel module from the ContainerImage InTreeModuleToRemove string `json:"inTreeModuleToRemove"` // +optional // InTreeModulesToRemove specifies any number of in-tree kernel modules that should be removed (if present) // before loading the kernel module from the ContainerImage InTreeModulesToRemove []string `json:"inTreeModulesToRemove"` }
func (*ModuleLoaderContainerSpec) DeepCopy ¶
func (in *ModuleLoaderContainerSpec) DeepCopy() *ModuleLoaderContainerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModuleLoaderContainerSpec.
func (*ModuleLoaderContainerSpec) DeepCopyInto ¶
func (in *ModuleLoaderContainerSpec) DeepCopyInto(out *ModuleLoaderContainerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ModuleLoaderSpec ¶
type ModuleLoaderSpec struct { // Container holds the properties for the module loader container that runs modprobe. Container ModuleLoaderContainerSpec `json:"container"` // +optional // ServiceAccountName is the name of the ServiceAccount to use to run this pod. // More info: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/ ServiceAccountName string `json:"serviceAccountName,omitempty"` }
func (*ModuleLoaderSpec) DeepCopy ¶
func (in *ModuleLoaderSpec) DeepCopy() *ModuleLoaderSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModuleLoaderSpec.
func (*ModuleLoaderSpec) DeepCopyInto ¶
func (in *ModuleLoaderSpec) DeepCopyInto(out *ModuleLoaderSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ModuleSpec ¶
type ModuleSpec struct { // DevicePlugin allows overriding some properties of the container that deploys the device plugin on the node. // Name is ignored and is set automatically by the KMM Operator. // +optional DevicePlugin *DevicePluginSpec `json:"devicePlugin"` // ModuleLoader allows overriding some properties of the container that loads the kernel module on the node. // Name and image are ignored and are set automatically by the KMM Operator. ModuleLoader ModuleLoaderSpec `json:"moduleLoader"` // ImageRepoSecret is an optional secret that is used to pull both the module loader and the device plugin, and // to push the resulting image from the module loader build, if enabled. // +optional ImageRepoSecret *v1.LocalObjectReference `json:"imageRepoSecret,omitempty"` // Selector describes on which nodes the Module should be loaded and optionally built. Selector map[string]string `json:"selector"` // If specified, the pod's tolerations. // +optional Tolerations []v1.Toleration `json:"tolerations,omitempty"` }
ModuleSpec describes how the KMM operator should deploy a Module on those nodes that need it.
func (*ModuleSpec) DeepCopy ¶
func (in *ModuleSpec) DeepCopy() *ModuleSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModuleSpec.
func (*ModuleSpec) DeepCopyInto ¶
func (in *ModuleSpec) DeepCopyInto(out *ModuleSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ModuleStatus ¶
type ModuleStatus struct { // DevicePlugin contains the status of the Device Plugin daemonset // if it was deployed during reconciliation DevicePlugin DaemonSetStatus `json:"devicePlugin,omitempty"` // ModuleLoader contains the status of the ModuleLoader daemonset ModuleLoader DaemonSetStatus `json:"moduleLoader"` }
ModuleStatus defines the observed state of Module.
func (*ModuleStatus) DeepCopy ¶
func (in *ModuleStatus) DeepCopy() *ModuleStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModuleStatus.
func (*ModuleStatus) DeepCopyInto ¶
func (in *ModuleStatus) DeepCopyInto(out *ModuleStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeModuleSpec ¶
type NodeModuleSpec struct { ModuleItem `json:",inline"` Config ModuleConfig `json:"config"` }
func (*NodeModuleSpec) DeepCopy ¶
func (in *NodeModuleSpec) DeepCopy() *NodeModuleSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeModuleSpec.
func (*NodeModuleSpec) DeepCopyInto ¶
func (in *NodeModuleSpec) DeepCopyInto(out *NodeModuleSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeModuleStatus ¶
type NodeModuleStatus struct { ModuleItem `json:",inline"` //+optional Config ModuleConfig `json:"config,omitempty"` //+optional LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"` }
func (*NodeModuleStatus) DeepCopy ¶
func (in *NodeModuleStatus) DeepCopy() *NodeModuleStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeModuleStatus.
func (*NodeModuleStatus) DeepCopyInto ¶
func (in *NodeModuleStatus) DeepCopyInto(out *NodeModuleStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeModulesConfig ¶
type NodeModulesConfig struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec NodeModulesConfigSpec `json:"spec,omitempty"` Status NodeModulesConfigStatus `json:"status,omitempty"` }
NodeModulesConfig keeps spec and state of the KMM modules on a node. +kubebuilder:resource:path=nodemodulesconfigs,scope=Cluster +kubebuilder:resource:path=nodemodulesconfigs,scope=Cluster,shortName=nmc +operator-sdk:csv:customresourcedefinitions:displayName="Node Modules Config"
func (*NodeModulesConfig) DeepCopy ¶
func (in *NodeModulesConfig) DeepCopy() *NodeModulesConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeModulesConfig.
func (*NodeModulesConfig) DeepCopyInto ¶
func (in *NodeModulesConfig) DeepCopyInto(out *NodeModulesConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NodeModulesConfig) DeepCopyObject ¶
func (in *NodeModulesConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NodeModulesConfigList ¶
type NodeModulesConfigList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` // List of NodeModulesConfig. More info: // https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md Items []NodeModulesConfig `json:"items"` }
NodeModulesConfigList is a list of NodeModulesConfig objects.
func (*NodeModulesConfigList) DeepCopy ¶
func (in *NodeModulesConfigList) DeepCopy() *NodeModulesConfigList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeModulesConfigList.
func (*NodeModulesConfigList) DeepCopyInto ¶
func (in *NodeModulesConfigList) DeepCopyInto(out *NodeModulesConfigList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NodeModulesConfigList) DeepCopyObject ¶
func (in *NodeModulesConfigList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NodeModulesConfigSpec ¶
type NodeModulesConfigSpec struct { // Modules list the spec of all the modules that need to be executed // on the node Modules []NodeModuleSpec `json:"modules,omitempty" patchStrategy:"merge" patchMergeKey:"type"` }
NodeModulesConfigSpec describes the desired state of modules on the node More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status +kubebuilder:validation:Required
func (*NodeModulesConfigSpec) DeepCopy ¶
func (in *NodeModulesConfigSpec) DeepCopy() *NodeModulesConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeModulesConfigSpec.
func (*NodeModulesConfigSpec) DeepCopyInto ¶
func (in *NodeModulesConfigSpec) DeepCopyInto(out *NodeModulesConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeModulesConfigStatus ¶
type NodeModulesConfigStatus struct { // Modules contain observations about each Module's node state status // +patchMergeKey=type // +patchStrategy=merge // +optional Modules []NodeModuleStatus `json:"modules,omitempty" patchStrategy:"merge" patchMergeKey:"type"` }
NodeModuleConfigStatus is the most recently observed status of the KMM modules on node. It is populated by the system and is read-only. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
func (*NodeModulesConfigStatus) DeepCopy ¶
func (in *NodeModulesConfigStatus) DeepCopy() *NodeModulesConfigStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeModulesConfigStatus.
func (*NodeModulesConfigStatus) DeepCopyInto ¶
func (in *NodeModulesConfigStatus) DeepCopyInto(out *NodeModulesConfigStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PreflightValidation ¶
type PreflightValidation struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec PreflightValidationSpec `json:"spec,omitempty"` Status PreflightValidationStatus `json:"status,omitempty"` }
PreflightValidation initiates a preflight validations for all Modules on the current Kubernetes cluster. +kubebuilder:resource:path=preflightvalidations,scope=Cluster,shortName=pfv +kubebuilder:deprecatedversion +operator-sdk:csv:customresourcedefinitions:displayName="Preflight Validation"
func (*PreflightValidation) ConvertFrom ¶
func (p *PreflightValidation) ConvertFrom(srcRaw conversion.Hub) error
func (*PreflightValidation) ConvertTo ¶
func (p *PreflightValidation) ConvertTo(dstRaw conversion.Hub) error
func (*PreflightValidation) DeepCopy ¶
func (in *PreflightValidation) DeepCopy() *PreflightValidation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PreflightValidation.
func (*PreflightValidation) DeepCopyInto ¶
func (in *PreflightValidation) DeepCopyInto(out *PreflightValidation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PreflightValidation) DeepCopyObject ¶
func (in *PreflightValidation) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PreflightValidationList ¶
type PreflightValidationList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` // List of PreflightValidation. More info: // https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md Items []PreflightValidation `json:"items"` }
PreflightValidationList is a list of PreflightValidation objects.
func (*PreflightValidationList) DeepCopy ¶
func (in *PreflightValidationList) DeepCopy() *PreflightValidationList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PreflightValidationList.
func (*PreflightValidationList) DeepCopyInto ¶
func (in *PreflightValidationList) DeepCopyInto(out *PreflightValidationList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PreflightValidationList) DeepCopyObject ¶
func (in *PreflightValidationList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PreflightValidationOCP ¶
type PreflightValidationOCP struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec v1beta2.PreflightValidationOCPSpec `json:"spec,omitempty"` Status PreflightValidationStatus `json:"status,omitempty"` }
PreflightValidationOCP initiates a preflight validations for all Modules on the current OCP cluster. +kubebuilder:resource:path=preflightvalidationsocp,scope=Cluster +kubebuilder:resource:path=preflightvalidationsocp,scope=Cluster,shortName=pfvo +operator-sdk:csv:customresourcedefinitions:displayName="Preflight Validation OCP"
func (*PreflightValidationOCP) ConvertFrom ¶
func (p *PreflightValidationOCP) ConvertFrom(srcRaw conversion.Hub) error
func (*PreflightValidationOCP) ConvertTo ¶
func (p *PreflightValidationOCP) ConvertTo(dstRaw conversion.Hub) error
func (*PreflightValidationOCP) DeepCopy ¶
func (in *PreflightValidationOCP) DeepCopy() *PreflightValidationOCP
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PreflightValidationOCP.
func (*PreflightValidationOCP) DeepCopyInto ¶
func (in *PreflightValidationOCP) DeepCopyInto(out *PreflightValidationOCP)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PreflightValidationOCP) DeepCopyObject ¶
func (in *PreflightValidationOCP) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PreflightValidationOCPList ¶
type PreflightValidationOCPList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` // List of PreflightValidation. More info: // https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md Items []PreflightValidationOCP `json:"items"` }
PreflightValidationList is a list of PreflightValidation objects.
func (*PreflightValidationOCPList) DeepCopy ¶
func (in *PreflightValidationOCPList) DeepCopy() *PreflightValidationOCPList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PreflightValidationOCPList.
func (*PreflightValidationOCPList) DeepCopyInto ¶
func (in *PreflightValidationOCPList) DeepCopyInto(out *PreflightValidationOCPList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PreflightValidationOCPList) DeepCopyObject ¶
func (in *PreflightValidationOCPList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PreflightValidationOCPSpec ¶
type PreflightValidationOCPSpec = v1beta2.PreflightValidationOCPSpec
PreflightValidationOCPSpec describes the desired state of the resource, such as the OCP release image that Module CRs need to be verified against as well as the push image flag More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status +kubebuilder:validation:Required +kubebuilder:object:generate=false
type PreflightValidationSpec ¶
type PreflightValidationSpec = v1beta2.PreflightValidationSpec
PreflightValidationSpec describes the desired state of the resource, such as the kernel version that Module CRs need to be verified against as well as the debug configuration of the logs More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status +kubebuilder:validation:Required +kubebuilder:object:generate=false
type PreflightValidationStatus ¶
type PreflightValidationStatus struct { // CRStatuses contain observations about each Module's preflight upgradability validation // +patchMergeKey=type // +patchStrategy=merge // +optional CRStatuses map[string]*CRStatus `json:"crStatuses,omitempty" patchStrategy:"merge" patchMergeKey:"type"` }
PreflightValidationStatus is the most recently observed status of the PreflightValidation. It is populated by the system and is read-only. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
func (*PreflightValidationStatus) DeepCopy ¶
func (in *PreflightValidationStatus) DeepCopy() *PreflightValidationStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PreflightValidationStatus.
func (*PreflightValidationStatus) DeepCopyInto ¶
func (in *PreflightValidationStatus) DeepCopyInto(out *PreflightValidationStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Sign ¶
type Sign struct { // +optional // Image to sign, ignored if a Build is present, required otherwise UnsignedImage string `json:"unsignedImage,omitempty"` // +optional // UnsignedImageRegistryTLS contains settings determining how to access registries of the unsigned image. UnsignedImageRegistryTLS TLSOptions `json:"unsignedImageRegistryTLS,omitempty"` // a secret containing the private key used to sign kernel modules for secureboot KeySecret *v1.LocalObjectReference `json:"keySecret"` // a secret containing the public key used to sign kernel modules for secureboot CertSecret *v1.LocalObjectReference `json:"certSecret"` // +optional // paths inside the image for the kernel modules to sign (if ommited all kmods are signed) FilesToSign []string `json:"filesToSign,omitempty"` }
func (*Sign) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Sign.
func (*Sign) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TLSOptions ¶
type TLSOptions struct { // +optional // If Insecure is true, the operator will be able to access a registry in an insecure (plain HTTP) protocol. Insecure bool `json:"insecure,omitempty"` // +optional // If InsecureSkipTLSVerify, the operator will accept any certificate provided by the registry. InsecureSkipTLSVerify bool `json:"insecureSkipTLSVerify,omitempty"` }
func (*TLSOptions) DeepCopy ¶
func (in *TLSOptions) DeepCopy() *TLSOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSOptions.
func (*TLSOptions) DeepCopyInto ¶
func (in *TLSOptions) DeepCopyInto(out *TLSOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.