Documentation ¶
Overview ¶
* arm64 utilities are in the webhooks package because they are used both * by validation and mutation webhooks.
* arm64 utilities are in the webhooks package because they are used both * by validation and mutation webhooks.
* hyperv utilities are in the webhooks package because they are used both * by validation and mutation webhooks.
Index ¶
- Variables
- func IsARM64() bool
- func IsKubeVirtServiceAccount(serviceAccount string) bool
- func IsPPC64() bool
- func SetAmd64Defaults(spec *v1.VirtualMachineInstanceSpec)
- func SetArm64Defaults(spec *v1.VirtualMachineInstanceSpec)
- func SetDefaultVirtualMachine(clusterConfig *virtconfig.ClusterConfig, vm *v1.VirtualMachine) error
- func SetDefaultVirtualMachineInstance(clusterConfig *virtconfig.ClusterConfig, vmi *v1.VirtualMachineInstance) error
- func SetHypervFeatureDependencies(spec *v1.VirtualMachineInstanceSpec) error
- func ValidateVirtualMachineInstanceArm64Setting(field *k8sfield.Path, spec *v1.VirtualMachineInstanceSpec) []metav1.StatusCause
- func ValidateVirtualMachineInstanceHypervFeatureDependencies(field *k8sfield.Path, spec *v1.VirtualMachineInstanceSpec) []metav1.StatusCause
- type HypervFeature
- type Informers
Constants ¶
This section is empty.
Variables ¶
var Arch = runtime.GOARCH
var MigrationGroupVersionResource = metav1.GroupVersionResource{ Group: v1.VirtualMachineInstanceMigrationGroupVersionKind.Group, Version: v1.VirtualMachineInstanceMigrationGroupVersionKind.Version, Resource: "virtualmachineinstancemigrations", }
var VirtualMachineGroupVersionResource = metav1.GroupVersionResource{ Group: v1.VirtualMachineGroupVersionKind.Group, Version: v1.VirtualMachineGroupVersionKind.Version, Resource: "virtualmachines", }
var VirtualMachineInstanceGroupVersionResource = metav1.GroupVersionResource{ Group: v1.VirtualMachineInstanceGroupVersionKind.Group, Version: v1.VirtualMachineInstanceGroupVersionKind.Version, Resource: "virtualmachineinstances", }
var VirtualMachineInstancePresetGroupVersionResource = metav1.GroupVersionResource{ Group: v1.VirtualMachineInstancePresetGroupVersionKind.Group, Version: v1.VirtualMachineInstancePresetGroupVersionKind.Version, Resource: "virtualmachineinstancepresets", }
var VirtualMachineInstanceReplicaSetGroupVersionResource = metav1.GroupVersionResource{ Group: v1.VirtualMachineInstanceReplicaSetGroupVersionKind.Group, Version: v1.VirtualMachineInstanceReplicaSetGroupVersionKind.Version, Resource: "virtualmachineinstancereplicasets", }
var VirtualMachinePoolGroupVersionResource = metav1.GroupVersionResource{ Group: poolv1.SchemeGroupVersion.Group, Version: poolv1.SchemeGroupVersion.Version, Resource: "virtualmachinepools", }
Functions ¶
func IsKubeVirtServiceAccount ¶ added in v0.38.0
func SetAmd64Defaults ¶ added in v0.59.0
func SetAmd64Defaults(spec *v1.VirtualMachineInstanceSpec)
SetAmd64Defaults is mutating function for mutating-webhook
func SetArm64Defaults ¶ added in v0.59.0
func SetArm64Defaults(spec *v1.VirtualMachineInstanceSpec)
SetArm64Defaults is mutating function for mutating-webhook
func SetDefaultVirtualMachine ¶ added in v0.59.0
func SetDefaultVirtualMachine(clusterConfig *virtconfig.ClusterConfig, vm *v1.VirtualMachine) error
func SetDefaultVirtualMachineInstance ¶ added in v0.59.0
func SetDefaultVirtualMachineInstance(clusterConfig *virtconfig.ClusterConfig, vmi *v1.VirtualMachineInstance) error
func SetHypervFeatureDependencies ¶ added in v0.59.0
func SetHypervFeatureDependencies(spec *v1.VirtualMachineInstanceSpec) error
func ValidateVirtualMachineInstanceArm64Setting ¶ added in v0.41.0
func ValidateVirtualMachineInstanceArm64Setting(field *k8sfield.Path, spec *v1.VirtualMachineInstanceSpec) []metav1.StatusCause
ValidateVirtualMachineInstanceArm64Setting is validation function for validating-webhook 1. if setting bios boot 2. if use uefi secure boot 3. if use host-model for cpu model 4. if not use 'scsi', 'virtio' as disk bus
func ValidateVirtualMachineInstanceHypervFeatureDependencies ¶ added in v0.19.0
func ValidateVirtualMachineInstanceHypervFeatureDependencies(field *k8sfield.Path, spec *v1.VirtualMachineInstanceSpec) []metav1.StatusCause
Types ¶
type HypervFeature ¶ added in v0.19.0
type HypervFeature struct { State **v1.FeatureState Field *k8sfield.Path Requires *HypervFeature }
func (HypervFeature) IsRequirementFulfilled ¶ added in v0.19.0
func (hf HypervFeature) IsRequirementFulfilled() (metav1.StatusCause, bool)
func (HypervFeature) String ¶ added in v0.19.0
func (hf HypervFeature) String() string
func (HypervFeature) TryToSetRequirement ¶ added in v0.19.0
func (hf HypervFeature) TryToSetRequirement() error
a requirement is compatible if 1. it is already enabled (either by the user or by us previously) 2. the user has not set it, so we can do on its behalf
type Informers ¶
type Informers struct { VMIPresetInformer cache.SharedIndexInformer VMRestoreInformer cache.SharedIndexInformer DataSourceInformer cache.SharedIndexInformer }