Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Adapter ¶
type Adapter interface { // Construct builder. Builder(ctx *plancontext.Context) (Builder, error) // Construct VM client. Client(ctx *plancontext.Context) (Client, error) // Construct validator. Validator(plan *api.Plan) (Validator, error) }
Adapter API. Constructs provider-specific implementations of the Builder, Client, and Validator.
type Builder ¶
type Builder interface { // Build secret. Secret(vmRef ref.Ref, in, object *core.Secret) error // Build DataVolume config map. ConfigMap(vmRef ref.Ref, secret *core.Secret, object *core.ConfigMap) error // Build the Kubevirt VirtualMachine spec. VirtualMachine(vmRef ref.Ref, object *cnv.VirtualMachineSpec, dataVolumes []cdi.DataVolume) error // Build DataVolumes. DataVolumes(vmRef ref.Ref, secret *core.Secret, configMap *core.ConfigMap) (dvs []cdi.DataVolumeSpec, err error) // Build tasks. Tasks(vmRef ref.Ref) ([]*planapi.Task, error) // Build template labels. TemplateLabels(vmRef ref.Ref) (labels map[string]string, err error) // Return a stable identifier for a DataVolume. ResolveDataVolumeIdentifier(dv *cdi.DataVolume) string }
Builder API. Builds/updates objects as needed with provider specific constructs.
type Client ¶
type Client interface { // Power on the source VM. PowerOn(vmRef ref.Ref) error // Power off the source VM. PowerOff(vmRef ref.Ref) error // Return the source VM's power state. PowerState(vmRef ref.Ref) (string, error) // Return whether the source VM is powered off. PoweredOff(vmRef ref.Ref) (bool, error) // Create a snapshot of the source VM. CreateSnapshot(vmRef ref.Ref) (string, error) // Remove all warm migration snapshots. RemoveSnapshots(vmRef ref.Ref, precopies []planapi.Precopy) error // Check if a snapshot is ready to transfer. CheckSnapshotReady(vmRef ref.Ref, snapshot string) (bool, error) // Set DataVolume checkpoints. SetCheckpoints(vmRef ref.Ref, precopies []planapi.Precopy, datavolumes []cdi.DataVolume, final bool) (err error) // Close connections to the provider API. Close() }
Client API. Performs provider-specific actions on the source VM.
type Validator ¶
type Validator interface { // Validate that a VM's disk backing storage has been mapped. StorageMapped(vmRef ref.Ref) (bool, error) // Validate that a VM's networks have been mapped. NetworksMapped(vmRef ref.Ref) (bool, error) // Validate that a VM's Host isn't in maintenance mode. MaintenanceMode(vmRef ref.Ref) (bool, error) // Validate whether warm migration is supported from this provider type. WarmMigration() bool // Validate that no more than one of a VM's networks is mapped to the pod network. PodNetwork(vmRef ref.Ref) (bool, error) }
Validator API. Performs provider-specific validation.
Click to show internal directories.
Click to hide internal directories.