types

package
v1.61.0 Latest Latest
Warning

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

Go to latest
Published: Jan 28, 2025 License: Apache-2.0 Imports: 4 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

Functions

This section is empty.

Types

type Affinity added in v1.60.0

type Affinity struct {
	// Deprecated: Use TopologySpreadConstraint instead.
	PodAffinityPreset providerconfigtypes.ConfigVarString `json:"podAffinityPreset,omitempty"`
	// Deprecated: Use TopologySpreadConstraint instead.
	PodAntiAffinityPreset providerconfigtypes.ConfigVarString `json:"podAntiAffinityPreset,omitempty"`
	NodeAffinityPreset    NodeAffinityPreset                  `json:"nodeAffinityPreset,omitempty"`
}

Affinity.

type Auth added in v1.60.0

type Auth struct {
	Kubeconfig providerconfigtypes.ConfigVarString `json:"kubeconfig,omitempty"`
}

Auth.

type Disk added in v1.60.0

type Disk struct {
	Size              providerconfigtypes.ConfigVarString `json:"size,omitempty"`
	StorageClassName  providerconfigtypes.ConfigVarString `json:"storageClassName,omitempty"`
	StorageAccessType providerconfigtypes.ConfigVarString `json:"storageAccessType,omitempty"`
}

Disk.

type Flavor added in v1.60.0

type Flavor struct {
	Name    providerconfigtypes.ConfigVarString `json:"name,omitempty"`
	Profile providerconfigtypes.ConfigVarString `json:"profile,omitempty"`
}

Flavor.

type Location added in v1.60.0

type Location struct {
	Region string `json:"region,omitempty"`
	Zone   string `json:"zone,omitempty"`
}

Location describes the region and zone where the machines are created at and where the deployed resources will reside.

type NodeAffinityPreset added in v1.60.0

type NodeAffinityPreset struct {
	Type   providerconfigtypes.ConfigVarString   `json:"type,omitempty"`
	Key    providerconfigtypes.ConfigVarString   `json:"key,omitempty"`
	Values []providerconfigtypes.ConfigVarString `json:"values,omitempty"`
}

NodeAffinityPreset.

type PrimaryDisk added in v1.60.0

type PrimaryDisk struct {
	Disk
	// DataVolumeSecretRef is the name of the secret that will be sent to the CDI data importer pod to read basic auth parameters.
	DataVolumeSecretRef providerconfigtypes.ConfigVarString `json:"dataVolumeSecretRef,omitempty"`
	// ExtraHeaders is a list of strings containing extra headers to include with HTTP transfer requests
	// +optional
	ExtraHeaders []string `json:"extraHeaders,omitempty"`
	// ExtraHeadersSecretRef is a secret that contains a list of strings containing extra headers to include with HTTP transfer requests
	// +optional
	ExtraHeadersSecretRef providerconfigtypes.ConfigVarString `json:"extraHeadersSecretRef,omitempty"`
	// StorageTarget describes which VirtualMachine storage target will be used in the DataVolumeTemplate.
	StorageTarget providerconfigtypes.ConfigVarString `json:"storageTarget,omitempty"`
	// OsImage describes the OS that will be installed on the VirtualMachine.
	OsImage providerconfigtypes.ConfigVarString `json:"osImage,omitempty"`
	// Source describes the VM Disk Image source.
	Source providerconfigtypes.ConfigVarString `json:"source,omitempty"`
	// PullMethod describes the VM Disk Image source optional pull method for registry source. Defaults to 'node'.
	PullMethod providerconfigtypes.ConfigVarString `json:"pullMethod,omitempty"`
}

PrimaryDisk.

type ProviderNetwork added in v1.60.0

type ProviderNetwork struct {
	Name string `json:"name"`
	VPC  VPC    `json:"vpc"`
}

ProviderNetwork describes the infra cluster network fabric that is being used.

type RawConfig

type RawConfig struct {
	ClusterName               providerconfigtypes.ConfigVarString `json:"clusterName"`
	Auth                      Auth                                `json:"auth,omitempty"`
	VirtualMachine            VirtualMachine                      `json:"virtualMachine,omitempty"`
	Affinity                  Affinity                            `json:"affinity,omitempty"`
	TopologySpreadConstraints []TopologySpreadConstraint          `json:"topologySpreadConstraints"`
}

func GetConfig added in v1.60.0

func GetConfig(pconfig providerconfigtypes.Config) (*RawConfig, error)

type SecondaryDisks added in v1.60.0

type SecondaryDisks struct {
	Disk
}

SecondaryDisks.

type Subnet added in v1.60.0

type Subnet struct {
	Name string `json:"name"`
}

Subnet a smaller, segmented portion of a larger network, like a Virtual Private Cloud (VPC).

type Template added in v1.60.0

type Template struct {
	CPUs           providerconfigtypes.ConfigVarString `json:"cpus,omitempty"`
	Memory         providerconfigtypes.ConfigVarString `json:"memory,omitempty"`
	PrimaryDisk    PrimaryDisk                         `json:"primaryDisk,omitempty"`
	SecondaryDisks []SecondaryDisks                    `json:"secondaryDisks,omitempty"`
}

Template.

type TopologySpreadConstraint added in v1.60.0

type TopologySpreadConstraint struct {
	// MaxSkew describes the degree to which VMs may be unevenly distributed.
	MaxSkew providerconfigtypes.ConfigVarString `json:"maxSkew,omitempty"`
	// TopologyKey is the key of infra-node labels.
	TopologyKey providerconfigtypes.ConfigVarString `json:"topologyKey,omitempty"`
	// WhenUnsatisfiable indicates how to deal with a VM if it doesn't satisfy
	// the spread constraint.
	WhenUnsatisfiable providerconfigtypes.ConfigVarString `json:"whenUnsatisfiable,omitempty"`
}

TopologySpreadConstraint describes topology spread constraints for VMs.

type VPC added in v1.60.0

type VPC struct {
	Name   string  `json:"name"`
	Subnet *Subnet `json:"subnet,omitempty"`
}

VPC is a virtual network dedicated to a single tenant within a KubeVirt, where the resources in the VPC is isolated from any other resources within the KubeVirt infra cluster.

type VirtualMachine added in v1.60.0

type VirtualMachine struct {
	// Deprecated: use Instancetype/Preference instead.
	Flavor Flavor `json:"flavor,omitempty"`
	// Instancetype is optional.
	Instancetype *kubevirtv1.InstancetypeMatcher `json:"instancetype,omitempty"`
	// Preference is optional.
	Preference              *kubevirtv1.PreferenceMatcher       `json:"preference,omitempty"`
	Template                Template                            `json:"template,omitempty"`
	DNSPolicy               providerconfigtypes.ConfigVarString `json:"dnsPolicy,omitempty"`
	DNSConfig               *corev1.PodDNSConfig                `json:"dnsConfig,omitempty"`
	Location                *Location                           `json:"location,omitempty"`
	ProviderNetwork         *ProviderNetwork                    `json:"providerNetwork,omitempty"`
	EnableNetworkMultiQueue providerconfigtypes.ConfigVarBool   `json:"enableNetworkMultiQueue,omitempty"`
	EvictionStrategy        string                              `json:"evictionStrategy,omitempty"`
}

VirtualMachine.

Jump to

Keyboard shortcuts

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