v1

package
v0.0.0-...-419d114 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 2, 2024 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Overview

Package v1 contains API Schema definitions for the vrb v1 API group +kubebuilder:object:generate=true +groupName=sriovvrb.intel.com

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "sriovvrb.intel.com", Version: "v1"}

	// 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 ACC100BBDevConfig

type ACC100BBDevConfig struct {
	// +kubebuilder:validation:Optional
	// +kubebuilder:default:false
	// +kubebuilder:validation:Enum=false
	PFMode bool `json:"pfMode,omitempty"`
	// +kubebuilder:validation:Minimum=1
	// +kubebuilder:validation:Maximum=64
	NumVfBundles int `json:"numVfBundles"`
	// +kubebuilder:validation:Minimum=1024
	// +kubebuilder:validation:Maximum=1024
	// +kubebuilder:default:1024
	// +kubebuilder:validation:Optional
	MaxQueueSize int              `json:"maxQueueSize,omitempty"`
	Uplink4G     QueueGroupConfig `json:"uplink4G"`
	Downlink4G   QueueGroupConfig `json:"downlink4G"`
	Uplink5G     QueueGroupConfig `json:"uplink5G"`
	Downlink5G   QueueGroupConfig `json:"downlink5G"`
}

ACC100BBDevConfig specifies variables to configure ACC100 with

func (*ACC100BBDevConfig) DeepCopy

func (in *ACC100BBDevConfig) DeepCopy() *ACC100BBDevConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ACC100BBDevConfig.

func (*ACC100BBDevConfig) DeepCopyInto

