v1

package
v0.13.2 Latest Latest
Warning

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

Go to latest
Published: Jan 24, 2019 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

View Source
const (
	IOThreadsPolicyShared  IOThreadsPolicy = "shared"
	IOThreadsPolicyAuto    IOThreadsPolicy = "auto"
	CPUModeHostPassthrough                 = "host-passthrough"
	CPUModeHostModel                       = "host-model"
)
View Source
const (
	// HPETTickPolicyDelay delivers ticks at a constant rate. The guest time will
	// be delayed due to the late tick
	HPETTickPolicyDelay HPETTickPolicy = "delay"
	// HPETTickPolicyCatchup Delivers ticks at a higher rate to catch up with the
	// missed tick. The guest time should not be delayed once catchup is complete
	HPETTickPolicyCatchup HPETTickPolicy = "catchup"
	// HPETTickPolicyMerge merges the missed tick(s) into one tick and inject. The
	// guest time may be delayed, depending on how the OS reacts to the merging
	// of ticks.
	HPETTickPolicyMerge HPETTickPolicy = "merge"
	// HPETTickPolicyDiscard discards all missed ticks.
	HPETTickPolicyDiscard HPETTickPolicy = "discard"

	// PITTickPolicyDelay delivers ticks at a constant rate. The guest time will
	// be delayed due to the late tick.
	PITTickPolicyDelay PITTickPolicy = "delay"
	// PITTickPolicyCatchup Delivers ticks at a higher rate to catch up with the
	// missed tick. The guest time should not be delayed once catchup is complete.
	PITTickPolicyCatchup PITTickPolicy = "catchup"
	// PITTickPolicyDiscard discards all missed ticks.
	PITTickPolicyDiscard PITTickPolicy = "discard"

	// RTCTickPolicyDelay delivers ticks at a constant rate. The guest time will
	// be delayed due to the late tick.
	RTCTickPolicyDelay RTCTickPolicy = "delay"
	// RTCTickPolicyCatchup Delivers ticks at a higher rate to catch up with the
	// missed tick. The guest time should not be delayed once catchup is complete.
	RTCTickPolicyCatchup RTCTickPolicy = "catchup"
)
View Source
const (
	// This label marks resources that belong to KubeVirt. An optional value
	// may indicate which specific KubeVirt component a resource belongs to.
	AppLabel string = "kubevirt.io"
	// This annotation is used to match virtual machine instances represented as
	// libvirt XML domains with their pods. Among other things, the annotation is
	// used to detect virtual machines with dead pods. Used on Pod.
	DomainAnnotation string = "kubevirt.io/domain"
	// Represents the name of the migration job this target pod is associated with
	MigrationJobNameAnnotation string = "kubevirt.io/migrationJobName"
	// This label is used to match virtual machine instance IDs with pods.
	// Similar to kubevirt.io/domain. Used on Pod.
	// Deprecated: would be replaced by a Controller Reference in a future release.
	CreatedByLabel string = "kubevirt.io/created-by"
	// This label is used to indicate that this pod is the target of a migration job.
	MigrationJobLabel string = "kubevirt.io/migrationJobUID"
	// This label describes which cluster node runs the virtual machine
	// instance. Needed because with CRDs we can't use field selectors. Used on
	// VirtualMachineInstance.
	NodeNameLabel string = "kubevirt.io/nodeName"
	// This label describes which cluster node runs the target Pod for a Virtual
	// Machine Instance migration job. Needed because with CRDs we can't use field
	// selectors. Used on VirtualMachineInstance.
	MigrationTargetNodeNameLabel string = "kubevirt.io/migrationTargetNodeName"
	// This label declares whether a particular node is available for
	// scheduling virtual machine instances on it. Used on Node.
	NodeSchedulable string = "kubevirt.io/schedulable"
	// This annotation is regularly updated by virt-handler to help determine
	// if a particular node is alive and hence should be available for new
	// virtual machine instance scheduling. Used on Node.
	VirtHandlerHeartbeat string = "kubevirt.io/heartbeat"
	// This label will be set on all resources created by the operator
	ManagedByLabel              = "app.kubernetes.io/managed-by"
	ManagedByLabelOperatorValue = "kubevirt-operator"

	VirtualMachineInstanceFinalizer string = "foregroundDeleteVirtualMachine"
	CPUManager                      string = "cpumanager"
)
View Source
const DefaultGracePeriodSeconds int64 = 30
View Source
const GroupName = "kubevirt.io"

GroupName is the group name use in this package

View Source
const SubresourceGroupName = "subresources.kubevirt.io"

Variables

View Source
var (
	Scheme         = runtime.NewScheme()
	Codecs         = serializer.NewCodecFactory(Scheme)
	ParameterCodec = runtime.NewParameterCodec(Scheme)
	SchemeBuilder  = runtime.NewSchemeBuilder(addKnownTypes)
	AddToScheme    = SchemeBuilder.AddToScheme
)
View Source
var GroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha3"}

GroupVersion is group version used to register these objects

View Source
var KubeVirtGroupVersionKind = schema.GroupVersionKind{Group: GroupName, Version: GroupVersion.Version, Kind: "KubeVirt"}
View Source
var SubresourceGroupVersion = schema.GroupVersion{Group: SubresourceGroupName, Version: "v1alpha3"}

GroupVersion is group version used to register these objects

View Source
var VirtualMachineGroupVersionKind = schema.GroupVersionKind{Group: GroupName, Version: GroupVersion.Version, Kind: "VirtualMachine"}
View Source
var VirtualMachineInstanceGroupVersionKind = schema.GroupVersionKind{Group: GroupName, Version: GroupVersion.Version, Kind: "VirtualMachineInstance"}

GroupVersionKind

View Source
var VirtualMachineInstanceMigrationGroupVersionKind = schema.GroupVersionKind{Group: GroupName, Version: GroupVersion.Version, Kind: "VirtualMachineInstanceMigration"}
View Source
var VirtualMachineInstancePresetGroupVersionKind = schema.GroupVersionKind{Group: GroupName, Version: GroupVersion.Version, Kind: "VirtualMachineInstancePreset"}
View Source
var VirtualMachineInstanceReplicaSetGroupVersionKind = schema.GroupVersionKind{Group: GroupName, Version: GroupVersion.Version, Kind: "VirtualMachineInstanceReplicaSet"}

Functions

func GetOpenAPIDefinitions added in v0.4.1

func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition

func PrepareVMINodeAntiAffinitySelectorRequirement added in v0.6.1

func PrepareVMINodeAntiAffinitySelectorRequirement(vmi *VirtualMachineInstance) k8sv1.NodeSelectorRequirement

Given a VirtualMachineInstance, create a NodeSelectorTerm with anti-affinity for that VirtualMachineInstance's node. This is useful for the case when a migration away from a node must occur.

func RegisterDefaults added in v0.2.0

func RegisterDefaults(scheme *runtime.Scheme) error

RegisterDefaults adds defaulters functions to the given scheme. Public to allow building arbitrary schemes. All generated defaulters are covering - they call all nested defaulters.

func SetDefaults_CDRomTarget added in v0.2.0

func SetDefaults_CDRomTarget(obj *CDRomTarget)

func SetDefaults_DiskDevice added in v0.2.0

func SetDefaults_DiskDevice(obj *DiskDevice)

func SetDefaults_FeatureAPIC added in v0.3.0

func SetDefaults_FeatureAPIC(obj *FeatureAPIC)

func SetDefaults_FeatureSpinlocks added in v0.2.0

func SetDefaults_FeatureSpinlocks(obj *FeatureSpinlocks)

func SetDefaults_FeatureState added in v0.2.0

func SetDefaults_FeatureState(obj *FeatureState)

func SetDefaults_FeatureVendorID added in v0.2.0

func SetDefaults_FeatureVendorID(obj *FeatureVendorID)

func SetDefaults_Firmware added in v0.2.0

func SetDefaults_Firmware(obj *Firmware)

func SetDefaults_FloppyTarget added in v0.2.0

func SetDefaults_FloppyTarget(obj *FloppyTarget)

func SetDefaults_HPETTimer added in v0.2.0

func SetDefaults_HPETTimer(obj *HPETTimer)

func SetDefaults_HypervTimer added in v0.2.0

func SetDefaults_HypervTimer(obj *HypervTimer)

func SetDefaults_I6300ESBWatchdog added in v0.2.0

func SetDefaults_I6300ESBWatchdog(obj *I6300ESBWatchdog)

func SetDefaults_KVMTimer added in v0.2.0

func SetDefaults_KVMTimer(obj *KVMTimer)

func SetDefaults_NetworkInterface added in v0.6.1

func SetDefaults_NetworkInterface(obj *VirtualMachineInstance)

func SetDefaults_PITTimer added in v0.2.0

func SetDefaults_PITTimer(obj *PITTimer)

func SetDefaults_RTCTimer added in v0.2.0

func SetDefaults_RTCTimer(obj *RTCTimer)

func SetDefaults_VirtualMachineInstance added in v0.6.1

func SetDefaults_VirtualMachineInstance(obj *VirtualMachineInstance)

func SetDefaults_Watchdog added in v0.2.0

func SetDefaults_Watchdog(obj *Watchdog)

func SetObjectDefaults_VirtualMachine added in v0.2.0

func SetObjectDefaults_VirtualMachine(in *VirtualMachine)

func SetObjectDefaults_VirtualMachineInstance added in v0.6.1

func SetObjectDefaults_VirtualMachineInstance(in *VirtualMachineInstance)

func SetObjectDefaults_VirtualMachineInstanceList added in v0.6.1

func SetObjectDefaults_VirtualMachineInstanceList(in *VirtualMachineInstanceList)

func SetObjectDefaults_VirtualMachineInstancePreset added in v0.6.1

func SetObjectDefaults_VirtualMachineInstancePreset(in *VirtualMachineInstancePreset)

func SetObjectDefaults_VirtualMachineInstancePresetList added in v0.6.1

func SetObjectDefaults_VirtualMachineInstancePresetList(in *VirtualMachineInstancePresetList)

func SetObjectDefaults_VirtualMachineInstanceReplicaSet added in v0.6.1

func SetObjectDefaults_VirtualMachineInstanceReplicaSet(in *VirtualMachineInstanceReplicaSet)

func SetObjectDefaults_VirtualMachineInstanceReplicaSetList added in v0.6.1

func SetObjectDefaults_VirtualMachineInstanceReplicaSetList(in *VirtualMachineInstanceReplicaSetList)

func SetObjectDefaults_VirtualMachineList added in v0.2.0

func SetObjectDefaults_VirtualMachineList(in *VirtualMachineList)

func UpdateAntiAffinityFromVMINode added in v0.6.1

func UpdateAntiAffinityFromVMINode(pod *k8sv1.Pod, vmi *VirtualMachineInstance) *k8sv1.Affinity

Given a VirtualMachineInstance, update all NodeSelectorTerms with anti-affinity for that VirtualMachineInstance's node. This is useful for the case when a migration away from a node must occur. This method returns the full Affinity structure updated the anti affinity terms

Types

type CDRomTarget added in v0.2.0

type CDRomTarget struct {
	// Bus indicates the type of disk device to emulate.
	// supported values: virtio, sata, scsi.
	Bus string `json:"bus,omitempty"`
	// ReadOnly.
	// Defaults to true.
	ReadOnly *bool `json:"readonly,omitempty"`
	// Tray indicates if the tray of the device is open or closed.
	// Allowed values are "open" and "closed".
	// Defaults to closed.
	// +optional
	Tray TrayState `json:"tray,omitempty"`
}

--- +k8s:openapi-gen=true

func (*CDRomTarget) DeepCopy added in v0.2.0

func (in *CDRomTarget) DeepCopy() *CDRomTarget

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

func (*CDRomTarget) DeepCopyInto added in v0.2.0

func (in *CDRomTarget) DeepCopyInto(out *CDRomTarget)

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

func (CDRomTarget) SwaggerDoc added in v0.2.0

func (CDRomTarget) SwaggerDoc() map[string]string

type CPU added in v0.3.0

type CPU struct {
	// Cores specifies the number of cores inside the vmi.
	// Must be a value greater or equal 1.
	Cores uint32 `json:"cores,omitempty"`
	// Sockets specifies the number of sockets inside the vmi.
	// Must be a value greater or equal 1.
	Sockets uint32 `json:"sockets,omitempty"`
	// Threads specifies the number of threads inside the vmi.
	// Must be a value greater or equal 1.
	Threads uint32 `json:"threads,omitempty"`
	// Model specifies the CPU model inside the VMI.
	// List of available models https://github.com/libvirt/libvirt/blob/master/src/cpu/cpu_map.xml.
	// It is possible to specify special cases like "host-passthrough" to get the same CPU as the node
	// and "host-model" to get CPU closest to the node one.
	// For more information see https://libvirt.org/formatdomain.html#elementsCPU.
	// Defaults to host-model.
	// +optional
	Model string `json:"model,omitempty"`
	// DedicatedCPUPlacement requests the scheduler to place the VirtualMachineInstance on a node
	// with enough dedicated pCPUs and pin the vCPUs to it.
	// +optional
	DedicatedCPUPlacement bool `json:"dedicatedCpuPlacement,omitempty"`
}

CPU allows specifying the CPU topology. --- +k8s:openapi-gen=true

func (*CPU) DeepCopy added in v0.3.0

func (in *CPU) DeepCopy() *CPU

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

func (*CPU) DeepCopyInto added in v0.3.0

func (in *CPU) DeepCopyInto(out *CPU)

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

func (CPU) SwaggerDoc added in v0.3.0

func (CPU) SwaggerDoc() map[string]string

type Clock

type Clock struct {
	// ClockOffset allows specifying the UTC offset or the timezone of the guest clock.
	ClockOffset `json:",inline"`
	// Timer specifies whih timers are attached to the vmi.
	Timer *Timer `json:"timer,inline"`
}

Represents the clock and timers of a vmi. --- +k8s:openapi-gen=true

func (*Clock) DeepCopy added in v0.2.0

func (in *Clock) DeepCopy() *Clock

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

func (*Clock) DeepCopyInto added in v0.2.0

func (in *Clock) DeepCopyInto(out *Clock)

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

func (Clock) SwaggerDoc

