instancetype

package
v1.2.0 Latest Latest
Warning

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

Go to latest
Published: Feb 26, 2024 License: Apache-2.0 Imports: 28 Imported by: 0

Documentation

Index

Constants

View Source
const (
	VMFieldConflictErrorFmt                         = "VM field %s conflicts with selected instance type"
	InsufficientInstanceTypeCPUResourcesErrorFmt    = "insufficient CPU resources of %d vCPU provided by instance type, preference requires %d vCPU"
	InsufficientVMCPUResourcesErrorFmt              = "insufficient CPU resources of %d vCPU provided by VirtualMachine, preference requires %d vCPU provided as %s"
	InsufficientInstanceTypeMemoryResourcesErrorFmt = "insufficient Memory resources of %s provided by instance type, preference requires %s"
	InsufficientVMMemoryResourcesErrorFmt           = "insufficient Memory resources of %s provided by VirtualMachine, preference requires %s"
	NoVMCPUResourcesDefinedErrorFmt                 = "no CPU resources provided by VirtualMachine, preference requires %d vCPU"
	DefaultSpreadRatio                              = 2
)

Variables

This section is empty.

Functions

func AddInstancetypeNameAnnotations

func AddInstancetypeNameAnnotations(vm *virtv1.VirtualMachine, target metav1.Object)

func AddPreferenceNameAnnotations

func AddPreferenceNameAnnotations(vm *virtv1.VirtualMachine, target metav1.Object)

func ApplyDevicePreferences added in v0.57.0

func ApplyDevicePreferences(preferenceSpec *instancetypev1beta1.VirtualMachinePreferenceSpec, vmiSpec *virtv1.VirtualMachineInstanceSpec)

func CompareRevisions added in v0.59.0

func CompareRevisions(revisionA *appsv1.ControllerRevision, revisionB *appsv1.ControllerRevision, isPreference bool) (bool, error)

func CreateControllerRevision added in v0.58.0

func CreateControllerRevision(vm *virtv1.VirtualMachine, object runtime.Object) (*appsv1.ControllerRevision, error)

func GenerateRevisionNamePatch

func GenerateRevisionNamePatch(instancetypeRevision, preferenceRevision *appsv1.ControllerRevision) ([]byte, error)

func GetRevisionName

func GetRevisionName(vmName, resourceName string, resourceUID types.UID, resourceGeneration int64) string

func NewIgnoreableInferenceError added in v1.1.0

func NewIgnoreableInferenceError(err error) error

Types

type Conflicts

type Conflicts []*k8sfield.Path

func (Conflicts) String

func (c Conflicts) String() string

type IgnoreableInferenceError added in v1.1.0

type IgnoreableInferenceError struct {
	// contains filtered or unexported fields
}

func (*IgnoreableInferenceError) Error added in v1.1.0

func (e *IgnoreableInferenceError) Error() string

func (*IgnoreableInferenceError) Unwrap added in v1.1.0

func (e *IgnoreableInferenceError) Unwrap() error

type InstancetypeMethods added in v1.0.0

type InstancetypeMethods struct {
	InstancetypeStore        cache.Store
	ClusterInstancetypeStore cache.Store
	PreferenceStore          cache.Store
	ClusterPreferenceStore   cache.Store
	ControllerRevisionStore  cache.Store
	Clientset                kubecli.KubevirtClient
}

func (*InstancetypeMethods) ApplyToVmi added in v1.0.0

func (*InstancetypeMethods) CheckPreferenceRequirements added in v1.0.0

func (*InstancetypeMethods) FindInstancetypeSpec added in v1.0.0

func (*InstancetypeMethods) FindPreferenceSpec added in v1.0.0

func (*InstancetypeMethods) InferDefaultInstancetype added in v1.0.0

func (m *InstancetypeMethods) InferDefaultInstancetype(vm *virtv1.VirtualMachine) error

func (*InstancetypeMethods) InferDefaultPreference added in v1.0.0

func (m *InstancetypeMethods) InferDefaultPreference(vm *virtv1.VirtualMachine) error

func (*InstancetypeMethods) StoreControllerRevisions added in v1.0.0

func (m *InstancetypeMethods) StoreControllerRevisions(vm *virtv1.VirtualMachine) error

type Methods

type Methods interface {
	FindInstancetypeSpec(vm *virtv1.VirtualMachine) (*instancetypev1beta1.VirtualMachineInstancetypeSpec, error)
	ApplyToVmi(field *k8sfield.Path, instancetypespec *instancetypev1beta1.VirtualMachineInstancetypeSpec, preferenceSpec *instancetypev1beta1.VirtualMachinePreferenceSpec, vmiSpec *virtv1.VirtualMachineInstanceSpec, vmiMetadata *metav1.ObjectMeta) Conflicts
	FindPreferenceSpec(vm *virtv1.VirtualMachine) (*instancetypev1beta1.VirtualMachinePreferenceSpec, error)
	StoreControllerRevisions(vm *virtv1.VirtualMachine) error
	InferDefaultInstancetype(vm *virtv1.VirtualMachine) error
	InferDefaultPreference(vm *virtv1.VirtualMachine) error
	CheckPreferenceRequirements(instancetypeSpec *instancetypev1beta1.VirtualMachineInstancetypeSpec, preferenceSpec *instancetypev1beta1.VirtualMachinePreferenceSpec, vmiSpec *virtv1.VirtualMachineInstanceSpec) (Conflicts, error)
}

Jump to

Keyboard shortcuts

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