func (in *ACC100BBDevConfig) DeepCopyInto(out *ACC100BBDevConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AcceleratorSelector

type AcceleratorSelector struct {
	VendorID string `json:"vendorID,omitempty"`
	DeviceID string `json:"deviceID,omitempty"`
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:Pattern=`^[a-fA-F0-9]{4}:[a-fA-F0-9]{2}:[01][a-fA-F0-9]\.[0-7]$`
	PCIAddress string `json:"pciAddress,omitempty"`
	//+kubebuilder:validation:Pattern=`(pci-pf-stub|pci_pf_stub|igb_uio|vfio-pci)`
	PFDriver string `json:"driver,omitempty"`
	MaxVFs   int    `json:"maxVirtualFunctions,omitempty"`
}

func (*AcceleratorSelector) DeepCopy

func (in *AcceleratorSelector) DeepCopy() *AcceleratorSelector

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AcceleratorSelector.

func (*AcceleratorSelector) DeepCopyInto

func (in *AcceleratorSelector) DeepCopyInto(out *AcceleratorSelector)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (AcceleratorSelector) Matches

type BBDevConfig

type BBDevConfig struct {
	VRB1 *VRB1BBDevConfig `json:"vrb1,omitempty"`
	VRB2 *VRB2BBDevConfig `json:"vrb2,omitempty"`
}

BBDevConfig is a struct containing configuration for various FEC cards

func (*BBDevConfig) DeepCopy

func (in *BBDevConfig) DeepCopy() *BBDevConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BBDevConfig.

func (*BBDevConfig) DeepCopyInto

func (in *BBDevConfig) DeepCopyInto(out *BBDevConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*BBDevConfig) Validate

func (in *BBDevConfig) Validate() error

type ByPriority

type ByPriority []SriovVrbClusterConfig

func (ByPriority) DeepCopy

func (in ByPriority) DeepCopy() ByPriority

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ByPriority.

func (ByPriority) DeepCopyInto

func (in ByPriority) DeepCopyInto(out *ByPriority)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (ByPriority) Len

func (a ByPriority) Len() int

func (ByPriority) Less

func (a ByPriority) Less(i, j int) bool

func (ByPriority) Swap

func (a ByPriority) Swap(i, j int)

type FFTLutParam

type FFTLutParam struct {
	// Path to .tar.gz SRS-FFT file
	// +kubebuilder:validation:Pattern=`^((http|https)://.*\.tar\.gz)?$`
	FftUrl string `json:"fftUrl"`
	// SHA-1 checksum of .tar.gz SRS-FFT File
	// +kubebuilder:validation:Pattern=`^([a-fA-F0-9]{40})?$`
	FftChecksum string `json:"fftChecksum"`
}

FFTLutParam specifies variables required to use custom fft bin file

type NodeInventory

type NodeInventory struct {
	SriovAccelerators []SriovAccelerator `json:"sriovAccelerators,omitempty"`
}

func (*NodeInventory) DeepCopy

func (in *NodeInventory) DeepCopy() *NodeInventory

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeInventory.

func (*NodeInventory) DeepCopyInto

func (in *NodeInventory) DeepCopyInto(out *NodeInventory)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PhysicalFunctionConfig

type PhysicalFunctionConfig struct {
	// PFDriver to bound the PFs to
	//+kubebuilder:validation:Pattern=`(pci-pf-stub|pci_pf_stub|igb_uio|vfio-pci)`
	PFDriver string `json:"pfDriver"`
	// VFDriver to bound the VFs to
	VFDriver string `json:"vfDriver"`
	// VFAmount is an amount of VFs to be created
	// +kubebuilder:validation:Minimum=1
	VFAmount int `json:"vfAmount"`
	// BBDevConfig is a config for PF's queues
	BBDevConfig BBDevConfig `json:"bbDevConfig"`
}

PhysicalFunctionConfig defines a possible configuration of a single Physical Function (PF), i.e. card

func (*PhysicalFunctionConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PhysicalFunctionConfig.

func (*PhysicalFunctionConfig) DeepCopyInto

func (in *PhysicalFunctionConfig) DeepCopyInto(out *PhysicalFunctionConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PhysicalFunctionConfigExt

type PhysicalFunctionConfigExt struct {
	// PCIAdress is a Physical Functions's PCI address that will be configured according to this spec
	// +kubebuilder:validation:Pattern=`^[a-fA-F0-9]{4}:[a-fA-F0-9]{2}:[01][a-fA-F0-9]\.[0-7]$`
	PCIAddress string `json:"pciAddress"`

	// PFDriver to bound the PFs to
	//+kubebuilder:validation:Pattern=`(pci-pf-stub|pci_pf_stub|igb_uio|vfio-pci)`
	PFDriver string `json:"pfDriver"`

	// VFDriver to bound the VFs to
	VFDriver string `json:"vfDriver"`

	// VFAmount is an amount of VFs to be created
	// +kubebuilder:validation:Minimum=0
	VFAmount int `json:"vfAmount"`

	// BBDevConfig is a config for PF's queues
	BBDevConfig BBDevConfig `json:"bbDevConfig"`
}

func (*PhysicalFunctionConfigExt) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PhysicalFunctionConfigExt.

func (*PhysicalFunctionConfigExt) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type QueueGroupConfig

type QueueGroupConfig struct {
	// +kubebuilder:validation:Minimum=0
	// +kubebuilder:validation:Maximum=32
	NumQueueGroups int `json:"numQueueGroups"`
	// +kubebuilder:validation:Minimum=1
	// +kubebuilder:validation:Maximum=64
	NumAqsPerGroups int `json:"numAqsPerGroups"`
	// +kubebuilder:validation:Minimum=1
	// +kubebuilder:validation:Maximum=12
	AqDepthLog2 int `json:"aqDepthLog2"`
}

func (*QueueGroupConfig) DeepCopy

func (in *QueueGroupConfig) DeepCopy() *QueueGroupConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueueGroupConfig.

func (*QueueGroupConfig) DeepCopyInto

func (in *QueueGroupConfig) DeepCopyInto(out *QueueGroupConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SriovAccelerator

type SriovAccelerator struct {
	VendorID   string `json:"vendorID"`
	DeviceID   string `json:"deviceID"`
	PCIAddress string `json:"pciAddress"`
	PFDriver   string `json:"driver"`
	MaxVFs     int    `json:"maxVirtualFunctions"`
	VFs        []VF   `json:"virtualFunctions"`
}

func (*SriovAccelerator) DeepCopy

func (in *SriovAccelerator) DeepCopy() *SriovAccelerator

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SriovAccelerator.

func (*SriovAccelerator) DeepCopyInto

func (in *SriovAccelerator) DeepCopyInto(out *SriovAccelerator)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SriovVrbClusterConfig

type SriovVrbClusterConfig struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   SriovVrbClusterConfigSpec   `json:"spec,omitempty"`
	Status SriovVrbClusterConfigStatus `json:"status,omitempty"`
}

SriovVrbClusterConfig is the Schema for the SriovVrbClusterConfigs API

func (*SriovVrbClusterConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SriovVrbClusterConfig.

func (*SriovVrbClusterConfig) DeepCopyInto

func (in *SriovVrbClusterConfig) DeepCopyInto(out *SriovVrbClusterConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SriovVrbClusterConfig) DeepCopyObject

func (in *SriovVrbClusterConfig) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*SriovVrbClusterConfig) SetupWebhookWithManager

func (r *SriovVrbClusterConfig) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*SriovVrbClusterConfig) ValidateCreate

func (r *SriovVrbClusterConfig) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*SriovVrbClusterConfig) ValidateDelete

func (r *SriovVrbClusterConfig) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*SriovVrbClusterConfig) ValidateUpdate

