utils

package
v1.3.0 Latest Latest
Warning

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

Go to latest
Published: Jul 8, 2024 License: Apache-2.0 Imports: 20 Imported by: 4

Documentation

Index

Constants

View Source
const (
	VmiEphemeral                = "vmi-ephemeral"
	VmiMigratable               = "vmi-migratable"
	VmiInstancetypeSmall        = "vmi-instancetype-small"
	VmiSata                     = "vmi-sata"
	VmiFedora                   = "vmi-fedora"
	VmiFedoraIsolated           = "vmi-fedora-isolated"
	VmiSecureBoot               = "vmi-secureboot"
	VmiAlpineEFI                = "vmi-alpine-efi"
	VmiNoCloud                  = "vmi-nocloud"
	VmiPVC                      = "vmi-pvc"
	VmiWindows                  = "vmi-windows"
	VmiKernelBoot               = "vmi-kernel-boot"
	VmiMasquerade               = "vmi-masquerade"
	VmiSRIOV                    = "vmi-sriov"
	VmiWithHookSidecar          = "vmi-with-sidecar-hook"
	VmiWithHookSidecarConfigMap = "vmi-with-sidecar-hook-configmap"
	VmiMultusPtp                = "vmi-multus-ptp"
	VmiMultusMultipleNet        = "vmi-multus-multiple-net"
	VmiHostDisk                 = "vmi-host-disk"
	VmiGPU                      = "vmi-gpu"
	VmiARM                      = "vmi-arm"
	VmiUSB                      = "vmi-usb"
	VmTemplateFedora            = "vm-template-fedora"
	VmTemplateRHEL7             = "vm-template-rhel7"
	VmTemplateWindows           = "vm-template-windows2012r2"
)
View Source
const (
	Preemtible    = "preemtible"
	NonPreemtible = "non-preemtible"
)
View Source
const (
	VirtualMachineInstancetypeComputeSmall              = "csmall"
	VirtualMachineClusterInstancetypeComputeSmall       = "cluster-csmall"
	VirtualMachineInstancetypeComputeLarge              = "clarge"
	VirtualMachinePreferenceVirtio                      = v1.VirtIO
	VirtualMachinePreferenceWindows                     = "windows"
	VmCirrosInstancetypeComputeSmall                    = "vm-cirros-csmall"
	VmCirrosClusterInstancetypeComputeSmall             = "vm-cirros-cluster-csmall"
	VmCirrosInstancetypeComputeLarge                    = "vm-cirros-clarge"
	VmCirrosInstancetypeComputeLargePreferncesVirtio    = "vm-cirros-clarge-virtio"
	VmCirrosInstancetypeComputeLargePreferencesWindows  = "vm-cirros-clarge-windows"
	VmWindowsInstancetypeComputeLargePreferencesWindows = "vm-windows-clarge-windows"
)
View Source
const (
	VmCirros           = "vm-cirros"
	VmAlpineMultiPvc   = "vm-alpine-multipvc"
	VmAlpineDataVolume = "vm-alpine-datavolume"
	VMPriorityClass    = "vm-priorityclass"
	VmCirrosSata       = "vm-cirros-sata"
)
View Source
const EthernetAdaptorModelToEnableMultiqueue = v1.VirtIO
View Source
const MigrationPolicyName = "example-migration-policy"
View Source
const VmPoolCirros = "vm-pool-cirros"
View Source
const VmiMigration = "migration-job"
View Source
const VmiPresetSmall = "vmi-preset-small"
View Source
const VmiReplicaSetCirros = "vmi-replicaset-cirros"

Variables

View Source
var DockerPrefix = "registry:5000/kubevirt"
View Source
var DockerTag = "devel"

Functions

func AddKernelBootToVMI added in v0.50.0

func AddKernelBootToVMI(vmi *v1.VirtualMachineInstance)

func GetComputeSmallInstancetypeSpec added in v0.56.0

func GetComputeSmallInstancetypeSpec() instancetypev1beta1.VirtualMachineInstancetypeSpec

func GetMigrationPolicy added in v1.0.0

func GetMigrationPolicy() *v1alpha1.MigrationPolicy

func GetNonPreemtible added in v0.27.0

func GetNonPreemtible() *schedulingv1.PriorityClass

func GetPreemtible added in v0.27.0

func GetPreemtible() *schedulingv1.PriorityClass

func GetVMCirros

func GetVMCirros() *v1.VirtualMachine

func GetVMCirrosSata added in v0.54.0

func GetVMCirrosSata() *v1.VirtualMachine

func GetVMDataVolume

func GetVMDataVolume() *v1.VirtualMachine

func GetVMIARM added in v0.48.0

func GetVMIARM() *v1.VirtualMachineInstance

The minimum memory for UEFI boot on Arm64 is 256Mi

func GetVMIAlpineEFI added in v0.14.0

func GetVMIAlpineEFI() *v1.VirtualMachineInstance

func GetVMIEphemeral

func GetVMIEphemeral() *v1.VirtualMachineInstance

func GetVMIEphemeralFedora

func GetVMIEphemeralFedora() *v1.VirtualMachineInstance

func GetVMIEphemeralFedoraIsolated added in v0.58.1

func GetVMIEphemeralFedoraIsolated() *v1.VirtualMachineInstance

func GetVMIGPU added in v0.22.0

func GetVMIGPU() *v1.VirtualMachineInstance

func GetVMIHostDisk

func GetVMIHostDisk() *v1.VirtualMachineInstance

func GetVMIKernelBoot added in v0.42.0

func GetVMIKernelBoot() *v1.VirtualMachineInstance

func GetVMIKernelBootWithRandName added in v1.1.0

func GetVMIKernelBootWithRandName() *v1.VirtualMachineInstance

func GetVMIMasquerade added in v0.11.1

func GetVMIMasquerade() *v1.VirtualMachineInstance

func GetVMIMigratable added in v0.9.2

func GetVMIMigratable() *v1.VirtualMachineInstance

func GetVMIMigration added in v0.9.2

func GetVMIMigration() *v1.VirtualMachineInstanceMigration

func GetVMIMultusMultipleNet

func GetVMIMultusMultipleNet() *v1.VirtualMachineInstance

func GetVMIMultusPtp

func GetVMIMultusPtp() *v1.VirtualMachineInstance

func GetVMINoCloud

func GetVMINoCloud() *v1.VirtualMachineInstance

func GetVMIPresetSmall

func GetVMIPresetSmall() *v1.VirtualMachineInstancePreset

func GetVMIPvc

func GetVMIPvc() *v1.VirtualMachineInstance

func GetVMIReplicaSetCirros

func GetVMIReplicaSetCirros() *v1.VirtualMachineInstanceReplicaSet

func GetVMISRIOV added in v0.11.0

func GetVMISRIOV() *v1.VirtualMachineInstance

func GetVMISata

func GetVMISata() *v1.VirtualMachineInstance

func GetVMISecureBoot added in v0.30.4

func GetVMISecureBoot() *v1.VirtualMachineInstance

func GetVMIUSB added in v1.1.0

func GetVMIUSB() *v1.VirtualMachineInstance

func GetVMIWindows

func GetVMIWindows() *v1.VirtualMachineInstance

func GetVMIWithHookSidecar

func GetVMIWithHookSidecar() *v1.VirtualMachineInstance

func GetVMMultiPvc

func GetVMMultiPvc() *v1.VirtualMachine

func GetVMPoolCirros added in v0.51.0

func GetVMPoolCirros() *poolv1.VirtualMachinePool

func GetVMPriorityClass added in v0.27.0

func GetVMPriorityClass() *v1.VirtualMachine

func GetVirtualMachineClusterInstancetypeComputeSmall added in v0.56.0

func GetVirtualMachineClusterInstancetypeComputeSmall() *instancetypev1beta1.VirtualMachineClusterInstancetype

func GetVirtualMachineInstancetypeComputeLarge added in v0.56.0

func GetVirtualMachineInstancetypeComputeLarge() *instancetypev1beta1.VirtualMachineInstancetype

func GetVirtualMachineInstancetypeComputeSmall added in v0.56.0

func GetVirtualMachineInstancetypeComputeSmall() *instancetypev1beta1.VirtualMachineInstancetype

func GetVirtualMachinePreferenceVirtio added in v0.56.0

func GetVirtualMachinePreferenceVirtio() *instancetypev1beta1.VirtualMachinePreference

func GetVirtualMachinePreferenceWindows added in v0.56.0

func GetVirtualMachinePreferenceWindows() *instancetypev1beta1.VirtualMachinePreference

func GetVmCirrosClusterInstancetypeComputeSmall added in v0.56.0

func GetVmCirrosClusterInstancetypeComputeSmall() *v1.VirtualMachine

func GetVmCirrosInstancetypeComputeLarge added in v0.56.0

func GetVmCirrosInstancetypeComputeLarge() *v1.VirtualMachine

func GetVmCirrosInstancetypeComputeLargePreferencesVirtio added in v0.56.0

func GetVmCirrosInstancetypeComputeLargePreferencesVirtio() *v1.VirtualMachine

func GetVmCirrosInstancetypeComputeLargePreferencesWindows added in v0.56.0

func GetVmCirrosInstancetypeComputeLargePreferencesWindows() *v1.VirtualMachine

func GetVmCirrosInstancetypeComputeSmall added in v0.56.0

func GetVmCirrosInstancetypeComputeSmall() *v1.VirtualMachine

func GetVmWindowsInstancetypeComputeLargePreferencesWindows added in v0.56.0

func GetVmWindowsInstancetypeComputeLargePreferencesWindows() *v1.VirtualMachine

func GetVmiWithHookSidecarConfigMap added in v1.2.0

func GetVmiWithHookSidecarConfigMap() *v1.VirtualMachineInstance

Types

type BrokerTemplateInstance

type BrokerTemplateInstance struct {
	metav1.TypeMeta
	metav1.ObjectMeta

	// Spec describes the state of this BrokerTemplateInstance.
	Spec BrokerTemplateInstanceSpec
}

BrokerTemplateInstance holds the service broker-related state associated with a TemplateInstance. BrokerTemplateInstance is part of an experimental API.

type BrokerTemplateInstanceList

type BrokerTemplateInstanceList struct {
	metav1.TypeMeta
	metav1.ListMeta

	// Items is a list of BrokerTemplateInstances
	Items []BrokerTemplateInstance
}

BrokerTemplateInstanceList is a list of BrokerTemplateInstance objects.

type BrokerTemplateInstanceSpec

type BrokerTemplateInstanceSpec struct {
	// TemplateInstance is a reference to a TemplateInstance object residing
	// in a namespace.
	TemplateInstance kapi.ObjectReference

	// Secret is a reference to a Secret object residing in a namespace,
	// containing the necessary template parameters.
	Secret kapi.ObjectReference

	// BindingIDs is a list of 'binding_id's provided during successive bind
	// calls to the template service broker.
	BindingIDs []string
}

BrokerTemplateInstanceSpec describes the state of a BrokerTemplateInstance.

type ExtraValue

type ExtraValue []string

ExtraValue masks the value so protobuf can generate

type Parameter

type Parameter struct {
	// Required: Parameter name must be set and it can be referenced in Template
	// Items using ${PARAMETER_NAME}
	Name string `json:"name"`

	// Optional: The name that will show in UI instead of parameter 'Name'
	DisplayName string `json:"displayName,omitempty"`

	// Optional: Parameter can have description
	Description string `json:"description,omitempty"`

	// Optional: Value holds the Parameter data. If specified, the generator
	// will be ignored. The value replaces all occurrences of the Parameter
	// ${Name} expression during the Template to Config transformation.
	Value string `json:"value,omitempty"`

	// Optional: Generate specifies the generator to be used to generate
	// random string from an input value specified by From field. The result
	// string is stored into Value field. If empty, no generator is being
	// used, leaving the result Value untouched.
	Generate string `json:"generate,omitempty"`

	// Optional: From is an input value for the generator.
	From string `json:"from,omitempty"`

	// Optional: Indicates the parameter must have a value.  Defaults to false.
	Required bool `json:"required,omitempty"`
}

Parameter defines a name/value variable that is to be processed during the Template to Config transformation.

type Template

type Template struct {
	metav1.TypeMeta
	metav1.ObjectMeta `json:"metadata"`

	// message is an optional instructional message that will
	// be displayed when this template is instantiated.
	// This field should inform the user how to utilize the newly created resources.
	// Parameter substitution will be performed on the message before being
	// displayed so that generated credentials and other parameters can be
	// included in the output.
	Message string `json:"message,omitempty"`

	// parameters is an optional array of Parameters used during the
	// Template to Config transformation.
	Parameters []Parameter `json:"parameters,omitempty"`

	// objects is an array of resources to include in this template.
	// If a namespace value is hardcoded in the object, it will be removed
	// during template instantiation, however if the namespace value
	// is, or contains, a ${PARAMETER_REFERENCE}, the resolved
	// value after parameter substitution will be respected and the object
	// will be created in that namespace.
	Objects []runtime.Object `json:"objects"`

	// objectLabels is an optional set of labels that are applied to every
	// object during the Template to Config transformation.
	ObjectLabels map[string]string `json:"objectLabels,omitempty"`
}

Template contains the inputs needed to produce a Config.

func GetTemplateFedora

func GetTemplateFedora() *Template

func GetTemplateFedoraWithContainerDisk added in v0.26.5

func GetTemplateFedoraWithContainerDisk(containerDisk string) *Template

func GetTemplateRHEL7

func GetTemplateRHEL7() *Template

func GetTemplateWindows

func GetTemplateWindows() *Template

func GetTestTemplateRHEL7

func GetTestTemplateRHEL7() *Template

type TemplateInstance

type TemplateInstance struct {
	metav1.TypeMeta
	metav1.ObjectMeta

	// Spec describes the desired state of this TemplateInstance.
	Spec TemplateInstanceSpec

	// Status describes the current state of this TemplateInstance.
	Status TemplateInstanceStatus
}

TemplateInstance requests and records the instantiation of a Template. TemplateInstance is part of an experimental API.

type TemplateInstanceCondition

type TemplateInstanceCondition struct {
	// Type of the condition, currently Ready or InstantiateFailure.
	Type TemplateInstanceConditionType
	// Status of the condition, one of True, False or Unknown.
	Status kapi.ConditionStatus
	// LastTransitionTime is the last time a condition status transitioned from
	// one state to another.
	LastTransitionTime metav1.Time
	// Reason is a brief machine readable explanation for the condition's last
	// transition.
	Reason string
	// Message is a human readable description of the details of the last
	// transition, complementing reason.
	Message string
}

TemplateInstanceCondition contains condition information for a TemplateInstance.

type TemplateInstanceConditionType

type TemplateInstanceConditionType string

TemplateInstanceConditionType is the type of condition pertaining to a TemplateInstance.

const (
	// TemplateInstanceReady indicates the readiness of the template
	// instantiation.
	TemplateInstanceReady TemplateInstanceConditionType = "Ready"
	// TemplateInstanceInstantiateFailure indicates the failure of the template
	// instantiation
	TemplateInstanceInstantiateFailure TemplateInstanceConditionType = "InstantiateFailure"
)

type TemplateInstanceList

type TemplateInstanceList struct {
	metav1.TypeMeta
	metav1.ListMeta

	// Items is a list of Templateinstances
	Items []TemplateInstance
}

TemplateInstanceList is a list of TemplateInstance objects.

type TemplateInstanceObject

type TemplateInstanceObject struct {
	// ref is a reference to the created object.
	Ref kapi.ObjectReference
}

TemplateInstanceObject references an object created by a TemplateInstance.

type TemplateInstanceRequester

type TemplateInstanceRequester struct {
	// username uniquely identifies this user among all active users.
	Username string

	// uid is a unique value that identifies this user across time; if this user is
	// deleted and another user by the same name is added, they will have
	// different UIDs.
	UID string

	// groups represent the groups this user is a part of.
	Groups []string

	// extra holds additional information provided by the authenticator.
	Extra map[string]ExtraValue
}

TemplateInstanceRequester holds the identity of an agent requesting a template instantiation.

type TemplateInstanceSpec

type TemplateInstanceSpec struct {
	// Template is a full copy of the template for instantiation.
	Template Template

	// Secret is a reference to a Secret object containing the necessary
	// template parameters.
	Secret *kapi.LocalObjectReference

	// Requester holds the identity of the agent requesting the template
	// instantiation.
	Requester *TemplateInstanceRequester
}

TemplateInstanceSpec describes the desired state of a TemplateInstance.

type TemplateInstanceStatus

type TemplateInstanceStatus struct {
	// Conditions represent the latest available observations of a
	// TemplateInstance's current state.
	Conditions []TemplateInstanceCondition

	// Objects references the objects created by the TemplateInstance.
	Objects []TemplateInstanceObject
}

TemplateInstanceStatus describes the current state of a TemplateInstance.

type TemplateList

type TemplateList struct {
	metav1.TypeMeta
	metav1.ListMeta
	Items []Template
}

TemplateList is a list of Template objects.

Jump to

Keyboard shortcuts

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