func (Clock) SwaggerDoc() map[string]string

type ClockOffset added in v0.2.0

type ClockOffset struct {
	// UTC sets the guest clock to UTC on each boot. If an offset is specified,
	// guest changes to the clock will be kept during reboots and are not reset.
	UTC *ClockOffsetUTC `json:"utc,omitempty"`
	// Timezone sets the guest clock to the specified timezone.
	// Zone name follows the TZ environment variable format (e.g. 'America/New_York').
	Timezone *ClockOffsetTimezone `json:"timezone,omitempty"`
}

Exactly one of its members must be set. --- +k8s:openapi-gen=true

func (*ClockOffset) DeepCopy added in v0.2.0

func (in *ClockOffset) DeepCopy() *ClockOffset

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

func (*ClockOffset) DeepCopyInto added in v0.2.0

func (in *ClockOffset) DeepCopyInto(out *ClockOffset)

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

func (ClockOffset) SwaggerDoc added in v0.2.0

func (ClockOffset) SwaggerDoc() map[string]string

type ClockOffsetTimezone added in v0.2.0

type ClockOffsetTimezone string

ClockOffsetTimezone sets the guest clock to the specified timezone. Zone name follows the TZ environment variable format (e.g. 'America/New_York'). --- +k8s:openapi-gen=true

type ClockOffsetUTC added in v0.2.0

type ClockOffsetUTC struct {
	// OffsetSeconds specifies an offset in seconds, relative to UTC. If set,
	// guest changes to the clock will be kept during reboots and not reset.
	OffsetSeconds *int `json:"offsetSeconds,omitempty"`
}

UTC sets the guest clock to UTC on each boot. --- +k8s:openapi-gen=true

func (*ClockOffsetUTC) DeepCopy added in v0.2.0

func (in *ClockOffsetUTC) DeepCopy() *ClockOffsetUTC

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

func (*ClockOffsetUTC) DeepCopyInto added in v0.2.0

func (in *ClockOffsetUTC) DeepCopyInto(out *ClockOffsetUTC)

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

func (ClockOffsetUTC) SwaggerDoc added in v0.2.0

func (ClockOffsetUTC) SwaggerDoc() map[string]string

type CloudInitNoCloudSource added in v0.2.0

type CloudInitNoCloudSource struct {
	// UserDataSecretRef references a k8s secret that contains NoCloud userdata.
	// + optional
	UserDataSecretRef *v1.LocalObjectReference `json:"secretRef,omitempty"`
	// UserDataBase64 contains NoCloud cloud-init userdata as a base64 encoded string.
	// + optional
	UserDataBase64 string `json:"userDataBase64,omitempty"`
	// UserData contains NoCloud inline cloud-init userdata.
	// + optional
	UserData string `json:"userData,omitempty"`
}

Represents a cloud-init nocloud user data source. More info: http://cloudinit.readthedocs.io/en/latest/topics/datasources/nocloud.html --- +k8s:openapi-gen=true

func (*CloudInitNoCloudSource) DeepCopy added in v0.2.0

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

func (*CloudInitNoCloudSource) DeepCopyInto added in v0.2.0

func (in *CloudInitNoCloudSource) DeepCopyInto(out *CloudInitNoCloudSource)

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

func (CloudInitNoCloudSource) SwaggerDoc added in v0.2.0

func (CloudInitNoCloudSource) SwaggerDoc() map[string]string

type CniNetwork added in v0.9.2

type CniNetwork struct {
	// References to a NetworkAttachmentDefinition CRD object. Format:
	// <networkName>, <namespace>/<networkName>. If namespace is not
	// specified, VMI namespace is assumed.
	// In case of genie, it references the CNI plugin name.
	NetworkName string `json:"networkName"`
}

Represents the cni network. --- +k8s:openapi-gen=true

func (*CniNetwork) DeepCopy added in v0.9.2

func (in *CniNetwork) DeepCopy() *CniNetwork

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

func (*CniNetwork) DeepCopyInto added in v0.9.2

func (in *CniNetwork) DeepCopyInto(out *CniNetwork)

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

func (CniNetwork) SwaggerDoc added in v0.9.2

func (CniNetwork) SwaggerDoc() map[string]string

type ConfigMapVolumeSource added in v0.9.0

type ConfigMapVolumeSource struct {
	v1.LocalObjectReference `json:",inline"`
	// Specify whether the ConfigMap or it's keys must be defined
	// +optional
	Optional *bool `json:"optional,omitempty"`
}

ConfigMapVolumeSource adapts a ConfigMap into a volume. More info: https://kubernetes.io/docs/concepts/storage/volumes/#configmap --- +k8s:openapi-gen=true

func (*ConfigMapVolumeSource) DeepCopy added in v0.9.0

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

func (*ConfigMapVolumeSource) DeepCopyInto added in v0.9.0

func (in *ConfigMapVolumeSource) DeepCopyInto(out *ConfigMapVolumeSource)

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

func (ConfigMapVolumeSource) SwaggerDoc added in v0.9.0

func (ConfigMapVolumeSource) SwaggerDoc() map[string]string

type ContainerDiskSource added in v0.11.0

type ContainerDiskSource struct {
	// Image is the name of the image with the embedded disk.
	Image string `json:"image"`
	// ImagePullSecret is the name of the Docker registry secret required to pull the image. The secret must already exist.
	ImagePullSecret string `json:"imagePullSecret,omitempty"`
	// Path defines the path to disk file in the container
	Path string `json:"path,omitempty"`
}

Represents a docker image with an embedded disk. --- +k8s:openapi-gen=true

func (*ContainerDiskSource) DeepCopy added in v0.11.0

func (in *ContainerDiskSource) DeepCopy() *ContainerDiskSource

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

func (*ContainerDiskSource) DeepCopyInto added in v0.11.0

func (in *ContainerDiskSource) DeepCopyInto(out *ContainerDiskSource)

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

func (ContainerDiskSource) SwaggerDoc added in v0.11.0

func (ContainerDiskSource) SwaggerDoc() map[string]string

type DHCPOptions added in v0.11.0

type DHCPOptions struct {
	// If specified will pass option 67 to interface's DHCP server
	// +optional
	BootFileName string `json:"bootFileName,omitempty"`
	// If specified will pass option 66 to interface's DHCP server
	// +optional
	TFTPServerName string `json:"tftpServerName,omitempty"`
	// If specified will pass the configured NTP server to the VM via DHCP option 042.
	// +optional
	NTPServers []string `json:"ntpServers,omitempty"`
}

Extra DHCP options to use in the interface. --- +k8s:openapi-gen=true

func (*DHCPOptions) DeepCopy added in v0.11.0

func (in *DHCPOptions) DeepCopy() *DHCPOptions

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

func (*DHCPOptions) DeepCopyInto added in v0.11.0

func (in *DHCPOptions) DeepCopyInto(out *DHCPOptions)

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

func (DHCPOptions) SwaggerDoc added in v0.11.0

func (DHCPOptions) SwaggerDoc() map[string]string

type DataVolumeSource added in v0.8.0

type DataVolumeSource struct {
	// Name represents the name of the DataVolume in the same namespace
	Name string `json:"name"`
}

--- +k8s:openapi-gen=true

func (*DataVolumeSource) DeepCopy added in v0.8.0

func (in *DataVolumeSource) DeepCopy() *DataVolumeSource

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

func (*DataVolumeSource) DeepCopyInto added in v0.8.0

func (in *DataVolumeSource) DeepCopyInto(out *DataVolumeSource)

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

func (DataVolumeSource) SwaggerDoc added in v0.8.0

func (DataVolumeSource) SwaggerDoc() map[string]string

type Devices

type Devices struct {
	// Disks describes disks, cdroms, floppy and luns which are connected to the vmi.
	Disks []Disk `json:"disks,omitempty"`
	// Watchdog describes a watchdog device which can be added to the vmi.
	Watchdog *Watchdog `json:"watchdog,omitempty"`
	// Interfaces describe network interfaces which are added to the vmi.
	Interfaces []Interface `json:"interfaces,omitempty"`
	// Whether to attach a pod network interface. Defaults to true.
	AutoattachPodInterface *bool `json:"autoattachPodInterface,omitempty"`
	// Whether to attach the default graphics device or not.
	// VNC will not be available if set to false. Defaults to true.
	AutoattachGraphicsDevice *bool `json:"autoattachGraphicsDevice,omitempty"`
	// Whether to have random number generator from host
	// +optional
	Rng *Rng `json:"rng,omitempty"`
	// Whether or not to enable virtio multi-queue for block devices
	// +optional
	BlockMultiQueue *bool `json:"blockMultiQueue,omitempty"`
	// If specified, virtual network interfaces configured with a virtio bus will also enable the vhost multiqueue feature
	// +optional
	NetworkInterfaceMultiQueue *bool `json:"networkInterfaceMultiqueue,omitempty"`
}

--- +k8s:openapi-gen=true

func (*Devices) DeepCopy added in v0.2.0

func (in *Devices) DeepCopy() *Devices

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

func (*Devices) DeepCopyInto added in v0.2.0

func (in *Devices) DeepCopyInto(out *Devices)

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

func (Devices) SwaggerDoc

func (Devices) SwaggerDoc() map[string]string

type Disk

type Disk struct {
	// Name is the device name
	Name string `json:"name"`
	// DiskDevice specifies as which device the disk should be added to the guest.
	// Defaults to Disk.
	DiskDevice `json:",inline"`
	// BootOrder is an integer value > 0, used to determine ordering of boot devices.
	// Lower values take precedence.
	// Each disk or interface that has a boot order must have a unique value.
	// Disks without a boot order are not tried if a disk with a boot order exists.
	// +optional
	BootOrder *uint `json:"bootOrder,omitempty"`
	// Serial provides the ability to specify a serial number for the disk device.
	// +optional
	Serial string `json:"serial,omitempty"`
	// dedicatedIOThread indicates this disk should have an exclusive IO Thread.
	// Enabling this implies useIOThreads = true.
	// Defaults to false.
	// +optional
	DedicatedIOThread *bool `json:"dedicatedIOThread,omitempty"`
	// Cache specifies which kvm disk cache mode should be used.
	// +optional
	Cache DriverCache `json:"cache,omitempty"`
}

--- +k8s:openapi-gen=true

func (*Disk) DeepCopy added in v0.2.0

func (in *Disk) DeepCopy() *Disk

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

func (*Disk) DeepCopyInto added in v0.2.0

func (in *Disk) DeepCopyInto(out *Disk)

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

func (Disk) SwaggerDoc

func (Disk) SwaggerDoc() map[string]string

type DiskDevice added in v0.2.0

type DiskDevice struct {
	// Attach a volume as a disk to the vmi.
	Disk *DiskTarget `json:"disk,omitempty"`
	// Attach a volume as a LUN to the vmi.
	LUN *LunTarget `json:"lun,omitempty"`
	// Attach a volume as a floppy to the vmi.
	Floppy *FloppyTarget `json:"floppy,omitempty"`
	// Attach a volume as a cdrom to the vmi.
	CDRom *CDRomTarget `json:"cdrom,omitempty"`
}

Represents the target of a volume to mount. Only one of its members may be specified. --- +k8s:openapi-gen=true

func (*DiskDevice) DeepCopy added in v0.2.0

func (in *DiskDevice) DeepCopy() *DiskDevice

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

func (*DiskDevice) DeepCopyInto added in v0.2.0

func (in *DiskDevice) DeepCopyInto(out *DiskDevice)

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

func (DiskDevice) SwaggerDoc added in v0.2.0

func (DiskDevice) SwaggerDoc() map[string]string

type DiskTarget

type DiskTarget struct {
	// Bus indicates the type of disk device to emulate.
	// supported values: virtio, sata, scsi.
	Bus string `json:"bus,omitempty"`
	// ReadOnly.
	// Defaults to false.
	ReadOnly bool `json:"readonly,omitempty"`
	// If specified, the virtual disk will be placed on the guests pci address with the specifed PCI address. For example: 0000:81:01.10
	// +optional
	PciAddress string `json:"pciAddress,omitempty"`
}

--- +k8s:openapi-gen=true

func (*DiskTarget) DeepCopy added in v0.2.0

func (in *DiskTarget) DeepCopy() *DiskTarget

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

func (*DiskTarget) DeepCopyInto added in v0.2.0

func (in *DiskTarget) DeepCopyInto(out *DiskTarget)

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

func (DiskTarget) SwaggerDoc

func (DiskTarget) SwaggerDoc() map[string]string

type DomainSpec

type DomainSpec struct {
	// Resources describes the Compute Resources required by this vmi.
	Resources ResourceRequirements `json:"resources,omitempty"`
	// CPU allow specified the detailed CPU topology inside the vmi.
	// +optional
	CPU *CPU `json:"cpu,omitempty"`
	// Memory allow specifying the VMI memory features.
	// +optional
	Memory *Memory `json:"memory,omitempty"`
	// Machine type.
	// +optional
	Machine Machine `json:"machine,omitempty"`
	// Firmware.
	// +optional
	Firmware *Firmware `json:"firmware,omitempty"`
	// Clock sets the clock and timers of the vmi.
	// +optional
	Clock *Clock `json:"clock,omitempty"`
	// Features like acpi, apic, hyperv.
	// +optional
	Features *Features `json:"features,omitempty"`
	// Devices allows adding disks, network interfaces, ...
	Devices Devices `json:"devices"`
	// Controls whether or not disks will share IOThreads.
	// Omitting IOThreadsPolicy disables use of IOThreads.
	// One of: shared, auto
	// +optional
	IOThreadsPolicy *IOThreadsPolicy `json:"ioThreadsPolicy,omitempty"`
}

--- +k8s:openapi-gen=true

func NewMinimalDomainSpec

func NewMinimalDomainSpec() DomainSpec

func (*DomainSpec) DeepCopy added in v0.2.0

func (in *DomainSpec) DeepCopy() *DomainSpec

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

func (*DomainSpec) DeepCopyInto added in v0.2.0

func (in *DomainSpec) DeepCopyInto(out *DomainSpec)

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

func (DomainSpec) SwaggerDoc

func (DomainSpec) SwaggerDoc() map[string]string

type DriverCache added in v0.9.3

type DriverCache string

--- +k8s:openapi-gen=true

const (
	// CacheNone - I/O from the guest is not cached on the host, but may be kept in a writeback disk cache.
	CacheNone DriverCache = "none"
	// CacheWriteThrough - I/O from the guest is cached on the host but written through to the physical medium.
	CacheWriteThrough DriverCache = "writethrough"
)

type EmptyDiskSource added in v0.4.0

type EmptyDiskSource struct {
	// Capacity of the sparse disk.
	Capacity resource.Quantity `json:"capacity"`
}

EmptyDisk represents a temporary disk which shares the vmis lifecycle. --- +k8s:openapi-gen=true

func (*EmptyDiskSource) DeepCopy added in v0.4.0

func (in *EmptyDiskSource) DeepCopy() *EmptyDiskSource

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

func (*EmptyDiskSource) DeepCopyInto added in v0.4.0

func (in *EmptyDiskSource) DeepCopyInto(out *EmptyDiskSource)

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

func (EmptyDiskSource) SwaggerDoc added in v0.4.0

func (EmptyDiskSource) SwaggerDoc() map[string]string

type EphemeralVolumeSource added in v0.3.0

type EphemeralVolumeSource struct {
	// PersistentVolumeClaimVolumeSource represents a reference to a PersistentVolumeClaim in the same namespace.
	// Directly attached to the vmi via qemu.
	// More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
	// +optional
	PersistentVolumeClaim *v1.PersistentVolumeClaimVolumeSource `json:"persistentVolumeClaim,omitempty"`
}

--- +k8s:openapi-gen=true

func (*EphemeralVolumeSource) DeepCopy added in v0.3.0

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

func (*EphemeralVolumeSource) DeepCopyInto added in v0.3.0

func (in *EphemeralVolumeSource) DeepCopyInto(out *EphemeralVolumeSource)

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

func (EphemeralVolumeSource) SwaggerDoc added in v0.3.0

func (EphemeralVolumeSource) SwaggerDoc() map[string]string

type FeatureAPIC added in v0.2.0

type FeatureAPIC struct {
	// Enabled determines if the feature should be enabled or disabled on the guest.
	// Defaults to true.
	// +optional
	Enabled *bool `json:"enabled,omitempty"`
	// EndOfInterrupt enables the end of interrupt notification in the guest.
	// Defaults to false.
	// +optional
	EndOfInterrupt bool `json:"endOfInterrupt,omitempty"`
}

--- +k8s:openapi-gen=true

func (*FeatureAPIC) DeepCopy added in v0.2.0

func (in *FeatureAPIC) DeepCopy() *FeatureAPIC

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

func (*FeatureAPIC) DeepCopyInto added in v0.2.0

func (in *FeatureAPIC) DeepCopyInto(out *FeatureAPIC)

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

func (FeatureAPIC) SwaggerDoc added in v0.2.0

func (FeatureAPIC) SwaggerDoc() map[string]string

type FeatureHyperv added in v0.2.0

type FeatureHyperv struct {
	// Relaxed relaxes constraints on timer.
	// Defaults to the machine type setting.
	// +optional
	Relaxed *FeatureState `json:"relaxed,omitempty"`
	// VAPIC indicates whether virtual APIC is enabled.
	// Defaults to the machine type setting.
	// +optional
	VAPIC *FeatureState `json:"vapic,omitempty"`
	// Spinlocks indicates if spinlocks should be made available to the guest.
	// +optional
	Spinlocks *FeatureSpinlocks `json:"spinlocks,omitempty"`
	// VPIndex enables the Virtual Processor Index to help windows identifying virtual processors.
	// Defaults to the machine type setting.
	// +optional
	VPIndex *FeatureState `json:"vpindex,omitempty"`
	// Runtime.
	// Defaults to the machine type setting.
	// +optional
	Runtime *FeatureState `json:"runtime,omitempty"`
	// SyNIC enable Synthetic Interrupt Controller.
	// Defaults to the machine type setting.
	// +optional
	SyNIC *FeatureState `json:"synic,omitempty"`
	// SyNICTimer enable Synthetic Interrupt Controller timer.
	// Defaults to the machine type setting.
	// +optional
	SyNICTimer *FeatureState `json:"synictimer,omitempty"`
	// Reset enables Hyperv reboot/reset for the vmi.
	// Defaults to the machine type setting.
	// +optional
	Reset *FeatureState `json:"reset,omitempty"`
	// VendorID allows setting the hypervisor vendor id.
	// Defaults to the machine type setting.
	// +optional
	VendorID *FeatureVendorID `json:"vendorid,omitempty"`
}

Hyperv specific features. --- +k8s:openapi-gen=true

func (*FeatureHyperv) DeepCopy added in v0.2.0

func (in *FeatureHyperv) DeepCopy() *FeatureHyperv

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

func (*FeatureHyperv) DeepCopyInto added in v0.2.0

func (in *FeatureHyperv) DeepCopyInto(out *FeatureHyperv)

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

func (FeatureHyperv) SwaggerDoc added in v0.2.0

func (FeatureHyperv) SwaggerDoc() map[string]string

type FeatureSpinlocks added in v0.2.0

type FeatureSpinlocks struct {
	// Enabled determines if the feature should be enabled or disabled on the guest.
	// Defaults to true.
	// +optional
	Enabled *bool `json:"enabled,omitempty"`
	// Retries indicates the number of retries.
	// Must be a value greater or equal 4096.
	// Defaults to 4096.
	// +optional
	Retries *uint32 `json:"spinlocks,omitempty"`
}

--- +k8s:openapi-gen=true

func (*FeatureSpinlocks) DeepCopy added in v0.2.0

func (in *FeatureSpinlocks) DeepCopy() *FeatureSpinlocks

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

func (*FeatureSpinlocks) DeepCopyInto added in v0.2.0

func (in *FeatureSpinlocks) DeepCopyInto(out *FeatureSpinlocks)

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

func (FeatureSpinlocks) SwaggerDoc added in v0.2.0

func (FeatureSpinlocks) SwaggerDoc() map[string]string

type FeatureState added in v0.2.0

type FeatureState struct {
	// Enabled determines if the feature should be enabled or disabled on the guest.
	// Defaults to true.
	// +optional
	Enabled *bool `json:"enabled,omitempty"`
}

Represents if a feature is enabled or disabled. --- +k8s:openapi-gen=true

func (*FeatureState) DeepCopy added in v0.2.0

func (in *FeatureState) DeepCopy() *FeatureState

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

func (*FeatureState) DeepCopyInto added in v0.2.0

func (in *FeatureState) DeepCopyInto(out *FeatureState)

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

func (FeatureState) SwaggerDoc added in v0.2.0

func (FeatureState) SwaggerDoc() map[string]string

type FeatureVendorID added in v0.2.0

type FeatureVendorID struct {
	// Enabled determines if the feature should be enabled or disabled on the guest.
	// Defaults to true.
	// +optional
	Enabled *bool `json:"enabled,omitempty"`
	// VendorID sets the hypervisor vendor id, visible to the vmi.
	// String up to twelve characters.
	VendorID string `json:"vendorid,omitempty"`
}

--- +k8s:openapi-gen=true

func (*FeatureVendorID) DeepCopy added in v0.2.0

func (in *FeatureVendorID) DeepCopy() *FeatureVendorID

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

func (*FeatureVendorID) DeepCopyInto added in v0.2.0

func (in *FeatureVendorID) DeepCopyInto(out *FeatureVendorID)

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

func (FeatureVendorID) SwaggerDoc added in v0.2.0

func (FeatureVendorID) SwaggerDoc() map[string]string

type Features added in v0.2.0

type Features struct {
	// ACPI enables/disables ACPI insidejsondata guest.
	// Defaults to enabled.
	// +optional
	ACPI FeatureState `json:"acpi,omitempty"`
	// Defaults to the machine type setting.
	// +optional
	APIC *FeatureAPIC `json:"apic,omitempty"`
	// Defaults to the machine type setting.
	// +optional
	Hyperv *FeatureHyperv `json:"hyperv,omitempty"`
}

--- +k8s:openapi-gen=true

func (*Features) DeepCopy added in v0.2.0

func (in *Features) DeepCopy() *Features

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

func (*Features) DeepCopyInto added in v0.2.0

func (in *Features) DeepCopyInto(out *Features)

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

func (Features) SwaggerDoc added in v0.2.0

func (Features) SwaggerDoc() map[string]string

type Firmware added in v0.2.0

type Firmware struct {
	// UUID reported by the vmi bios.
	// Defaults to a random generated uid.
	UUID types.UID `json:"uuid,omitempty"`
}

--- +k8s:openapi-gen=true

func (*Firmware) DeepCopy added in v0.2.0

func (in *Firmware) DeepCopy() *Firmware

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

func (*Firmware) DeepCopyInto added in v0.2.0

func (in *Firmware) DeepCopyInto(out *Firmware)

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

func (Firmware) SwaggerDoc added in v0.2.0

func (Firmware) SwaggerDoc() map[string]string

type FloppyTarget added in v0.2.0

type FloppyTarget struct {
	// ReadOnly.
	// Defaults to false.
	ReadOnly bool `json:"readonly,omitempty"`
	// Tray indicates if the tray of the device is open or closed.
	// Allowed values are "open" and "closed".
	// Defaults to closed.
	// +optional
	Tray TrayState `json:"tray,omitempty"`
}

--- +k8s:openapi-gen=true

func (*FloppyTarget) DeepCopy added in v0.2.0

func (in *FloppyTarget) DeepCopy() *FloppyTarget

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

func (*FloppyTarget) DeepCopyInto added in v0.2.0

func (in *FloppyTarget) DeepCopyInto(out *FloppyTarget)

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

func (FloppyTarget) SwaggerDoc added in v0.2.0

func (FloppyTarget) SwaggerDoc() map[string]string

type HPETTickPolicy added in v0.2.0

type HPETTickPolicy string

HPETTickPolicy determines what happens when QEMU misses a deadline for injecting a tick to the guest. --- +k8s:openapi-gen=true

type HPETTimer added in v0.2.0

type HPETTimer struct {
	// TickPolicy determines what happens when QEMU misses a deadline for injecting a tick to the guest.
	// One of "delay", "catchup", "merge", "discard".
	TickPolicy HPETTickPolicy `json:"tickPolicy,omitempty"`
	// Enabled set to false makes sure that the machine type or a preset can't add the timer.
	// Defaults to true.
	// +optional
	Enabled *bool `json:"present,omitempty"`
}

--- +k8s:openapi-gen=true

func (*HPETTimer) DeepCopy added in v0.2.0

func (in *HPETTimer) DeepCopy() *HPETTimer

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

func (*HPETTimer) DeepCopyInto added in v0.2.0

func (in *HPETTimer) DeepCopyInto(out *HPETTimer)

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

func (HPETTimer) SwaggerDoc added in v0.2.0

func (HPETTimer) SwaggerDoc() map[string]string

type Handler added in v0.11.0

type Handler struct {
	// HTTPGet specifies the http request to perform.
	// +optional
	HTTPGet *k8sv1.HTTPGetAction `json:"httpGet,omitempty"`
	// TCPSocket specifies an action involving a TCP port.
	// TCP hooks not yet supported
	// TODO: implement a realistic TCP lifecycle hook
	// +optional
	TCPSocket *k8sv1.TCPSocketAction `json:"tcpSocket,omitempty"`
}

Handler defines a specific action that should be taken TODO: pass structured data to these actions, and document that data here.

func (*Handler) DeepCopy added in v0.11.0

func (in *Handler) DeepCopy() *Handler

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

func (*Handler) DeepCopyInto added in v0.11.0

func (in *Handler) DeepCopyInto(out *Handler)

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

func (Handler) SwaggerDoc added in v0.11.0

func (Handler) SwaggerDoc() map[string]string

type HostDisk added in v0.9.0

type HostDisk struct {
	// The path to HostDisk image located on the cluster
	Path string `json:"path"`
	// Contains information if disk.img exists or should be created
	// allowed options are 'Disk' and 'DiskOrCreate'
	Type HostDiskType `json:"type"`
	// Capacity of the sparse disk
	// +optional
	Capacity resource.Quantity `json:"capacity,omitempty"`
	// Shared indicate whether the path is shared between nodes
	Shared *bool `json:"shared,omitempty"`
}

Represents a disk created on the cluster level --- +k8s:openapi-gen=true

func (*HostDisk) DeepCopy added in v0.9.0

func (in *HostDisk) DeepCopy() *HostDisk

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

func (*HostDisk) DeepCopyInto added in v0.9.0

func (in *HostDisk) DeepCopyInto(out *HostDisk)

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

func (HostDisk) SwaggerDoc added in v0.9.0

func (HostDisk) SwaggerDoc() map[string]string

type HostDiskType added in v0.9.0

type HostDiskType string

--- +k8s:openapi-gen=true

const (
	// if disk does not exist at the given path,
	// a disk image will be created there
	HostDiskExistsOrCreate HostDiskType = "DiskOrCreate"
	// a disk image must exist at given disk path
	HostDiskExists HostDiskType = "Disk"
)

type Hugepages added in v0.6.1

type Hugepages struct {
	// PageSize specifies the hugepage size, for x86_64 architecture valid values are 1Gi and 2Mi.
	PageSize string `json:"pageSize,omitempty"`
}

Hugepages allow to use hugepages for the VirtualMachineInstance instead of regular memory. --- +k8s:openapi-gen=true

func (*Hugepages) DeepCopy added in v0.6.1

func (in *Hugepages) DeepCopy() *Hugepages

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

func (*Hugepages) DeepCopyInto added in v0.6.1

func (in *Hugepages) DeepCopyInto(out *Hugepages)

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

func (Hugepages) SwaggerDoc added in v0.6.1

func (Hugepages) SwaggerDoc() map[string]string

type HypervTimer added in v0.2.0

type HypervTimer struct {
	// Enabled set to false makes sure that the machine type or a preset can't add the timer.
	// Defaults to true.
	// +optional
	Enabled *bool `json:"present,omitempty"`
}

--- +k8s:openapi-gen=true

func (*HypervTimer) DeepCopy added in v0.2.0

func (in *HypervTimer) DeepCopy() *HypervTimer

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

func (*HypervTimer) DeepCopyInto added in v0.2.0

func (in *HypervTimer) DeepCopyInto(out *HypervTimer)

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

func (HypervTimer) SwaggerDoc added in v0.2.0

func (HypervTimer) SwaggerDoc() map[string]string

type I6300ESBWatchdog added in v0.2.0

type I6300ESBWatchdog struct {
	// The action to take. Valid values are poweroff, reset, shutdown.
	// Defaults to reset.
	Action WatchdogAction `json:"action,omitempty"`
}

i6300esb watchdog device. --- +k8s:openapi-gen=true

func (*I6300ESBWatchdog) DeepCopy added in v0.2.0

func (in *I6300ESBWatchdog) DeepCopy() *I6300ESBWatchdog

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

func (*I6300ESBWatchdog) DeepCopyInto added in v0.2.0

func (in *I6300ESBWatchdog) DeepCopyInto(out *I6300ESBWatchdog)

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

func (I6300ESBWatchdog) SwaggerDoc added in v0.2.0

func (I6300ESBWatchdog) SwaggerDoc() map[string]string

type IOThreadsPolicy added in v0.9.0

type IOThreadsPolicy string

type Interface

type Interface struct {
	// Logical name of the interface as well as a reference to the associated networks.
	// Must match the Name of a Network.
	Name string `json:"name"`
	// Interface model.
	// One of: e1000, e1000e, ne2k_pci, pcnet, rtl8139, virtio.
	// Defaults to virtio.
	// TODO:(ihar) switch to enums once opengen-api supports them. See: https://github.com/kubernetes/kube-openapi/issues/51
	Model string `json:"model,omitempty"`
	// BindingMethod specifies the method which will be used to connect the interface to the guest.
	// Defaults to Bridge.
	InterfaceBindingMethod `json:",inline"`
	// List of ports to be forwarded to the virtual machine.
	Ports []Port `json:"ports,omitempty"`
	// Interface MAC address. For example: de:ad:00:00:be:af or DE-AD-00-00-BE-AF.
	MacAddress string `json:"macAddress,omitempty"`
	// BootOrder is an integer value > 0, used to determine ordering of boot devices.
	// Lower values take precedence.
	// Each interface or disk that has a boot order must have a unique value.
	// Interfaces without a boot order are not tried.
	// +optional
	BootOrder *uint `json:"bootOrder,omitempty"`
	// If specified, the virtual network interface will be placed on the guests pci address with the specifed PCI address. For example: 0000:81:01.10
	// +optional
	PciAddress string `json:"pciAddress,omitempty"`
	// If specified the network interface will pass additional DHCP options to the VMI
	// +optional
	DHCPOptions *DHCPOptions `json:"dhcpOptions,omitempty"`
}

--- +k8s:openapi-gen=true

func DefaultNetworkInterface added in v0.6.0

func DefaultNetworkInterface() *Interface

func DefaultSlirpNetworkInterface added in v0.7.0

func DefaultSlirpNetworkInterface() *Interface

func (*Interface) DeepCopy added in v0.6.0

func (in *Interface) DeepCopy() *Interface

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

func (*Interface) DeepCopyInto added in v0.6.0

func (in *Interface) DeepCopyInto(out *Interface)

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

func (Interface) SwaggerDoc

func (Interface) SwaggerDoc() map[string]string

type InterfaceBindingMethod added in v0.6.0

type InterfaceBindingMethod struct {
	Bridge     *InterfaceBridge     `json:"bridge,omitempty"`
	Slirp      *InterfaceSlirp      `json:"slirp,omitempty"`
	Masquerade *InterfaceMasquerade `json:"masquerade,omitempty"`
	SRIOV      *InterfaceSRIOV      `json:"sriov,omitempty"`
}

Represents the method which will be used to connect the interface to the guest. Only one of its members may be specified. --- +k8s:openapi-gen=true

func (*InterfaceBindingMethod) DeepCopy added in v0.6.0

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

func (*InterfaceBindingMethod) DeepCopyInto added in v0.6.0

func (in *InterfaceBindingMethod) DeepCopyInto(out *InterfaceBindingMethod)

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

func (InterfaceBindingMethod) SwaggerDoc added in v0.6.0

func (InterfaceBindingMethod) SwaggerDoc() map[string]string

type InterfaceBridge added in v0.6.0

type InterfaceBridge struct{}

--- +k8s:openapi-gen=true

func (*InterfaceBridge) DeepCopy added in v0.6.0

func (in *InterfaceBridge) DeepCopy() *InterfaceBridge

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

func (*InterfaceBridge) DeepCopyInto added in v0.6.0

func (in *InterfaceBridge) DeepCopyInto(out *InterfaceBridge)

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

func (InterfaceBridge) SwaggerDoc added in v0.6.0

func (InterfaceBridge) SwaggerDoc() map[string]string

type InterfaceMasquerade added in v0.11.1

type InterfaceMasquerade struct{}

--- +k8s:openapi-gen=true

func (*InterfaceMasquerade) DeepCopy added in v0.11.1

func (in *InterfaceMasquerade) DeepCopy() *InterfaceMasquerade

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

func (*InterfaceMasquerade) DeepCopyInto added in v0.11.1

func (in *InterfaceMasquerade) DeepCopyInto(out *InterfaceMasquerade)

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

func (InterfaceMasquerade) SwaggerDoc added in v0.11.1

func (InterfaceMasquerade) SwaggerDoc() map[string]string

type InterfaceSRIOV added in v0.11.0

type InterfaceSRIOV struct{}

--- +k8s:openapi-gen=true

func (*InterfaceSRIOV) DeepCopy added in v0.11.0

func (in *InterfaceSRIOV) DeepCopy() *InterfaceSRIOV

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

func (*InterfaceSRIOV) DeepCopyInto added in v0.11.0

func (in *InterfaceSRIOV) DeepCopyInto(out *InterfaceSRIOV)

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

func (InterfaceSRIOV) SwaggerDoc added in v0.11.0

func (InterfaceSRIOV) SwaggerDoc() map[string]string

type InterfaceSlirp added in v0.7.0

type InterfaceSlirp struct{}

--- +k8s:openapi-gen=true

func (*InterfaceSlirp) DeepCopy added in v0.7.0

func (in *InterfaceSlirp) DeepCopy() *InterfaceSlirp

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

func (*InterfaceSlirp) DeepCopyInto added in v0.7.0

func (in *InterfaceSlirp) DeepCopyInto(out *InterfaceSlirp)

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

func (InterfaceSlirp) SwaggerDoc added in v0.7.0

func (InterfaceSlirp) SwaggerDoc() map[string]string

type KVMTimer added in v0.2.0

type KVMTimer struct {
	// Enabled set to false makes sure that the machine type or a preset can't add the timer.
	// Defaults to true.
	// +optional
	Enabled *bool `json:"present,omitempty"`
}

--- +k8s:openapi-gen=true

func (*KVMTimer) DeepCopy added in v0.2.0

func (in *KVMTimer) DeepCopy() *KVMTimer

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

func (*KVMTimer) DeepCopyInto added in v0.2.0

func (in *KVMTimer) DeepCopyInto(out *KVMTimer)

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

func (KVMTimer) SwaggerDoc added in v0.2.0

func (KVMTimer) SwaggerDoc() map[string]string

type KubeVirt added in v0.12.0

type KubeVirt struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              KubeVirtSpec   `json:"spec,omitempty" valid:"required"`
	Status            KubeVirtStatus `json:"status,omitempty"`
}

KubeVirt represents the object deploying all KubeVirt resources --- +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +k8s:openapi-gen=true

func (*KubeVirt) DeepCopy added in v0.12.0

func (in *KubeVirt) DeepCopy() *KubeVirt

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

func (*KubeVirt) DeepCopyInto added in v0.12.0

func (in *KubeVirt) DeepCopyInto(out *KubeVirt)

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

func (*KubeVirt) DeepCopyObject added in v0.12.0

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

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

func (*KubeVirt) GetObjectKind added in v0.12.0

func (k *KubeVirt) GetObjectKind() schema.ObjectKind

Required to satisfy Object interface

func (*KubeVirt) GetObjectMeta added in v0.12.0

func (k *KubeVirt) GetObjectMeta() metav1.Object

Required to satisfy ObjectMetaAccessor interface

func (KubeVirt) SwaggerDoc added in v0.12.0

func (KubeVirt) SwaggerDoc() map[string]string

type KubeVirtCondition added in v0.12.0

type KubeVirtCondition struct {
	Type               KubeVirtConditionType `json:"type"`
	Status             k8sv1.ConditionStatus `json:"status"`
	LastProbeTime      metav1.Time           `json:"lastProbeTime,omitempty"`
	LastTransitionTime metav1.Time           `json:"lastTransitionTime,omitempty"`
	Reason             string                `json:"reason,omitempty"`
	Message            string                `json:"message,omitempty"`
}

KubeVirtCondition represents a condition of a KubeVirt deployment --- +k8s:openapi-gen=true

func (*KubeVirtCondition) DeepCopy added in v0.12.0

func (in *KubeVirtCondition) DeepCopy() *KubeVirtCondition

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

func (*KubeVirtCondition) DeepCopyInto added in v0.12.0

func (in *KubeVirtCondition) DeepCopyInto(out *KubeVirtCondition)

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

func (KubeVirtCondition) SwaggerDoc added in v0.12.0

func (KubeVirtCondition) SwaggerDoc() map[string]string

type KubeVirtConditionType added in v0.12.0

type KubeVirtConditionType string

--- +k8s:openapi-gen=true

const (
	// Whether the deployment or deletion was successful
	KubeVirtConditionSynchronized KubeVirtConditionType = "KubeVirtSynchronized"
)

These are the valid KubeVirt condition types

type KubeVirtList added in v0.12.0

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

KubeVirtList is a list of KubeVirts --- +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +k8s:openapi-gen=true

func (*KubeVirtList) DeepCopy added in v0.12.0

func (in *KubeVirtList) DeepCopy() *KubeVirtList

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

func (*KubeVirtList) DeepCopyInto added in v0.12.0

func (in *KubeVirtList) DeepCopyInto(out *KubeVirtList)

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

func (*KubeVirtList) DeepCopyObject added in v0.12.0

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

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

func (*KubeVirtList) GetListMeta added in v0.12.0

func (kl *KubeVirtList) GetListMeta() meta.List

Required to satisfy ListMetaAccessor interface

func (*KubeVirtList) GetObjectKind added in v0.12.0

func (kl *KubeVirtList) GetObjectKind() schema.ObjectKind

Required to satisfy Object interface

func (KubeVirtList) SwaggerDoc added in v0.12.0

func (KubeVirtList) SwaggerDoc() map[string]string

type KubeVirtPhase added in v0.12.0

type KubeVirtPhase string

KubeVirtPhase is a label for the phase of a KubeVirt deployment at the current time. --- +k8s:openapi-gen=true

const (
	// The deployment is processing
	KubeVirtPhaseDeploying KubeVirtPhase = "Deploying"
	// The deployment succeeded
	KubeVirtPhaseDeployed KubeVirtPhase = "Deployed"
	// The deletion is processing
	KubeVirtPhaseDeleting KubeVirtPhase = "Deleting"
	// The deletion succeeeded
	KubeVirtPhaseDeleted KubeVirtPhase = "Deleted"
)

These are the valid KubeVirt deployment phases

type KubeVirtSpec added in v0.12.0

type KubeVirtSpec struct {
	// The ImagePullPolicy to use.
	ImagePullPolicy k8sv1.PullPolicy `json:"imagePullPolicy,omitempty" valid:"required"`
}

--- +k8s:openapi-gen=true

func (*KubeVirtSpec) DeepCopy added in v0.12.0

func (in *KubeVirtSpec) DeepCopy() *KubeVirtSpec

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

func (*KubeVirtSpec) DeepCopyInto added in v0.12.0

func (in *KubeVirtSpec) DeepCopyInto(out *KubeVirtSpec)

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

func (KubeVirtSpec) SwaggerDoc added in v0.12.0

func (KubeVirtSpec) SwaggerDoc() map[string]string

type KubeVirtStatus added in v0.12.0

type KubeVirtStatus struct {
	Phase                   KubeVirtPhase       `json:"phase,omitempty"`
	Conditions              []KubeVirtCondition `json:"conditions,omitempty" optional:"true"`
	OperatorVersion         string              `json:"operatorVersion,omitempty" optional:"true"`
	TargetKubeVirtVersion   string              `json:"targetKubeVirtVersion,omitempty" optional:"true"`
	ObservedKubeVirtVersion string              `json:"observedKubeVirtVersion,omitempty" optional:"true"`
}

KubeVirtStatus represents information pertaining to a KubeVirt deployment. --- +k8s:openapi-gen=true

func (*KubeVirtStatus) DeepCopy added in v0.12.0

func (in *KubeVirtStatus) DeepCopy() *KubeVirtStatus

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

func (*KubeVirtStatus) DeepCopyInto added in v0.12.0

func (in *KubeVirtStatus) DeepCopyInto(out *KubeVirtStatus)

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

func (KubeVirtStatus) SwaggerDoc added in v0.12.0

func (KubeVirtStatus) SwaggerDoc() map[string]string

type LunTarget added in v0.2.0

type LunTarget struct {
	// Bus indicates the type of disk device to emulate.
	// supported values: virtio, sata, scsi.
	Bus string `json:"bus,omitempty"`
	// ReadOnly.
	// Defaults to false.
	ReadOnly bool `json:"readonly,omitempty"`
}

--- +k8s:openapi-gen=true

func (*LunTarget) DeepCopy added in v0.2.0

func (in *LunTarget) DeepCopy() *LunTarget

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

func (*LunTarget) DeepCopyInto added in v0.2.0

func (in *LunTarget) DeepCopyInto(out *LunTarget)

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

func (LunTarget) SwaggerDoc added in v0.2.0

func (LunTarget) SwaggerDoc() map[string]string

type Machine added in v0.3.0

type Machine struct {
	// QEMU machine type is the actual chipset of the VirtualMachineInstance.
	Type string `json:"type"`
}

--- +k8s:openapi-gen=true

func (*Machine) DeepCopy added in v0.3.0

func (in *Machine) DeepCopy() *Machine

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

func (*Machine) DeepCopyInto added in v0.3.0

func (in *Machine) DeepCopyInto(out *Machine)

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

func (Machine) SwaggerDoc added in v0.3.0

func (Machine) SwaggerDoc() map[string]string

type Memory

type Memory struct {
	// Hugepages allow to use hugepages for the VirtualMachineInstance instead of regular memory.
	// +optional
	Hugepages *Hugepages `json:"hugepages,omitempty"`
	// Guest allows to specifying the amount of memory which is visible inside the Guest OS.
	// The Guest must lie between Requests and Limits from the resources section.
	// Defaults to the requested memory in the resources section if not specified.
	// + optional
	Guest *resource.Quantity `json:"guest,omitempty"`
}

Memory allows specifying the VirtualMachineInstance memory features. --- +k8s:openapi-gen=true

func (*Memory) DeepCopy added in v0.6.1

func (in *Memory) DeepCopy() *Memory

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

func (*Memory) DeepCopyInto added in v0.6.1

func (in *Memory) DeepCopyInto(out *Memory)

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

func (Memory) SwaggerDoc

func (Memory) SwaggerDoc() map[string]string

type Network added in v0.6.0

type Network struct {
	// Network name.
	// Must be a DNS_LABEL and unique within the vm.
	// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
	Name string `json:"name"`
	// NetworkSource represents the network type and the source interface that should be connected to the virtual machine.
	// Defaults to Pod, if no type is specified.
	NetworkSource `json:",inline"`
}

Network represents a network type and a resource that should be connected to the vm. --- +k8s:openapi-gen=true

func DefaultPodNetwork added in v0.6.0

func DefaultPodNetwork() *Network

func (*Network) DeepCopy added in v0.6.0

func (in *Network) DeepCopy() *Network

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

func (*Network) DeepCopyInto added in v0.6.0

func (in *Network) DeepCopyInto(out *Network)

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

func (Network) SwaggerDoc added in v0.6.0

func (Network) SwaggerDoc() map[string]string

type NetworkSource added in v0.6.0

type NetworkSource struct {
	Pod    *PodNetwork `json:"pod,omitempty"`
	Multus *CniNetwork `json:"multus,omitempty"`
	Genie  *CniNetwork `json:"genie,omitempty"`
}

Represents the source resource that will be connected to the vm. Only one of its members may be specified. --- +k8s:openapi-gen=true

func (*NetworkSource) DeepCopy added in v0.6.0

func (in *NetworkSource) DeepCopy() *NetworkSource

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

func (*NetworkSource) DeepCopyInto added in v0.6.0

func (in *NetworkSource) DeepCopyInto(out *NetworkSource)

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

func (NetworkSource) SwaggerDoc added in v0.6.0

func (NetworkSource) SwaggerDoc() map[string]string

type PITTickPolicy added in v0.2.0

type PITTickPolicy string

PITTickPolicy determines what happens when QEMU misses a deadline for injecting a tick to the guest. --- +k8s:openapi-gen=true

type PITTimer added in v0.2.0

type PITTimer struct {
	// TickPolicy determines what happens when QEMU misses a deadline for injecting a tick to the guest.
	// One of "delay", "catchup", "discard".
	TickPolicy PITTickPolicy `json:"tickPolicy,omitempty"`
	// Enabled set to false makes sure that the machine type or a preset can't add the timer.
	// Defaults to true.
	// +optional
	Enabled *bool `json:"present,omitempty"`
}

--- +k8s:openapi-gen=true

func (*PITTimer) DeepCopy added in v0.2.0

func (in *PITTimer) DeepCopy() *PITTimer

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

func (*PITTimer) DeepCopyInto added in v0.2.0

func (in *PITTimer) DeepCopyInto(out *PITTimer)

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

func (PITTimer) SwaggerDoc added in v0.2.0

func (PITTimer) SwaggerDoc() map[string]string

type PodNetwork added in v0.6.0

type PodNetwork struct {
	// CIDR for vm network.
	// Default 10.0.2.0/24 if not specified.
	VMNetworkCIDR string `json:"vmNetworkCIDR,omitempty"`
}

Represents the stock pod network interface. --- +k8s:openapi-gen=true

func (*PodNetwork) DeepCopy added in v0.6.0

func (in *PodNetwork) DeepCopy() *PodNetwork

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

func (*PodNetwork) DeepCopyInto added in v0.6.0

func (in *PodNetwork) DeepCopyInto(out *PodNetwork)

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

func (PodNetwork) SwaggerDoc added in v0.6.0

func (PodNetwork) SwaggerDoc() map[string]string

type Port added in v0.7.0

type Port struct {
	// If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
	// named port in a pod must have a unique name. Name for the port that can be
	// referred to by services.
	// +optional
	Name string `json:"name,omitempty"`
	// Protocol for port. Must be UDP or TCP.
	// Defaults to "TCP".
	// +optional
	Protocol string `json:"protocol,omitempty"`
	// Number of port to expose for the virtual machine.
	// This must be a valid port number, 0 < x < 65536.
	Port int32 `json:"port"`
}

Port repesents a port to expose from the virtual machine. Default protocol TCP. The port field is mandatory --- +k8s:openapi-gen=true

func (*Port) DeepCopy added in v0.7.0

func (in *Port) DeepCopy() *Port

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

func (*Port) DeepCopyInto added in v0.7.0

func (in *Port) DeepCopyInto(out *Port)

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

func (Port) SwaggerDoc added in v0.7.0

func (Port) SwaggerDoc() map[string]string

type Probe added in v0.11.0

type Probe struct {
	// The action taken to determine the health of a VirtualMachineInstance
	Handler `json:",inline"`
	// Number of seconds after the VirtualMachineInstance has started before liveness probes are initiated.
	// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
	// +optional
	InitialDelaySeconds int32 `json:"initialDelaySeconds,omitempty"`
	// Number of seconds after which the probe times out.
	// Defaults to 1 second. Minimum value is 1.
	// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
	// +optional
	TimeoutSeconds int32 `json:"timeoutSeconds,omitempty"`
	// How often (in seconds) to perform the probe.
	// Default to 10 seconds. Minimum value is 1.
	// +optional
	PeriodSeconds int32 `json:"periodSeconds,omitempty"`
	// Minimum consecutive successes for the probe to be considered successful after having failed.
	// Defaults to 1. Must be 1 for liveness. Minimum value is 1.
	// +optional
	SuccessThreshold int32 `json:"successThreshold,omitempty"`
	// Minimum consecutive failures for the probe to be considered failed after having succeeded.
	// Defaults to 3. Minimum value is 1.
	// +optional
	FailureThreshold int32 `json:"failureThreshold,omitempty"`
}

Probe describes a health check to be performed against a VirtualMachineInstance to determine whether it is alive or ready to receive traffic.

func (*Probe) DeepCopy added in v0.11.0

func (in *Probe) DeepCopy() *Probe

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

func (*Probe) DeepCopyInto added in v0.11.0

func (in *Probe) DeepCopyInto(out *Probe)

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

func (Probe) SwaggerDoc added in v0.11.0

func (Probe) SwaggerDoc() map[string]string

type RTCTickPolicy added in v0.2.0

type RTCTickPolicy string

RTCTickPolicy determines what happens when QEMU misses a deadline for injecting a tick to the guest. --- +k8s:openapi-gen=true

type RTCTimer added in v0.2.0

type RTCTimer struct {
	// TickPolicy determines what happens when QEMU misses a deadline for injecting a tick to the guest.
	// One of "delay", "catchup".
	TickPolicy RTCTickPolicy `json:"tickPolicy,omitempty"`
	// Enabled set to false makes sure that the machine type or a preset can't add the timer.
	// Defaults to true.
	// +optional
	Enabled *bool `json:"present,omitempty"`
	// Track the guest or the wall clock.
	Track RTCTimerTrack `json:"track,omitempty"`
}

--- +k8s:openapi-gen=true

func (*RTCTimer) DeepCopy added in v0.2.0

func (in *RTCTimer) DeepCopy() *RTCTimer

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

func (*RTCTimer) DeepCopyInto added in v0.2.0

func (in *RTCTimer) DeepCopyInto(out *RTCTimer)

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

func (RTCTimer) SwaggerDoc added in v0.2.0

func (RTCTimer) SwaggerDoc() map[string]string

type RTCTimerTrack added in v0.2.0

type RTCTimerTrack string

RTCTimerTrack specifies from which source to track the time. --- +k8s:openapi-gen=true

const (
	// TrackGuest tracks the guest time.
	TrackGuest RTCTimerTrack = "guest"
	// TrackWall tracks the host time.
	TrackWall RTCTimerTrack = "wall"
)

type ResourceRequirements added in v0.2.0

type ResourceRequirements struct {
	// Requests is a description of the initial vmi resources.
	// Valid resource keys are "memory" and "cpu".
	// +optional
	Requests v1.ResourceList `json:"requests,omitempty"`
	// Limits describes the maximum amount of compute resources allowed.
	// Valid resource keys are "memory" and "cpu".
	// +optional
	Limits v1.ResourceList `json:"limits,omitempty"`
	// Don't ask the scheduler to take the guest-management overhead into account. Instead
	// put the overhead only into the requested memory limits. This can lead to crashes if
	// all memory is in use on a node. Defaults to false.
	OvercommitGuestOverhead bool `json:"overcommitGuestOverhead,omitempty"`
}

--- +k8s:openapi-gen=true

func (*ResourceRequirements) DeepCopy added in v0.2.0

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

func (*ResourceRequirements) DeepCopyInto added in v0.2.0

func (in *ResourceRequirements) DeepCopyInto(out *ResourceRequirements)

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

func (ResourceRequirements) SwaggerDoc added in v0.2.0

func (ResourceRequirements) SwaggerDoc() map[string]string

type Rng added in v0.8.0

type Rng struct {
}

Rng represents the random device passed from host --- +k8s:openapi-gen=true

func (*Rng) DeepCopy added in v0.8.0

func (in *Rng) DeepCopy() *Rng

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

func (*Rng) DeepCopyInto added in v0.8.0

func (in *Rng) DeepCopyInto(out *Rng)

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

func (Rng) SwaggerDoc added in v0.8.0

func (Rng) SwaggerDoc() map[string]string

type SecretVolumeSource added in v0.9.0

type SecretVolumeSource struct {
	// Name of the secret in the pod's namespace to use.
	// More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
	// +optional
	SecretName string `json:"secretName,omitempty"`
	// Specify whether the Secret or it's keys must be defined
	// +optional
	Optional *bool `json:"optional,omitempty"`
}

SecretVolumeSource adapts a Secret into a volume. --- +k8s:openapi-gen=true

func (*SecretVolumeSource) DeepCopy added in v0.9.0

func (in *SecretVolumeSource) DeepCopy() *SecretVolumeSource

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

func (*SecretVolumeSource) DeepCopyInto added in v0.9.0

func (in *SecretVolumeSource) DeepCopyInto(out *SecretVolumeSource)

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

func (SecretVolumeSource) SwaggerDoc added in v0.9.0

func (SecretVolumeSource) SwaggerDoc() map[string]string

type ServiceAccountVolumeSource added in v0.9.2

type ServiceAccountVolumeSource struct {
	// Name of the service account in the pod's namespace to use.
	// More info: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/
	ServiceAccountName string `json:"serviceAccountName,omitempty"`
}

ServiceAccountVolumeSource adapts a ServiceAccount into a volume. --- +k8s:openapi-gen=true

func (*ServiceAccountVolumeSource) DeepCopy added in v0.9.2

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

func (*ServiceAccountVolumeSource) DeepCopyInto added in v0.9.2

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

func (ServiceAccountVolumeSource) SwaggerDoc added in v0.9.2

func (ServiceAccountVolumeSource) SwaggerDoc() map[string]string

type SyncEvent

type SyncEvent string

--- +k8s:openapi-gen=true

const (
	Created         SyncEvent = "Created"
	Deleted         SyncEvent = "Deleted"
	PresetFailed    SyncEvent = "PresetFailed"
	Override        SyncEvent = "Override"
	Started         SyncEvent = "Started"
	ShuttingDown    SyncEvent = "ShuttingDown"
	Stopped         SyncEvent = "Stopped"
	PreparingTarget SyncEvent = "PreparingTarget"
	Migrating       SyncEvent = "Migrating"
	Migrated        SyncEvent = "Migrated"
	SyncFailed      SyncEvent = "SyncFailed"
	Resumed         SyncEvent = "Resumed"
)

func (SyncEvent) String

func (s SyncEvent) String() string

type Timer

type Timer struct {
	// HPET (High Precision Event Timer) - multiple timers with periodic interrupts.
	HPET *HPETTimer `json:"hpet,omitempty"`
	// KVM 	(KVM clock) - lets guests read the host’s wall clock time (paravirtualized). For linux guests.
	KVM *KVMTimer `json:"kvm,omitempty"`
	// PIT (Programmable Interval Timer) - a timer with periodic interrupts.
	PIT *PITTimer `json:"pit,omitempty"`
	// RTC (Real Time Clock) - a continuously running timer with periodic interrupts.
	RTC *RTCTimer `json:"rtc,omitempty"`
	// Hyperv (Hypervclock) - lets guests read the host’s wall clock time (paravirtualized). For windows guests.
	Hyperv *HypervTimer `json:"hyperv,omitempty"`
}

Represents all available timers in a vmi. --- +k8s:openapi-gen=true

func (*Timer) DeepCopy added in v0.2.0

func (in *Timer) DeepCopy() *Timer

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

func (*Timer) DeepCopyInto added in v0.2.0

func (in *Timer) DeepCopyInto(out *Timer)

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

func (Timer) SwaggerDoc

func (Timer) SwaggerDoc() map[string]string

type TrayState added in v0.2.0

type TrayState string

TrayState indicates if a tray of a cdrom or floppy is open or closed. --- +k8s:openapi-gen=true

const (
	// TrayStateOpen indicates that the tray of a cdrom or floppy is open.
	TrayStateOpen TrayState = "open"
	// TrayStateClosed indicates that the tray of a cdrom or floppy is closed.
	TrayStateClosed TrayState = "closed"
)

type VMISelector added in v0.6.1

type VMISelector struct {
	// Name of the VirtualMachineInstance to migrate
	Name string `json:"name" valid:"required"`
}

func (*VMISelector) DeepCopy added in v0.6.1

func (in *VMISelector) DeepCopy() *VMISelector

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

func (*VMISelector) DeepCopyInto added in v0.6.1

func (in *VMISelector) DeepCopyInto(out *VMISelector)

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

func (VMISelector) SwaggerDoc added in v0.6.1

func (VMISelector) SwaggerDoc() map[string]string

type VirtualMachine added in v0.0.3

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

	// Spec contains the specification of VirtualMachineInstance created
	Spec VirtualMachineSpec `json:"spec,omitempty"`
	// Status holds the current state of the controller and brief information
	// about its associated VirtualMachineInstance
	Status VirtualMachineStatus `json:"status,omitempty"`
}

VirtualMachine handles the VirtualMachines that are not running or are in a stopped state The VirtualMachine contains the template to create the VirtualMachineInstance. It also mirrors the running state of the created VirtualMachineInstance in its status. --- +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +k8s:openapi-gen=true

func (*VirtualMachine) DeepCopy added in v0.0.3

func (in *VirtualMachine) DeepCopy() *VirtualMachine

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

func (*VirtualMachine) DeepCopyInto added in v0.0.3

func (in *VirtualMachine) DeepCopyInto(out *VirtualMachine)

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

func (*VirtualMachine) DeepCopyObject added in v0.0.3

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

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

func (*VirtualMachine) GetObjectKind added in v0.0.3

func (v *VirtualMachine) GetObjectKind() schema.ObjectKind

GetObjectKind is required to satisfy Object interface

func (*VirtualMachine) GetObjectMeta added in v0.0.3

func (v *VirtualMachine) GetObjectMeta() metav1.Object

GetObjectMeta is required to satisfy ObjectMetaAccessor interface

func (VirtualMachine) SwaggerDoc added in v0.0.3

func (VirtualMachine) SwaggerDoc() map[string]string

type VirtualMachineCondition added in v0.2.0

type VirtualMachineCondition struct {
	Type               VirtualMachineConditionType `json:"type"`
	Status             k8sv1.ConditionStatus       `json:"status"`
	LastProbeTime      metav1.Time                 `json:"lastProbeTime,omitempty"`
	LastTransitionTime metav1.Time                 `json:"lastTransitionTime,omitempty"`
	Reason             string                      `json:"reason,omitempty"`
	Message            string                      `json:"message,omitempty"`
}

VirtualMachineCondition represents the state of VirtualMachine --- +k8s:openapi-gen=true

func (*VirtualMachineCondition) DeepCopy added in v0.2.0

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

func (*VirtualMachineCondition) DeepCopyInto added in v0.2.0

func (in *VirtualMachineCondition) DeepCopyInto(out *VirtualMachineCondition)

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

func (VirtualMachineCondition) SwaggerDoc added in v0.2.0

func (VirtualMachineCondition) SwaggerDoc() map[string]string

type VirtualMachineConditionType added in v0.0.4

type VirtualMachineConditionType string

--- +k8s:openapi-gen=true

const (
	// VirtualMachineFailure is added in a virtual machine when its vmi
	// fails to be created due to insufficient quota, limit ranges, pod security policy, node selectors,
	// etc. or deleted due to kubelet being down or finalizers are failing.
	VirtualMachineFailure VirtualMachineConditionType = "Failure"
)

type VirtualMachineInstance added in v0.6.1

type VirtualMachineInstance struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// VirtualMachineInstance Spec contains the VirtualMachineInstance specification.
	Spec VirtualMachineInstanceSpec `json:"spec,omitempty" valid:"required"`
	// Status is the high level overview of how the VirtualMachineInstance is doing. It contains information available to controllers and users.
	Status VirtualMachineInstanceStatus `json:"status,omitempty"`
}

VirtualMachineInstance is *the* VirtualMachineInstance Definition. It represents a virtual machine in the runtime environment of kubernetes. --- +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +k8s:openapi-gen=true

func NewMinimalVMI added in v0.6.1

func NewMinimalVMI(vmiName string) *VirtualMachineInstance

func NewMinimalVMIWithNS added in v0.6.1

func NewMinimalVMIWithNS(namespace string, vmiName string) *VirtualMachineInstance

func NewVMI added in v0.6.1

func NewVMI(name string, uid types.UID) *VirtualMachineInstance

func NewVMIReferenceFromName added in v0.6.1

func NewVMIReferenceFromName(name string) *VirtualMachineInstance

TODO Namespace could be different, also store it somewhere in the domain, so that we can report deletes on handler startup properly

func NewVMIReferenceFromNameWithNS added in v0.6.1

func NewVMIReferenceFromNameWithNS(namespace string, name string) *VirtualMachineInstance

func NewVMIReferenceWithUUID added in v0.8.0

func NewVMIReferenceWithUUID(namespace string, name string, uuid types.UID) *VirtualMachineInstance

func (*VirtualMachineInstance) DeepCopy added in v0.6.1

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

func (*VirtualMachineInstance) DeepCopyInto added in v0.6.1

func (in *VirtualMachineInstance) DeepCopyInto(out *VirtualMachineInstance)

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

func (*VirtualMachineInstance) DeepCopyObject added in v0.6.1

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

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

func (*VirtualMachineInstance) GetObjectKind added in v0.6.1

func (v *VirtualMachineInstance) GetObjectKind() schema.ObjectKind

Required to satisfy Object interface

func (*VirtualMachineInstance) GetObjectMeta added in v0.6.1

func (v *VirtualMachineInstance) GetObjectMeta() metav1.Object

Required to satisfy ObjectMetaAccessor interface

func (*VirtualMachineInstance) IsCPUDedicated added in v0.9.0

func (v *VirtualMachineInstance) IsCPUDedicated() bool

Checks if CPU pinning has been requested

func (*VirtualMachineInstance) IsFinal added in v0.6.1

func (v *VirtualMachineInstance) IsFinal() bool

func (*VirtualMachineInstance) IsRunning added in v0.6.1

func (v *VirtualMachineInstance) IsRunning() bool

func (*VirtualMachineInstance) IsScheduled added in v0.6.1

func (v *VirtualMachineInstance) IsScheduled() bool

func (*VirtualMachineInstance) IsScheduling added in v0.6.1

func (v *VirtualMachineInstance) IsScheduling() bool

func (*VirtualMachineInstance) IsUnknown added in v0.6.1

func (v *VirtualMachineInstance) IsUnknown() bool

func (*VirtualMachineInstance) IsUnprocessed added in v0.6.1

func (v *VirtualMachineInstance) IsUnprocessed() bool

func (*VirtualMachineInstance) MarshalBinary added in v0.6.1

func (v *VirtualMachineInstance) MarshalBinary() (data []byte, err error)

func (VirtualMachineInstance) SwaggerDoc added in v0.6.1

func (VirtualMachineInstance) SwaggerDoc() map[string]string

func (*VirtualMachineInstance) UnmarshalBinary added in v0.6.1

func (v *VirtualMachineInstance) UnmarshalBinary(data []byte) error

type VirtualMachineInstanceCondition added in v0.6.1

type VirtualMachineInstanceCondition struct {
	Type               VirtualMachineInstanceConditionType `json:"type"`
	Status             k8sv1.ConditionStatus               `json:"status"`
	LastProbeTime      metav1.Time                         `json:"lastProbeTime,omitempty"`
	LastTransitionTime metav1.Time                         `json:"lastTransitionTime,omitempty"`
	Reason             string                              `json:"reason,omitempty"`
	Message            string                              `json:"message,omitempty"`
}

--- +k8s:openapi-gen=true

func (*VirtualMachineInstanceCondition) DeepCopy added in v0.6.1

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

func (*VirtualMachineInstanceCondition) DeepCopyInto added in v0.6.1

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

func (VirtualMachineInstanceCondition) SwaggerDoc added in v0.6.1

type VirtualMachineInstanceConditionType added in v0.6.1

type VirtualMachineInstanceConditionType string

--- +k8s:openapi-gen=true

const (
	// VMIReady means the pod is able to service requests and should be added to the
	// load balancing pools of all matching services.
	VirtualMachineInstanceReady VirtualMachineInstanceConditionType = "Ready"

	// If there happens any error while trying to synchronize the VirtualMachineInstance with the Domain,
	// this is reported as false.
	VirtualMachineInstanceSynchronized VirtualMachineInstanceConditionType = "Synchronized"

	// Reflects whether the QEMU guest agent is connected through the channel
	VirtualMachineInstanceAgentConnected VirtualMachineInstanceConditionType = "AgentConnected"

	// Indicates whether the VMI is live migratable
	VirtualMachineInstanceIsMigratable VirtualMachineInstanceConditionType = "LiveMigratable"
	// Reason means that VMI is not live migratioable because of it's disks collection
	VirtualMachineInstanceReasonDisksNotMigratable = "DisksNotLiveMigratable"
)

These are valid conditions of VMIs.

type VirtualMachineInstanceList added in v0.6.1

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

VirtualMachineInstanceList is a list of VirtualMachines --- +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +k8s:openapi-gen=true

func (*VirtualMachineInstanceList) DeepCopy added in v0.6.1

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

func (*VirtualMachineInstanceList) DeepCopyInto added in v0.6.1

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

func (*VirtualMachineInstanceList) DeepCopyObject added in v0.6.1

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

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

func (*VirtualMachineInstanceList) GetListMeta added in v0.6.1

func (vl *VirtualMachineInstanceList) GetListMeta() meta.List

Required to satisfy ListMetaAccessor interface

func (*VirtualMachineInstanceList) GetObjectKind added in v0.6.1

func (vl *VirtualMachineInstanceList) GetObjectKind() schema.ObjectKind

Required to satisfy Object interface

func (VirtualMachineInstanceList) SwaggerDoc added in v0.6.1

func (VirtualMachineInstanceList) SwaggerDoc() map[string]string

type VirtualMachineInstanceMigration added in v0.9.2

type VirtualMachineInstanceMigration struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              VirtualMachineInstanceMigrationSpec   `json:"spec,omitempty" valid:"required"`
	Status            VirtualMachineInstanceMigrationStatus `json:"status,omitempty"`
}

VirtualMachineInstanceMigration represents the object tracking a VMI's migration to another host in the cluster --- +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +k8s:openapi-gen=true

func (*VirtualMachineInstanceMigration) DeepCopy added in v0.9.2

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

func (*VirtualMachineInstanceMigration) DeepCopyInto added in v0.9.2

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

func (*VirtualMachineInstanceMigration) DeepCopyObject added in v0.9.2

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

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

func (*VirtualMachineInstanceMigration) GetObjectKind added in v0.9.2

Required to satisfy Object interface

func (*VirtualMachineInstanceMigration) GetObjectMeta added in v0.9.2

func (v *VirtualMachineInstanceMigration) GetObjectMeta() metav1.Object

Required to satisfy ObjectMetaAccessor interface

func (*VirtualMachineInstanceMigration) IsFinal added in v0.9.2

The migration phase indicates that the job has completed

func (VirtualMachineInstanceMigration) SwaggerDoc added in v0.9.2

func (*VirtualMachineInstanceMigration) TargetIsCreated added in v0.9.2

func (m *VirtualMachineInstanceMigration) TargetIsCreated() bool

The migration phase indicates that the target pod should have already been created

func (*VirtualMachineInstanceMigration) TargetIsHandedOff added in v0.9.2

func (m *VirtualMachineInstanceMigration) TargetIsHandedOff() bool

The migration phase indicates that job has been handed off to the VMI controllers to complete.

type VirtualMachineInstanceMigrationList added in v0.9.2

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

VirtualMachineInstanceMigrationList is a list of VirtualMachineMigrations --- +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +k8s:openapi-gen=true

func (*VirtualMachineInstanceMigrationList) DeepCopy added in v0.9.2

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

func (*VirtualMachineInstanceMigrationList) DeepCopyInto added in v0.9.2

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

func (*VirtualMachineInstanceMigrationList) DeepCopyObject added in v0.9.2

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

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

func (*VirtualMachineInstanceMigrationList) GetListMeta added in v0.9.2

func (vl *VirtualMachineInstanceMigrationList) GetListMeta() meta.List

Required to satisfy ListMetaAccessor interface

func (*VirtualMachineInstanceMigrationList) GetObjectKind added in v0.9.2

Required to satisfy Object interface

func (VirtualMachineInstanceMigrationList) SwaggerDoc added in v0.9.2

type VirtualMachineInstanceMigrationMethod added in v0.12.0

type VirtualMachineInstanceMigrationMethod string

--- +k8s:openapi-gen=true

const (
	// BlockMigration means that all VirtualMachineInstance disks should be copied over to the destination host
	BlockMigration VirtualMachineInstanceMigrationMethod = "BlockMigration"
	// LiveMigration means that VirtualMachineInstance disks will not be copied over to the destination host
	LiveMigration VirtualMachineInstanceMigrationMethod = "LiveMigration"
)

type VirtualMachineInstanceMigrationPhase added in v0.9.2

type VirtualMachineInstanceMigrationPhase string

VirtualMachineInstanceMigrationPhase is a label for the condition of a VirtualMachineInstanceMigration at the current time. --- +k8s:openapi-gen=true

const (
	MigrationPhaseUnset VirtualMachineInstanceMigrationPhase = ""
	// The migration is accepted by the system
	MigrationPending VirtualMachineInstanceMigrationPhase = "Pending"
	// The migration's target pod is being scheduled
	MigrationScheduling VirtualMachineInstanceMigrationPhase = "Scheduling"
	// The migration's target pod is running
	MigrationScheduled VirtualMachineInstanceMigrationPhase = "Scheduled"
	// The migration's target pod is being prepared for migration
	MigrationPreparingTarget VirtualMachineInstanceMigrationPhase = "PreparingTarget"
	// The migration's target pod is prepared and ready for migration
	MigrationTargetReady VirtualMachineInstanceMigrationPhase = "TargetReady"
	// The migration is in progress
	MigrationRunning VirtualMachineInstanceMigrationPhase = "Running"
	// The migration passed
	MigrationSucceeded VirtualMachineInstanceMigrationPhase = "Succeeded"
	// The migration failed
	MigrationFailed VirtualMachineInstanceMigrationPhase = "Failed"
)

These are the valid migration phases

type VirtualMachineInstanceMigrationSpec added in v0.9.2

type VirtualMachineInstanceMigrationSpec struct {
	// The name of the VMI to perform the migration on. VMI must exist in the migration objects namespace
	VMIName string `json:"vmiName,omitempty" valid:"required"`
}

--- +k8s:openapi-gen=true

func (*VirtualMachineInstanceMigrationSpec) DeepCopy added in v0.9.2

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

func (*VirtualMachineInstanceMigrationSpec) DeepCopyInto added in v0.9.2

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

func (VirtualMachineInstanceMigrationSpec) SwaggerDoc added in v0.9.2

type VirtualMachineInstanceMigrationState added in v0.9.2

type VirtualMachineInstanceMigrationState struct {
	// The time the migration action began
	StartTimestamp *metav1.Time `json:"startTimestamp,omitempty"`
	// The time the migration action ended
	EndTimestamp *metav1.Time `json:"endTimestamp,omitempty"`
	// The Target Node has seen the Domain Start Event
	TargetNodeDomainDetected bool `json:"targetNodeDomainDetected,omitempty"`
	// The address of the target node to use for the migration
	TargetNodeAddress string `json:"targetNodeAddress,omitempty"`
	// The target node that the VMI is moving to
	TargetNode string `json:"targetNode,omitempty"`
	// The source node that the VMI originated on
	SourceNode string `json:"sourceNode,omitempty"`
	// Indicates the migration completed
	Completed bool `json:"completed,omitempty"`
	// Indicates that the migration failed
	Failed bool `json:"failed,omitempty"`
	// The VirtualMachineInstanceMigration object associated with this migration
	MigrationUID types.UID `json:"migrationUid,omitempty"`
}

func (*VirtualMachineInstanceMigrationState) DeepCopy added in v0.9.2

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

func (*VirtualMachineInstanceMigrationState) DeepCopyInto added in v0.9.2

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

func (VirtualMachineInstanceMigrationState) SwaggerDoc added in v0.9.2

type VirtualMachineInstanceMigrationStatus added in v0.9.2

type VirtualMachineInstanceMigrationStatus struct {
	Phase VirtualMachineInstanceMigrationPhase `json:"phase,omitempty"`
}

VirtualMachineInstanceMigration reprents information pertaining to a VMI's migration. --- +k8s:openapi-gen=true

func (*VirtualMachineInstanceMigrationStatus) DeepCopy added in v0.9.2

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

func (*VirtualMachineInstanceMigrationStatus) DeepCopyInto added in v0.9.2

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

func (VirtualMachineInstanceMigrationStatus) SwaggerDoc added in v0.9.2

type VirtualMachineInstanceNetworkInterface added in v0.6.1

type VirtualMachineInstanceNetworkInterface struct {
	// IP address of a Virtual Machine interface
	IP string `json:"ipAddress,omitempty"`
	// Hardware address of a Virtual Machine interface
	MAC string `json:"mac,omitempty"`
	// Name of the interface, corresponds to name of the network assigned to the interface
	// TODO: remove omitempty, when api breaking changes are allowed
	Name string `json:"name,omitempty"`
	// List of all IP addresses of a Virtual Machine interface
	IPs []string `json:"ipAddresses,omitempty"`
	// The interface name inside the Virtual Machine
	InterfaceName string `json:"interfaceName,omitempty"`
}

--- +k8s:openapi-gen=true

func (*VirtualMachineInstanceNetworkInterface) DeepCopy added in v0.6.1

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

func (*VirtualMachineInstanceNetworkInterface) DeepCopyInto added in v0.6.1

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

func (VirtualMachineInstanceNetworkInterface) SwaggerDoc added in v0.6.1

type VirtualMachineInstancePhase added in v0.6.1

type VirtualMachineInstancePhase string

VirtualMachineInstancePhase is a label for the condition of a VirtualMachineInstance at the current time. --- +k8s:openapi-gen=true

const (
	//When a VirtualMachineInstance Object is first initialized and no phase, or Pending is present.
	VmPhaseUnset VirtualMachineInstancePhase = ""
	// Pending means the VirtualMachineInstance has been accepted by the system.
	Pending VirtualMachineInstancePhase = "Pending"
	// A target Pod exists but is not yet scheduled and in running state.
	Scheduling VirtualMachineInstancePhase = "Scheduling"
	// A target pod was scheduled and the system saw that Pod in runnig state.
	// Here is where the responsibility of virt-controller ends and virt-handler takes over.
	Scheduled VirtualMachineInstancePhase = "Scheduled"
	// Running means the pod has been bound to a node and the VirtualMachineInstance is started.
	Running VirtualMachineInstancePhase = "Running"
	// Succeeded means that the VirtualMachineInstance stopped voluntarily, e.g. reacted to SIGTERM or shutdown was invoked from
	// inside the VirtualMachineInstance.
	Succeeded VirtualMachineInstancePhase = "Succeeded"
	// Failed means that the vmi crashed, disappeared unexpectedly or got deleted from the cluster before it was ever started.
	Failed VirtualMachineInstancePhase = "Failed"
	// Unknown means that for some reason the state of the VirtualMachineInstance could not be obtained, typically due
	// to an error in communicating with the host of the VirtualMachineInstance.
	Unknown VirtualMachineInstancePhase = "Unknown"
)

These are the valid statuses of pods.

type VirtualMachineInstancePreset added in v0.6.1

type VirtualMachineInstancePreset struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// VirtualMachineInstance Spec contains the VirtualMachineInstance specification.
	Spec VirtualMachineInstancePresetSpec `json:"spec,omitempty" valid:"required"`
}

--- +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +k8s:openapi-gen=true

func NewVirtualMachinePreset added in v0.3.0

func NewVirtualMachinePreset(name string, selector metav1.LabelSelector) *VirtualMachineInstancePreset

func (*VirtualMachineInstancePreset) DeepCopy added in v0.6.1

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

func (*VirtualMachineInstancePreset) DeepCopyInto added in v0.6.1

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

func (*VirtualMachineInstancePreset) DeepCopyObject added in v0.6.1

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

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

func (*VirtualMachineInstancePreset) GetObjectKind added in v0.6.1

func (v *VirtualMachineInstancePreset) GetObjectKind() schema.ObjectKind

Required to satisfy Object interface

func (*VirtualMachineInstancePreset) GetObjectMeta added in v0.6.1

func (v *VirtualMachineInstancePreset) GetObjectMeta() metav1.Object

Required to satisfy ObjectMetaAccessor interface

func (VirtualMachineInstancePreset) SwaggerDoc added in v0.6.1

func (VirtualMachineInstancePreset) SwaggerDoc() map[string]string

type VirtualMachineInstancePresetList added in v0.6.1

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

VirtualMachineInstancePresetList is a list of VirtualMachinePresets --- +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +k8s:openapi-gen=true

func (*VirtualMachineInstancePresetList) DeepCopy added in v0.6.1

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

func (*VirtualMachineInstancePresetList) DeepCopyInto added in v0.6.1

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

func (*VirtualMachineInstancePresetList) DeepCopyObject added in v0.6.1

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

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

func (*VirtualMachineInstancePresetList) GetListMeta added in v0.6.1

func (vl *VirtualMachineInstancePresetList) GetListMeta() meta.List

Required to satisfy ListMetaAccessor interface

func (*VirtualMachineInstancePresetList) GetObjectKind added in v0.6.1

Required to satisfy Object interface

func (VirtualMachineInstancePresetList) SwaggerDoc added in v0.6.1

type VirtualMachineInstancePresetSpec added in v0.6.1

type VirtualMachineInstancePresetSpec struct {
	// Selector is a label query over a set of VMIs.
	// Required.
	Selector metav1.LabelSelector `json:"selector"`
	// Domain is the same object type as contained in VirtualMachineInstanceSpec
	Domain *DomainSpec `json:"domain,omitempty"`
}

--- +k8s:openapi-gen=true

func (*VirtualMachineInstancePresetSpec) DeepCopy added in v0.6.1

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

func (*VirtualMachineInstancePresetSpec) DeepCopyInto added in v0.6.1

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

func (VirtualMachineInstancePresetSpec) SwaggerDoc added in v0.6.1

type VirtualMachineInstanceReplicaSet added in v0.6.1

type VirtualMachineInstanceReplicaSet struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// VirtualMachineInstance Spec contains the VirtualMachineInstance specification.
	Spec VirtualMachineInstanceReplicaSetSpec `json:"spec,omitempty" valid:"required"`
	// Status is the high level overview of how the VirtualMachineInstance is doing. It contains information available to controllers and users.
	Status VirtualMachineInstanceReplicaSetStatus `json:"status,omitempty"`
}

VirtualMachineInstance is *the* VirtualMachineInstance Definition. It represents a virtual machine in the runtime environment of kubernetes. --- +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +k8s:openapi-gen=true

func (*VirtualMachineInstanceReplicaSet) DeepCopy added in v0.6.1

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

func (*VirtualMachineInstanceReplicaSet) DeepCopyInto added in v0.6.1

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

func (*VirtualMachineInstanceReplicaSet) DeepCopyObject added in v0.6.1

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

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

func (*VirtualMachineInstanceReplicaSet) GetObjectKind added in v0.6.1

Required to satisfy Object interface

func (*VirtualMachineInstanceReplicaSet) GetObjectMeta added in v0.6.1

func (v *VirtualMachineInstanceReplicaSet) GetObjectMeta() metav1.Object

Required to satisfy ObjectMetaAccessor interface

func (VirtualMachineInstanceReplicaSet) SwaggerDoc added in v0.6.1

type VirtualMachineInstanceReplicaSetCondition added in v0.6.1

type VirtualMachineInstanceReplicaSetCondition struct {
	Type               VirtualMachineInstanceReplicaSetConditionType `json:"type"`
	Status             k8sv1.ConditionStatus                         `json:"status"`
	LastProbeTime      metav1.Time                                   `json:"lastProbeTime,omitempty"`
	LastTransitionTime metav1.Time                                   `json:"lastTransitionTime,omitempty"`
	Reason             string                                        `json:"reason,omitempty"`
	Message            string                                        `json:"message,omitempty"`
}

--- +k8s:openapi-gen=true

func (*VirtualMachineInstanceReplicaSetCondition) DeepCopy added in v0.6.1

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

func (*VirtualMachineInstanceReplicaSetCondition) DeepCopyInto added in v0.6.1

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

func (VirtualMachineInstanceReplicaSetCondition) SwaggerDoc added in v0.6.1

type VirtualMachineInstanceReplicaSetConditionType added in v0.6.1

type VirtualMachineInstanceReplicaSetConditionType string

--- +k8s:openapi-gen=true

const (
	// VirtualMachineInstanceReplicaSetReplicaFailure is added in a replica set when one of its vmis
	// fails to be created due to insufficient quota, limit ranges, pod security policy, node selectors,
	// etc. or deleted due to kubelet being down or finalizers are failing.
	VirtualMachineInstanceReplicaSetReplicaFailure VirtualMachineInstanceReplicaSetConditionType = "ReplicaFailure"

	// VirtualMachineInstanceReplicaSetReplicaPaused is added in a replica set when the replica set got paused by the controller.
	// After this condition was added, it is safe to remove or add vmis by hand and adjust the replica count by hand.
	VirtualMachineInstanceReplicaSetReplicaPaused VirtualMachineInstanceReplicaSetConditionType = "ReplicaPaused"
)

type VirtualMachineInstanceReplicaSetList added in v0.6.1

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

VMIList is a list of VMIs --- +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +k8s:openapi-gen=true

func (*VirtualMachineInstanceReplicaSetList) DeepCopy added in v0.6.1

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

func (*VirtualMachineInstanceReplicaSetList) DeepCopyInto added in v0.6.1

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

func (*VirtualMachineInstanceReplicaSetList) DeepCopyObject added in v0.6.1

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

func (*VirtualMachineInstanceReplicaSetList) GetListMeta added in v0.6.1

Required to satisfy ListMetaAccessor interface

func (*VirtualMachineInstanceReplicaSetList) GetObjectKind added in v0.6.1

Required to satisfy Object interface

func (VirtualMachineInstanceReplicaSetList) SwaggerDoc added in v0.6.1

type VirtualMachineInstanceReplicaSetSpec added in v0.6.1

type VirtualMachineInstanceReplicaSetSpec struct {
	// Number of desired pods. This is a pointer to distinguish between explicit
	// zero and not specified. Defaults to 1.
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`

	// Label selector for pods. Existing ReplicaSets whose pods are
	// selected by this will be the ones affected by this deployment.
	Selector *metav1.LabelSelector `json:"selector" valid:"required"`

	// Template describes the pods that will be created.
	Template *VirtualMachineInstanceTemplateSpec `json:"template" valid:"required"`

	// Indicates that the replica set is paused.
	// +optional
	Paused bool `json:"paused,omitempty" protobuf:"varint,7,opt,name=paused"`
}

--- +k8s:openapi-gen=true

func (*VirtualMachineInstanceReplicaSetSpec) DeepCopy added in v0.6.1

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

func (*VirtualMachineInstanceReplicaSetSpec) DeepCopyInto added in v0.6.1

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

func (VirtualMachineInstanceReplicaSetSpec) SwaggerDoc added in v0.6.1

type VirtualMachineInstanceReplicaSetStatus added in v0.6.1

type VirtualMachineInstanceReplicaSetStatus struct {
	// Total number of non-terminated pods targeted by this deployment (their labels match the selector).
	// +optional
	Replicas int32 `json:"replicas,omitempty" protobuf:"varint,2,opt,name=replicas"`

	// The number of ready replicas for this replica set.
	// +optional
	ReadyReplicas int32 `json:"readyReplicas,omitempty" protobuf:"varint,4,opt,name=readyReplicas"`

	Conditions []VirtualMachineInstanceReplicaSetCondition `json:"conditions,omitempty" optional:"true"`

	// Canonical form of the label selector for HPA which consumes it through the scale subresource.
	LabelSelector string `json:"labelSelector,omitempty"`
}

--- +k8s:openapi-gen=true

func (*VirtualMachineInstanceReplicaSetStatus) DeepCopy added in v0.6.1

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

func (*VirtualMachineInstanceReplicaSetStatus) DeepCopyInto added in v0.6.1

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

func (VirtualMachineInstanceReplicaSetStatus) SwaggerDoc added in v0.6.1

type VirtualMachineInstanceSpec added in v0.6.1

type VirtualMachineInstanceSpec struct {
	// Specification of the desired behavior of the VirtualMachineInstance on the host.
	Domain DomainSpec `json:"domain"`
	// NodeSelector is a selector which must be true for the vmi to fit on a node.
	// Selector which must match a node's labels for the vmi to be scheduled on that node.
	// More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
	// +optional
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`
	// If affinity is specifies, obey all the affinity rules
	Affinity *k8sv1.Affinity `json:"affinity,omitempty"`
	// If toleration is specified, obey all the toleration rules.
	Tolerations []k8sv1.Toleration `json:"tolerations,omitempty"`
	// Grace period observed after signalling a VirtualMachineInstance to stop after which the VirtualMachineInstance is force terminated.
	TerminationGracePeriodSeconds *int64 `json:"terminationGracePeriodSeconds,omitempty"`
	// List of volumes that can be mounted by disks belonging to the vmi.
	Volumes []Volume `json:"volumes,omitempty"`
	// Periodic probe of VirtualMachineInstance liveness.
	// VirtualmachineInstances will be stopped if the probe fails.
	// Cannot be updated.
	// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
	// +optional
	LivenessProbe *Probe `json:"livenessProbe,omitempty"`
	// Periodic probe of VirtualMachineInstance service readiness.
	// VirtualmachineInstances will be removed from service endpoints if the probe fails.
	// Cannot be updated.
	// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
	// +optional
	ReadinessProbe *Probe `json:"readinessProbe,omitempty"`
	// Specifies the hostname of the vmi
	// If not specified, the hostname will be set to the name of the vmi, if dhcp or cloud-init is configured properly.
	// +optional
	Hostname string `json:"hostname,omitempty"`
	// If specified, the fully qualified vmi hostname will be "<hostname>.<subdomain>.<pod namespace>.svc.<cluster domain>".
	// If not specified, the vmi will not have a domainname at all. The DNS entry will resolve to the vmi,
	// no matter if the vmi itself can pick up a hostname.
	// +optional
	Subdomain string `json:"subdomain,omitempty"`
	// List of networks that can be attached to a vm's virtual interface.
	Networks []Network `json:"networks,omitempty"`
}

VirtualMachineInstanceSpec is a description of a VirtualMachineInstance. --- +k8s:openapi-gen=true

func (*VirtualMachineInstanceSpec) DeepCopy added in v0.6.1

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

func (*VirtualMachineInstanceSpec) DeepCopyInto added in v0.6.1

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

func (VirtualMachineInstanceSpec) SwaggerDoc added in v0.6.1

func (VirtualMachineInstanceSpec) SwaggerDoc() map[string]string

type VirtualMachineInstanceStatus added in v0.6.1

type VirtualMachineInstanceStatus struct {
	// NodeName is the name where the VirtualMachineInstance is currently running.
	NodeName string `json:"nodeName,omitempty"`
	// A brief CamelCase message indicating details about why the VMI is in this state. e.g. 'NodeUnresponsive'
	// +optional
	Reason string `json:"reason,omitempty"`
	// Conditions are specific points in VirtualMachineInstance's pod runtime.
	Conditions []VirtualMachineInstanceCondition `json:"conditions,omitempty"`
	// Phase is the status of the VirtualMachineInstance in kubernetes world. It is not the VirtualMachineInstance status, but partially correlates to it.
	Phase VirtualMachineInstancePhase `json:"phase,omitempty"`
	// Interfaces represent the details of available network interfaces.
	Interfaces []VirtualMachineInstanceNetworkInterface `json:"interfaces,omitempty"`
	// Represents the status of a live migration
	MigrationState *VirtualMachineInstanceMigrationState `json:"migrationState,omitempty"`
	// Represents the method using which the vmi can be migrated: live migration or block migration
	MigrationMethod VirtualMachineInstanceMigrationMethod `json:"migrationMethod,omitempty"`
}

VirtualMachineInstanceStatus represents information about the status of a VirtualMachineInstance. Status may trail the actual state of a system. --- +k8s:openapi-gen=true

func (*VirtualMachineInstanceStatus) DeepCopy added in v0.6.1

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

func (*VirtualMachineInstanceStatus) DeepCopyInto added in v0.6.1

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

func (VirtualMachineInstanceStatus) SwaggerDoc added in v0.6.1

func (VirtualMachineInstanceStatus) SwaggerDoc() map[string]string

type VirtualMachineInstanceTemplateSpec added in v0.6.1

type VirtualMachineInstanceTemplateSpec struct {
	ObjectMeta metav1.ObjectMeta `json:"metadata,omitempty"`
	// VirtualMachineInstance Spec contains the VirtualMachineInstance specification.
	Spec VirtualMachineInstanceSpec `json:"spec,omitempty" valid:"required"`
}

--- +k8s:openapi-gen=true

func (*VirtualMachineInstanceTemplateSpec) DeepCopy added in v0.6.1

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

func (*VirtualMachineInstanceTemplateSpec) DeepCopyInto added in v0.6.1

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

func (VirtualMachineInstanceTemplateSpec) SwaggerDoc added in v0.6.1

type VirtualMachineList added in v0.0.3

type VirtualMachineList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`

	// Items is a list of VirtualMachines
	Items []VirtualMachine `json:"items"`
}

VirtualMachineList is a list of virtualmachines --- +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +k8s:openapi-gen=true

func (*VirtualMachineList) DeepCopy added in v0.0.3

func (in *VirtualMachineList) DeepCopy() *VirtualMachineList

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

func (*VirtualMachineList) DeepCopyInto added in v0.0.3

func (in *VirtualMachineList) DeepCopyInto(out *VirtualMachineList)

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

func (*VirtualMachineList) DeepCopyObject added in v0.0.3

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

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

func (VirtualMachineList) SwaggerDoc added in v0.0.3

func (VirtualMachineList) SwaggerDoc() map[string]string

type VirtualMachineSpec added in v0.2.0

type VirtualMachineSpec struct {
	// Running controls whether the associatied VirtualMachineInstance is created or not
	Running bool `json:"running"`

	// Template is the direct specification of VirtualMachineInstance
	Template *VirtualMachineInstanceTemplateSpec `json:"template"`

	// dataVolumeTemplates is a list of dataVolumes that the VirtualMachineInstance template can reference.
	// DataVolumes in this list are dynamically created for the VirtualMachine and are tied to the VirtualMachine's life-cycle.
	DataVolumeTemplates []cdiv1.DataVolume `json:"dataVolumeTemplates,omitempty"`
}

VirtualMachineSpec describes how the proper VirtualMachine should look like --- +k8s:openapi-gen=true

func (*VirtualMachineSpec) DeepCopy added in v0.2.0

func (in *VirtualMachineSpec) DeepCopy() *VirtualMachineSpec

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

func (*VirtualMachineSpec) DeepCopyInto added in v0.2.0

func (in *VirtualMachineSpec) DeepCopyInto(out *VirtualMachineSpec)

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

func (VirtualMachineSpec) SwaggerDoc added in v0.2.0

func (VirtualMachineSpec) SwaggerDoc() map[string]string

type VirtualMachineStatus added in v0.2.0

type VirtualMachineStatus struct {
	// Created indicates if the virtual machine is created in the cluster
	Created bool `json:"created,omitempty"`
	// Ready indicates if the virtual machine is running and ready
	Ready bool `json:"ready,omitempty"`
	// Hold the state information of the VirtualMachine and its VirtualMachineInstance
	Conditions []VirtualMachineCondition `json:"conditions,omitempty" optional:"true"`
}

VirtualMachineStatus represents the status returned by the controller to describe how the VirtualMachine is doing --- +k8s:openapi-gen=true

func (*VirtualMachineStatus) DeepCopy added in v0.2.0

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

func (*VirtualMachineStatus) DeepCopyInto added in v0.2.0

func (in *VirtualMachineStatus) DeepCopyInto(out *VirtualMachineStatus)

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

func (VirtualMachineStatus) SwaggerDoc added in v0.2.0

func (VirtualMachineStatus) SwaggerDoc() map[string]string

type Volume added in v0.2.0

type Volume struct {
	// Volume's name.
	// Must be a DNS_LABEL and unique within the vmi.
	// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
	Name string `json:"name"`
	// VolumeSource represents the location and type of the mounted volume.
	// Defaults to Disk, if no type is specified.
	VolumeSource `json:",inline"`
}

Volume represents a named volume in a vmi. --- +k8s:openapi-gen=true

func (*Volume) DeepCopy added in v0.2.0

func (in *Volume) DeepCopy() *Volume

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

func (*Volume) DeepCopyInto added in v0.2.0

func (in *Volume) DeepCopyInto(out *Volume)

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

func (Volume) SwaggerDoc added in v0.2.0

func (Volume) SwaggerDoc() map[string]string

type VolumeSource added in v0.2.0

type VolumeSource struct {
	// HostDisk represents a disk created on the cluster level
	// +optional
	HostDisk *HostDisk `json:"hostDisk,omitempty"`
	// PersistentVolumeClaimVolumeSource represents a reference to a PersistentVolumeClaim in the same namespace.
	// Directly attached to the vmi via qemu.
	// More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
	// +optional
	PersistentVolumeClaim *v1.PersistentVolumeClaimVolumeSource `json:"persistentVolumeClaim,omitempty"`
	// CloudInitNoCloud represents a cloud-init NoCloud user-data source.
	// The NoCloud data will be added as a disk to the vmi. A proper cloud-init installation is required inside the guest.
	// More info: http://cloudinit.readthedocs.io/en/latest/topics/datasources/nocloud.html
	// +optional
	CloudInitNoCloud *CloudInitNoCloudSource `json:"cloudInitNoCloud,omitempty"`
	// ContainerDisk references a docker image, embedding a qcow or raw disk.
	// More info: https://kubevirt.gitbooks.io/user-guide/registry-disk.html
	// +optional
	ContainerDisk *ContainerDiskSource `json:"containerDisk,omitempty"`
	// Ephemeral is a special volume source that "wraps" specified source and provides copy-on-write image on top of it.
	// +optional
	Ephemeral *EphemeralVolumeSource `json:"ephemeral,omitempty"`
	// EmptyDisk represents a temporary disk which shares the vmis lifecycle.
	// More info: https://kubevirt.gitbooks.io/user-guide/disks-and-volumes.html
	// +optional
	EmptyDisk *EmptyDiskSource `json:"emptyDisk,omitempty"`
	// DataVolume represents the dynamic creation a PVC for this volume as well as
	// the process of populating that PVC with a disk image.
	// +optional
	DataVolume *DataVolumeSource `json:"dataVolume,omitempty"`
	// ConfigMapSource represents a reference to a ConfigMap in the same namespace.
	// More info: https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/
	// +optional
	ConfigMap *ConfigMapVolumeSource `json:"configMap,omitempty"`
	// SecretVolumeSource represents a reference to a secret data in the same namespace.
	// More info: https://kubernetes.io/docs/concepts/configuration/secret/
	// +optional
	Secret *SecretVolumeSource `json:"secret,omitempty"`
	// ServiceAccountVolumeSource represents a reference to a service account.
	// There can only be one volume of this type!
	// More info: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/
	// +optional
	ServiceAccount *ServiceAccountVolumeSource `json:"serviceAccount,omitempty"`
}

Represents the source of a volume to mount. Only one of its members may be specified. --- +k8s:openapi-gen=true

func (*VolumeSource) DeepCopy added in v0.2.0

func (in *VolumeSource) DeepCopy() *VolumeSource

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

func (*VolumeSource) DeepCopyInto added in v0.2.0

func (in *VolumeSource) DeepCopyInto(out *VolumeSource)

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

func (VolumeSource) SwaggerDoc added in v0.2.0

func (VolumeSource) SwaggerDoc() map[string]string

type Watchdog added in v0.1.0

type Watchdog struct {
	// Name of the watchdog.
	Name string `json:"name"`
	// WatchdogDevice contains the watchdog type and actions.
	// Defaults to i6300esb.
	WatchdogDevice `json:",inline"`
}

Named watchdog device. --- +k8s:openapi-gen=true

func (*Watchdog) DeepCopy added in v0.2.0

func (in *Watchdog) DeepCopy() *Watchdog

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

func (*Watchdog) DeepCopyInto added in v0.2.0

func (in *Watchdog) DeepCopyInto(out *Watchdog)

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

func (Watchdog) SwaggerDoc added in v0.1.0

func (Watchdog) SwaggerDoc() map[string]string

type WatchdogAction added in v0.2.0

type WatchdogAction string

WatchdogAction defines the watchdog action, if a watchdog gets triggered. --- +k8s:openapi-gen=true

const (
	// WatchdogActionPoweroff will poweroff the vmi if the watchdog gets triggered.
	WatchdogActionPoweroff WatchdogAction = "poweroff"
	// WatchdogActionReset will reset the vmi if the watchdog gets triggered.
	WatchdogActionReset WatchdogAction = "reset"
	// WatchdogActionShutdown will shutdown the vmi if the watchdog gets triggered.
	WatchdogActionShutdown WatchdogAction = "shutdown"
)

type WatchdogDevice added in v0.2.0

type WatchdogDevice struct {
	// i6300esb watchdog device.
	// +optional
	I6300ESB *I6300ESBWatchdog `json:"i6300esb,omitempty"`
}

Hardware watchdog device. Exactly one of its members must be set. --- +k8s:openapi-gen=true

func (*WatchdogDevice) DeepCopy added in v0.2.0

func (in *WatchdogDevice) DeepCopy() *WatchdogDevice

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

func (*WatchdogDevice) DeepCopyInto added in v0.2.0

func (in *WatchdogDevice) DeepCopyInto(out *WatchdogDevice)

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

func (WatchdogDevice) SwaggerDoc added in v0.2.0

func (WatchdogDevice) SwaggerDoc() map[string]string

Jump to

Keyboard shortcuts

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