func (r *SriovVrbClusterConfig) ValidateUpdate(_ runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type SriovVrbClusterConfigList

type SriovVrbClusterConfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []SriovVrbClusterConfig `json:"items"`
}

SriovVrbClusterConfigList contains a list of SriovVrbClusterConfig

func (*SriovVrbClusterConfigList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SriovVrbClusterConfigList.

func (*SriovVrbClusterConfigList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SriovVrbClusterConfigList) DeepCopyObject

func (in *SriovVrbClusterConfigList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SriovVrbClusterConfigSpec

type SriovVrbClusterConfigSpec struct {

	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// Selector describes target node for this spec
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`

	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// Selector describes target accelerator for this spec
	AcceleratorSelector AcceleratorSelector `json:"acceleratorSelector,omitempty"`

	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// Physical function (card) config
	PhysicalFunction PhysicalFunctionConfig `json:"physicalFunction"`

	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// Higher priority policies can override lower ones.
	Priority int `json:"priority,omitempty"`

	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// Skips drain process when true; default false. Should be true if operator is running on SNO
	DrainSkip bool `json:"drainSkip,omitempty"`
}

SriovVrbClusterConfigSpec defines the desired state of SriovVrbClusterConfig

func (*SriovVrbClusterConfigSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SriovVrbClusterConfigSpec.

func (*SriovVrbClusterConfigSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SriovVrbClusterConfigStatus

type SriovVrbClusterConfigStatus struct {
	// Indicates the synchronization status of the CR
	// +operator-sdk:csv:customresourcedefinitions:type=status
	SyncStatus    SyncStatus `json:"syncStatus,omitempty"`
	LastSyncError string     `json:"lastSyncError,omitempty"`
}

SriovVrbClusterConfigStatus defines the observed state of SriovVrbClusterConfig

func (*SriovVrbClusterConfigStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SriovVrbClusterConfigStatus.

func (*SriovVrbClusterConfigStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SriovVrbNodeConfig

type SriovVrbNodeConfig struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   SriovVrbNodeConfigSpec   `json:"spec,omitempty"`
	Status SriovVrbNodeConfigStatus `json:"status,omitempty"`
}

SriovVrbNodeConfig is the Schema for the SriovVrbNodeConfigs API

func (*SriovVrbNodeConfig) DeepCopy

func (in *SriovVrbNodeConfig) DeepCopy() *SriovVrbNodeConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SriovVrbNodeConfig.

func (*SriovVrbNodeConfig) DeepCopyInto

func (in *SriovVrbNodeConfig) DeepCopyInto(out *SriovVrbNodeConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SriovVrbNodeConfig) DeepCopyObject

func (in *SriovVrbNodeConfig) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*SriovVrbNodeConfig) FindCondition

func (in *SriovVrbNodeConfig) FindCondition(conditionType string) *metav1.Condition

type SriovVrbNodeConfigList

type SriovVrbNodeConfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []SriovVrbNodeConfig `json:"items"`
}

SriovVrbNodeConfigList contains a list of SriovVrbNodeConfig

func (*SriovVrbNodeConfigList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SriovVrbNodeConfigList.

func (*SriovVrbNodeConfigList) DeepCopyInto

func (in *SriovVrbNodeConfigList) DeepCopyInto(out *SriovVrbNodeConfigList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SriovVrbNodeConfigList) DeepCopyObject

func (in *SriovVrbNodeConfigList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SriovVrbNodeConfigSpec

type SriovVrbNodeConfigSpec struct {
	// List of PhysicalFunctions configs
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	PhysicalFunctions []PhysicalFunctionConfigExt `json:"physicalFunctions"`

	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// Skips drain process when true; default false. Should be true if operator is running on SNO
	DrainSkip bool `json:"drainSkip,omitempty"`
}

SriovVrbNodeConfigSpec defines the desired state of SriovVrbNodeConfig

func (*SriovVrbNodeConfigSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SriovVrbNodeConfigSpec.

func (*SriovVrbNodeConfigSpec) DeepCopyInto

func (in *SriovVrbNodeConfigSpec) DeepCopyInto(out *SriovVrbNodeConfigSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SriovVrbNodeConfigStatus

type SriovVrbNodeConfigStatus struct {
	// Provides information about device update status
	Conditions []metav1.Condition `json:"conditions,omitempty"`
	// Provides information about FPGA inventory on the node
	// +operator-sdk:csv:customresourcedefinitions:type=status
	Inventory NodeInventory `json:"inventory,omitempty"`
}

SriovVrbNodeConfigStatus defines the observed state of SriovVrbNodeConfig

func (*SriovVrbNodeConfigStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SriovVrbNodeConfigStatus.

func (*SriovVrbNodeConfigStatus) DeepCopyInto

func (in *SriovVrbNodeConfigStatus) DeepCopyInto(out *SriovVrbNodeConfigStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SyncStatus

type SyncStatus string
var (
	// InProgressSync indicates that the synchronization of the CR is in progress
	InProgressSync SyncStatus = "InProgress"
	// SucceededSync indicates that the synchronization of the CR succeeded
	SucceededSync SyncStatus = "Succeeded"
	// FailedSync indicates that the synchronization of the CR failed
	FailedSync SyncStatus = "Failed"
	// IgnoredSync indicates that the CR is ignored
	IgnoredSync SyncStatus = "Ignored"
)

type VF

type VF struct {
	PCIAddress string `json:"pciAddress"`
	Driver     string `json:"driver"`
	DeviceID   string `json:"deviceID"`
}

func (*VF) DeepCopy

func (in *VF) DeepCopy() *VF

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VF.

func (*VF) DeepCopyInto

func (in *VF) DeepCopyInto(out *VF)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VRB1BBDevConfig

type VRB1BBDevConfig struct {
	ACC100BBDevConfig `json:",inline"`
	QFFT              QueueGroupConfig `json:"qfft"`
	FFTLut            FFTLutParam      `json:"fftLut,omitempty"`
}

VRB1BBDevConfig specifies variables to configure ACC200 with

func (*VRB1BBDevConfig) DeepCopy

func (in *VRB1BBDevConfig) DeepCopy() *VRB1BBDevConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VRB1BBDevConfig.

func (*VRB1BBDevConfig) DeepCopyInto

func (in *VRB1BBDevConfig) DeepCopyInto(out *VRB1BBDevConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*VRB1BBDevConfig) Validate

func (in *VRB1BBDevConfig) Validate() error

type VRB2BBDevConfig

type VRB2BBDevConfig struct {
	ACC100BBDevConfig `json:",inline"`
	QFFT              QueueGroupConfig `json:"qfft"`
	QMLD              QueueGroupConfig `json:"qmld"`
	FFTLut            FFTLutParam      `json:"fftLut,omitempty"`
}

func (*VRB2BBDevConfig) DeepCopy

func (in *VRB2BBDevConfig) DeepCopy() *VRB2BBDevConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VRB1BBDevConfig.

func (*VRB2BBDevConfig) DeepCopyInto

func (in *VRB2BBDevConfig) DeepCopyInto(out *VRB2BBDevConfig)

func (*VRB2BBDevConfig) Validate

func (in *VRB2BBDevConfig) Validate() error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL