KRM API virtualmachine.gdc.goog/v1

virtualmachine.gdc.goog/v1

Contains API Schema definitions for the virtualmachine.gdc.goog v1 API group.

AccessManagementConfig

Specifies the AccessManagement feature configuration in the guest environment.

Appears in: - GuestEnvironment

Field Description
enable boolean Specifies whether to enable the AccessManagement feature in the VM's guest environment. See the GuestEnvironment field description for information about the default value of the field.

Compute

Specifies the CPU and memory attributes of a VM. You must specify either vcpus and memory exclusively, or specify only VirtualMachineType. Specifying vcpus without memory, or vice versa, creates an invalid combination. Specifying virtualMachineType while specifying either vcpus or memory, or both also creates an invalid combination.

Appears in: - VirtualMachineSpec

Field Description
virtualMachineType string Specifies the name of the referenced VirtualMachineType. The reference requires a predefined, or golden VirtualMachineType name.
vcpus integer Specifies the number of VCPUs that are available to the instance. Specify vcpus as an integer. This value must be a multiple of 2, with 2 as the minimum and 128 as the maximum allowed.
memory Quantity Specifies the amount of physical memory available to the instance. memory must have a minimum value of 1Gi, and can be up to (including) 400Gi.

DiskAttachment

Represents the attachment relationship between the VirtualMachine and the VirtualMachineDisk.

Appears in: - VirtualMachineSpec

Field Description
boot boolean Specifies whether this disk is the boot device for the VirtualMachine. There must be exactly one disk marked as boot.
autoDelete boolean Specifies whether the disk should be deleted when the VirtualMachine is deleted. AutoDelete only applies while a disk is attached to a VirtualMachine. A VirtualMachineDisk lifecycle is decoupled from the VirtualMachine once it is no longer referenced in .spec.disks.
virtualMachineDiskRef LocalObjectReference Refers to a VirtualMachineDisk in the same namespace.

DiskSource

Defines the source for the disk. Specify exactly one of the supported sources to use to populate a disk.

Appears in: - VirtualMachineDiskSpec

Field Description
image ImageDiskSource Denotes that the disk is created from a disk Image.

Firmware

Specifies the VM initialization options at boot time.

Appears in: - VirtualMachineSpec

Field Description
type string Specifies whether to boot via UEFI or BIOS. Defaults to bios.
enableSecureBoot boolean Enables or disables boot loader certificate verification. This is to assist in blocking modified or malicious code from loading. The default value is true if type is uefi. If type is set to bios, the default value is false and cannot be modified since boot loader certificate verification is not available for BIOS.

GuestEnvironment

Specifies the guest environment configuration.

Appears in: - VirtualMachineSpec

Field Description
accessManagement AccessManagementConfig Specifies the access management configuration.

ImageDiskSource

Reference to the Image Source.

Appears in: - DiskSource

Field Description
name string The name of the VirtualMachineImage API object.
namespace string The namespace of the VirtualMachineImage API object. For golden images use vm-system. For images in the current project, set this as empty or use the current namespace value.

ImageMetadataInput

The specification for the VirtualMachineImage.

Appears in: - VirtualMachineImageImportSpec

Field Description
name string The image name, such as ubuntu-20.04-server-cloudimg.
operatingSystem OSName The name of the OS to which this image belongs, such as ubuntu-2004.
minimumDiskSize Quantity The minimum size of the disk to which the image can be applied. This specifies only the recommended size for future disks that are created from this image. It does not represent the size of the image itself. This field is required if the image is being imported from object storage.

ImageObjectStorageSourceReference

Represents the object storage source from which to import an image.

Appears in: - ImageSourceReference

Field Description
bucketRef LocalObjectReference The name of the Bucket custom resource that holds this image. The Bucket custom resource must be in the same namespace as this object.
objectName string The name of the image within the bucket.

ImagePrepareOptions

Represents the options for image preparation.

Appears in: - VirtualMachineImageImportSpec

Field Description
installGuestEnvironment boolean Specifies whether to install the GDC air-gapped guest environment. Defaults to true.

ImageSourceReference

Points to the resource from which the image contents are populated. Only one source can be specified.

Appears in: - VirtualMachineImageImportSpec

Field Description
diskRef LocalObjectReference Specified when the image is populated from an existing VirtualMachineDisk.
objectStorage ImageObjectStorageSourceReference The bucket details for an image that is populated from object storage.

NetworkInterfaceSpec

Specifies the network interface configuration.

Appears in: - NetworkSpec

Field Description
network string The network that the interface is connected to. Valid values are: default, multicast.

NetworkInterfaceStatus

NetworkInterfaceStatus is the status for the NetworkInterface resource.

Appears in: - NetworkStatus

Field Description
name string Name denotes the name of the network interface exposed inside the VM, e.g. "eth0", "eth1".
ipAddresses string array IpAddresses are the IP addresses assigned to the NetworkInterface.
macAddress string MacAddress is the MAC address assigned to the NetworkInterface.

NetworkSpec

Specifies the network configuration.

Appears in: - VirtualMachineSpec

Field Description
interfaces NetworkInterfaceSpec array The network interfaces attached to the VM. The default interface is always added, but can be explicitly specified. Users in a multicast-enabled organization can add the multicast interface.

NetworkStatus

NetworkStatus is the status for the network of the Virtual Machine.

Appears in: - VirtualMachineStatus

Field Description
interfaces NetworkInterfaceStatus array

OSName

Underlying type: string The list of valid OSes for use.

Appears in: - ImageMetadataInput - OperatingSystemSpec

OperatingSystemSpec

Contains the operating system information of an image.

Appears in: - VirtualMachineImageSpec

Field Description
name OSName The name of the OS to which this image belongs, e.g. "windows-2016".

SSHSpec

Stores the ssh credentials used to establish the connection.

Appears in: - VirtualMachineAccessRequestSpec

Field Description
key string Specifies the public key to program for SSH access.
ttl Duration Specifies the length of time for which this key is valid, expressed in hours, minutes and seconds. The default value is 24h0m0s.

ServicePort

ServicePort contains information on service's port.

Appears in: - VirtualMachineExternalAccessSpec

Field Description
name string The name of this port within the service.
protocol Protocol The IP protocol for this port. Supports "TCP", "UDP", and "SCTP".
port integer The port that will be exposed by this service.

StartupScript

Defines a startup script for a VM. Supports the specification of a startup script either as a plain text string or a Kubernetes secret. If the field script is specified, then the field scriptSecretRef should not be provided, and vice versa.

Appears in: - VirtualMachineSpec

Field Description
name string Specifies the name of a script. Must match the regex [\w][\w\-.]* and be at most 255 characters. If specifying a script for a Windows VM, the name must include a '-' followed by the script extension as a suffix. For example, use the name hello-world-ps1 for a Powershell script named hello-world.
script string Specifies a plain text string that contains the script. The script content size must be lesser than 2048 bytes.
scriptSecretRef LocalObjectReference References a Kubernetes secret that contains the script. The ScriptSecretRef name must match the name of the Kubernetes secret.

VMMError

Wrapper for all VMM errors, including error codes.

Appears in: - VirtualMachineAccessRequestStatus - VirtualMachineDiskStatus - VirtualMachineExternalAccessStatus - VirtualMachineImageImportStatus - VirtualMachineImageStatus - VirtualMachinePasswordResetRequestStatus - VirtualMachineStatus

Field Description
code string The code for the error. It includes a prefix with letters followed by a four-digit numeric code.
message string The human-readable error message.

VirtualMachine

Represents the Virtual Machine's configuration and state.

Appears in: - VirtualMachineList

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachine
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec VirtualMachineSpec
status VirtualMachineStatus

VirtualMachineAccessRequest

Represents an access request to a VM.

Appears in: - VirtualMachineAccessRequestList

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineAccessRequest
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec VirtualMachineAccessRequestSpec
status VirtualMachineAccessRequestStatus

VirtualMachineAccessRequestList

Contains a list of VirtualMachineAccessRequest objects.

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineAccessRequestList
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items VirtualMachineAccessRequest array

VirtualMachineAccessRequestSpec

Defines the VirtualMachineAccessRequest specification.

Appears in: - VirtualMachineAccessRequest

Field Description
vm string Specifies the name of the VM to access.
user string Specifies the username for accessing the VM.
ssh SSHSpec Holds the ssh credentials used to access the VM.

VirtualMachineAccessRequestState

Underlying type: string State of VirtualMachineAccessRequest.

Appears in: - VirtualMachineAccessRequestStatus

VirtualMachineAccessRequestStatus

Describes the status of the VirtualMachineAccessRequest.

Appears in: - VirtualMachineAccessRequest

Field Description
state VirtualMachineAccessRequestState Specifies the state of VirtualMachineAccessRequest.
reason string Indicates the reason for the current status.
message string Provides additional context for the current status.
processedAt Time Specifies the time when the request was processed.
errors VMMError array A list of any errors that occurred during the reconciliation of this resource.

VirtualMachineAttachment

Contains information about which VirtualMachine this VirtualMachineDisk is attached to, and how it is attached.

Appears in: - VirtualMachineDiskStatus

Field Description
nameRef LocalObjectReference The name of an attached VirtualMachine.
uid UID The UID of the attached VirtualMachine.
autoDelete boolean Reflective of how the VirtualMachine attaches this disk. The disk is deleted when all VMs attached have autoDelete set to true and all VMs are deleted. If a minimum of one VM has autoDelete set to false, the disk will not be deleted.

VirtualMachineBackup

The Schema for the VirtualMachineBackups API.

Appears in: - VirtualMachineBackupList

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineBackup
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec VirtualMachineBackupSpec
status VirtualMachineBackupStatus

VirtualMachineBackupConfig

Contains configuration details for executing the backup, including scope, location, and volume backup strategy.

Appears in: - VirtualMachineBackupPlanSpec - VirtualMachineBackupSpec

Field Description
backupRepository string Identifies the secondary storage location for this VirtualMachineBackupPlan.
backupScope VirtualMachineBackupScope Specifies the resource(s) covered by this VirtualMachineBackupPlan.
volumeStrategy VolumeStrategy Declares the strategy to use for backing-up volumes; for example, use a local snapshot vs. using remote or provisioner-specific backup.

VirtualMachineBackupList

Contains a list of VirtualMachineBackup.

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineBackupList
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items VirtualMachineBackup array

VirtualMachineBackupPlan

The Schema for the VirtualMachineBackupPlans API.

Appears in: - VirtualMachineBackupPlanList

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineBackupPlan
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec VirtualMachineBackupPlanSpec
status VirtualMachineBackupPlanStatus

VirtualMachineBackupPlanList

Contains a list of VirtualMachineBackupPlan.

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineBackupPlanList
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items VirtualMachineBackupPlan array

VirtualMachineBackupPlanSpec

Defines a VirtualMachineBackupPlan which provides instructions for creating an underlying BackupPlan resource and ProtectedApplication to perform backups.

Appears in: - VirtualMachineBackupPlan

Field Description
backupConfig VirtualMachineBackupConfig Defines the configuration and scope of the backup.

VirtualMachineBackupPlanStatus

Defines the observed state of VirtualMachineBackupPlan.

Appears in: - VirtualMachineBackupPlan

Field Description
backupPlan string The name of the underlying backup plan managed by this VirtualMachineBackupPlan.
backupPlanStatus BackupPlanStatus The embedded status of the underlying backup plan.

VirtualMachineBackupPlanTemplate

The VirtualMachineBackupPlanTemplates API schema.

Appears in: - VirtualMachineBackupPlanTemplateList

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineBackupPlanTemplate
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec VirtualMachineBackupPlanTemplateSpec
status VirtualMachineBackupPlanTemplateStatus

VirtualMachineBackupPlanTemplateList

Contains a list of VirtualMachineBackupPlanTemplate.

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineBackupPlanTemplateList
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items VirtualMachineBackupPlanTemplate array

VirtualMachineBackupPlanTemplateSpec

Defines the template that the VirtualMachineBackupPlans use for deriving common parameters.

Appears in: - VirtualMachineBackupPlanTemplate

Field Description
backupRepository string The name of a BackupRepository resource.

VirtualMachineBackupRequest

The Schema for the VirtualMachineBackupRequests API.

Appears in: - VirtualMachineBackupRequestList

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineBackupRequest
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec VirtualMachineBackupRequestSpec
status VirtualMachineBackupRequestStatus

VirtualMachineBackupRequestList

Contains a list of VirtualMachineBackupRequest.

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineBackupRequestList
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items VirtualMachineBackupRequest array

VirtualMachineBackupRequestSpec

Defines the desired state of VirtualMachineBackupRequest.

Appears in: - VirtualMachineBackupRequest

Field Description
virtualMachineBackupPlanTemplate string The name of the VirtualMachineBackupPlanTemplate resource used to generate a VirtualMachineBackupPlan. Re-uses the pre-existing VirtualMachineBackupPlan made from this template, if there is one. The VirtualMachineBackupPlanTemplate must live in the same namespace as this request.
virtualMachine string The VirtualMachine that is being backed up. This is used with the VirtualMachineBackupPlanTemplate to automatically generate a VirtualMachineBackupPlan if one does not exist. Specify only one of either VirtualMachine OR VirtualMachineDisk. When virtualMachine is specified, the backup strategy is always ProvisionerSpecific.
virtualMachineDisk string The VirtualMachineDisk being backed-up. This is used with VirtualMachineBackupPlanTemplate to automatically generate a VirtualMachineBackupPlan if one does not exist. When virtualMachineDisk is specified to be backed-up, the backup strategy is SnapshotOnly. Specify only one of either VirtualMachine OR VirtualMachineDisk.
virtualMachineBackupName string The name of the VirtualMachineBackup to be created. The backup is always created in the same namespace as the request.

VirtualMachineBackupRequestStatus

Defines the observed state of VirtualMachineBackupRequest.

Appears in: - VirtualMachineBackupRequest

Field Description
timeToExpire Time When this ephemeral resource will be deleted.
statusField StatusFields Describes the observed state of the VirtualMachineBackupRequest

VirtualMachineBackupScope

Defines the scope of resources for the VirtualMachineBackupPlan to capture.

Appears in: - VirtualMachineBackupConfig

Field Description
selectedVirtualMachines VirtualMachineResourceConfig array Specifies the VMs for the VirtualMachineBackupPlan to capture.
selectedVirtualMachineDisks VirtualMachineResourceConfig array Specifies the disks for this VirtualMachineBackupPlan to capture.

VirtualMachineBackupSpec

Defines the desired state of VirtualMachineBackup.

Appears in: - VirtualMachineBackup

Field Description
virtualMachineBackupPlan string The name of the VirtualMachineBackupPlan from which this VirtualMachineBackup was created. This VirtualMachineBackupPlan exists in the same namespace as the VirtualMachineBackupPlan.
backupConfig VirtualMachineBackupConfig Defines the configuration and scope of the backup.

VirtualMachineBackupStatus

Defines the observed state of a VirtualMachineBackup.

Appears in: - VirtualMachineBackup

Field Description
backup string The name of the underlying backup which this VirtualMachineBackup references. The backup must be in the same namespace as this VM backup.
backupStatus BackupStatus The status of the underlying backup which this VirtualMachineBackup references.
backedUpVirtualMachines string array Lists the names of all VMs that are included in this backup.
backedUpVirtualMachineDisks string array Lists the names of all the VM disks that are included in this backup. If this backup is a disk snapshot, this is a list of VM disks that you provide. If this is a VM backup, it is the list of the disks which back that VM.

VirtualMachineDeleteBackupRequest

The Schema for the VirtualMachineDeleteBackupRequests API.

Appears in: - VirtualMachineDeleteBackupRequestList

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineDeleteBackupRequest
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec VirtualMachineDeleteBackupRequestSpec
status VirtualMachineDeleteBackupRequestStatus

VirtualMachineDeleteBackupRequestList

Contains a list of VirtualMachineDeleteBackupRequest.

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineDeleteBackupRequestList
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items VirtualMachineDeleteBackupRequest array

VirtualMachineDeleteBackupRequestSpec

Defines the desired state of VirtualMachineDeleteBackupRequest.

Appears in: - VirtualMachineDeleteBackupRequest

Field Description
virtualMachineBackupRef LocalObjectReference The name of the VirtualMachineBackup to delete. This request is always created in the same namespace as the backup.

VirtualMachineDeleteBackupRequestStatus

Defines the observed state of VirtualMachineDeleteBackupRequest.

Appears in: - VirtualMachineDeleteBackupRequest

Field Description
timeToExpire Time Defines the time to delete this ephemeral resource.
statusField StatusFields Describes the observed state of the VirtualMachineDeleteBackupRequest.

VirtualMachineDisk

Schema for the virtualmachinedisks API.

Appears in: - VirtualMachineDiskList

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineDisk
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec VirtualMachineDiskSpec
status VirtualMachineDiskStatus

VirtualMachineDiskList

Contains a list of VirtualMachineDisk.

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineDiskList
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items VirtualMachineDisk array

VirtualMachineDiskSpec

Defines the desired state of VirtualMachineDisk.

Appears in: - VirtualMachineDisk

Field Description
source DiskSource Specifies the source from which the disk contents are populated. If this field is omitted a blank disk gets provisioned.
size Quantity Specifies the size of the disk: 5GiB, 600MiB, and so on. Size must be specified for a blank disk. For disks from other sources, the size depends on the source. For image source, the size is optional and is inferred as being equivalent to Image.spec.minimumDiskSize. If the size is specified it has to be greater than the Image.spec.minimumDiskSize.

VirtualMachineDiskStatus

Defines the observed state of VirtualMachineDisk.

Appears in: - VirtualMachineDisk

Field Description
phase VirtualMachineDiskPhase The current phase of the Disk.
progress VirtualMachineDiskProgress Progress is the current progress of the Disk provision. Value is between 0 and 100 inclusive, N/A if not available.
size Quantity The current size of the disk.
conditions Condition array The latest observations of the VirtualMachineDisk state.
virtualMachineAttachments VirtualMachineAttachment array The list of VirtualMachine instances to which the VirtualMachineDisk is attached.
provisionTime Duration The time taken to provision the VirtualMachineDisk and to reach a Ready state. For example, this is the time spent downloading an image, and so on.
errors VMMError array A list of any errors that occurred during the reconciliation of this resource.

VirtualMachineExternalAccess

Represents the request of accessing the external VRF for a VirtualMachine.

Appears in: - VirtualMachineExternalAccessList

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineExternalAccess
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec VirtualMachineExternalAccessSpec
status VirtualMachineExternalAccessStatus

VirtualMachineExternalAccessList

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineExternalAccessList
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items VirtualMachineExternalAccess array

VirtualMachineExternalAccessSpec

Defines the specification of the VirtualMachineExternalAccess object.

Appears in: - VirtualMachineExternalAccess

Field Description
enabled boolean Specifies whether the external vrf is accessible for the VirtualMachine.
ports ServicePort array The list of ports that are exposed by the VirtualMachine ingress service.

VirtualMachineExternalAccessStatus

Defines the observed state of the VirtualMachineExternalAccess object.

Appears in: - VirtualMachineExternalAccess

Field Description
ingressIP string IngressIP specifies the IP address on the VirtualMachine ingress service.
egressIP string EgressIP specifies the IP address on the egress NAT which is used by the VirtualMachine.
conditions Condition array Details of observed state.
errors VMMError array A list of any errors that occurred during the reconciliation of this resource.

VirtualMachineImage

Represents the disk image that can be used on virtual machine.

Appears in: - VirtualMachineImageList

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineImage
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec VirtualMachineImageSpec
status VirtualMachineImageStatus

VirtualMachineImageImport

Represents the operation to import and convert VM resources that contain data; for example, to import and convert 'VirtualMachineDiskinto aVirtualMachineImage`.

Appears in: - VirtualMachineImageImportList

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineImageImport
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec VirtualMachineImageImportSpec
status VirtualMachineImageImportStatus

VirtualMachineImageImportList

A list of VirtualMachineImageImport objects.

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineImageImportList
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items VirtualMachineImageImport array

VirtualMachineImageImportSpec

Specifies the source and metadata for the image that you want to create.

Appears in: - VirtualMachineImageImport

Field Description
source ImageSourceReference Refers to the resource from which contents are imported. The source must be from the same namespace.
imageMetadata ImageMetadataInput Specifies the properties of the VirtualMachineImage you want to create.
prepareImage boolean Specifies whether to prepare this image for a GDC air-gapped deployment with a value to, for example, install the required packages. If this is not specified, preparation occurs only if the image is from object storage.
prepareOptions ImagePrepareOptions These are the options for image preparation. This is only valid when prepareImage is true.

VirtualMachineImageImportStatus

Provides the image import status.

Appears in: - VirtualMachineImageImport

Field Description
conditions Condition array Provide the Ready status of the import progress.
imageName string Refers to the VirtualMachineImage once successfully created. The image is in the same namespace as the image import.
errors VMMError array A list of any errors that occurred during the reconciliation of this resource.

VirtualMachineImageList

Contains a list of VirtualMachineImage objects.

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineImageList
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items VirtualMachineImage array

VirtualMachineImageSpec

Defines the specification of the virtual machine image.

Appears in: - VirtualMachineImage

Field Description
operatingSystem OperatingSystemSpec The details of the OS.
minimumDiskSize Quantity The minimum size of the disk the image can be applied to. This specifies only the recommended size for the future disks that are created from this image. It does not represent the size of the Image itself.

VirtualMachineImageStatus

Contains the observed state of the VirtualMachineImage object.

Appears in: - VirtualMachineImage

Field Description
conditions Condition array The condition of the virtual machine image.
errors VMMError array A list of any errors that occurred during the reconciliation of this resource.

VirtualMachineList

Contains a list of VirtualMachine objects.

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineList
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items VirtualMachine array

VirtualMachinePasswordResetRequest

Represents a password reset request for a given VM.

Appears in: - VirtualMachinePasswordResetRequestList

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachinePasswordResetRequest
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec VirtualMachinePasswordResetRequestSpec
status VirtualMachinePasswordResetRequestStatus

VirtualMachinePasswordResetRequestList

Contains a list of VirtualMachinePasswordResetRequest resources.

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachinePasswordResetRequestList
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items VirtualMachinePasswordResetRequest array

VirtualMachinePasswordResetRequestSpec

Defines the VirtualMachinePasswordResetRequest specification.

Appears in: - VirtualMachinePasswordResetRequest

Field Description
vmName string The name of the VM to request a password reset. This field is immutable and cannot be updated after creating a password reset request.
user string The name of the user to perform the password reset for a specified VM. This field is immutable and cannot be updated after creating a password reset request.
publicKey string The public key to encrypt the new password for a VM. This field is immutable and cannot be updated after creating a password reset request.

VirtualMachinePasswordResetRequestState

Underlying type: string Defines the state of a VirtualMachinePasswordResetRequest resource.

Appears in: - VirtualMachinePasswordResetRequestStatus

VirtualMachinePasswordResetRequestStatus

Describes the status of the VirtualMachinePasswordResetRequest resource.

Appears in: - VirtualMachinePasswordResetRequest

Field Description
state VirtualMachinePasswordResetRequestState The state of the VirtualMachinePasswordResetRequest resource.
reason string The reason for the current status of the resource.
message string A field that provides additional information for the current status.
processedAt Time A field that specifies the time when the request processed.
encryptedPassword string The new password encrypted using the public key provided in the request and encoded using base64. To decrypt the password, use base64 to decode the string and decrypt the result using RSA decryption.
errors VMMError array A list of any errors that occurred during the reconciliation of this resource.

VirtualMachineProvisionTime

Tracks the VirtualMachine provision time.

Appears in: - VirtualMachineStatus

Field Description
initProvisionTime Duration Time taken for the first VM provision. i.e. Time taken from the object being created till the VM is in running status.
lastProvisionTime Duration Time taken for the most recent VM provision. It can be equal to InitProvisionTime if the VM is only being provisioned once.

VirtualMachineResourceConfig

Specifies a VM resource and additional parameters for backing up that resource.

Appears in: - VirtualMachineBackupScope

Field Description
resourceName string The name of the resource being backed up. It must exist in the same namespace as the plan.

VirtualMachineRestore

The Schema for the VirtualMachineRestores API.

Appears in: - VirtualMachineRestoreList

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineRestore
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec VirtualMachineRestoreSpec
status VirtualMachineRestoreStatus

VirtualMachineRestoreList

Contains a list of VirtualMachineRestore.

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineRestoreList
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items VirtualMachineRestore array

VirtualMachineRestoreRequest

The Schema for the VirtualMachineRestoreRequests API.

Appears in: - VirtualMachineRestoreRequestList

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineRestoreRequest
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec VirtualMachineRestoreRequestSpec
status VirtualMachineRestoreRequestStatus

VirtualMachineRestoreRequestList

Contains a list of VirtualMachineRestoreRequest.

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineRestoreRequestList
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items VirtualMachineRestoreRequest array

VirtualMachineRestoreRequestSpec

Defines the desired state of VirtualMachineRestoreRequest.

Appears in: - VirtualMachineRestoreRequest

Field Description
virtualMachineBackup string The name of the VM backup that to restore. The VirtualMachineBackup resides in the same namespace as does this VirtualMachineRestoreRequest.
restoreName string The name given to the VirtualMachineRestore resource created.
restoredResourceName string The name given to the resource which is restored by VirtualMachineBackup. If the resource is a VM, then the name is that of the restored VM. If the resource is a VM disk, then the name is the that of the restored VM disk.
restoredResourceDescription string The description given to the newly created resource.

VirtualMachineRestoreRequestStatus

Defines the observed state of VirtualMachineRestoreRequest.

Appears in: - VirtualMachineRestoreRequest

Field Description
timeToExpire Time When this ephemeral resource will be deleted.
statusField StatusFields Describes the observed state of the VirtualMachineRestoreRequest.

VirtualMachineRestoreSpec

Defines the desired state of VirtualMachineRestore.

Appears in: - VirtualMachineRestore

Field Description
virtualMachineBackup string The name of the VM backup that this VirtualMachineRestore is restoring. The VirtualMachineBackup is in the same namespace as this VirtualMachineRestore.
targetVirtualMachines string array The list of all VMs. created when the underlying restore is successful.
targetVirtualMachineDisks string array The list of all VM disks. created when the underlying restore is successful.

VirtualMachineRestoreStatus

Defines the observed state of VirtualMachineRestore.

Appears in: - VirtualMachineRestore

Field Description
restore string The name of the underlying restore which this VirtualMachineRestore references. The restore is in the same namespace as this VirtualMachineRestore.
restoreStatus RestoreStatus The status of the underlying restore which this VirtualMachineRestore references.

VirtualMachineSpec

Defines the specification of the Virtual Machine.

Appears in: - VirtualMachine

Field Description
runningState VirtualMachineRunningState Indicates the requested running state of the VirtualMachine. Defaults to Running.
disks DiskAttachment array Specifies the list of disks attached to this vm. There must be exactly one boot disk. Changes to disk attachments require a reboot to take effect.
compute Compute Specifies the CPU and Memory of the VM. CPU and Memory can be defined directly or through the VirtualMachineType. Changes to Compute require a reboot to take effect. Compute is immutable when the VM is in Unknown state.
startupScripts StartupScript array Specifies the list of startup scripts for the VM. Linux VMs must have cloud-init installed for StartupScripts to take effect. The scripts are executed in alphabetical order, based on the name of each startup script. In Windows VMs the type of script impacts the order of execution. Scripts are executed in the order ps1, bat, cmd. If two scripts are of the same type they are executed in alphabetical order, based on the name.
guestEnvironment GuestEnvironment Specifies the VM's guest environment configuration. If the field is nil the enable field in AccessManagement is true by default. Otherwise, the non-nil configuration for each sub-feature inside the structure overrides the default configuration of the sub-feature.
firmware Firmware Specifies the VM initialization options at boot time.
network NetworkSpec Specifies the network configuration.

VirtualMachineStatus

Contains the observed state of the Virtual Machine.

Appears in: - VirtualMachine

Field Description
state VirtualMachineState Observed state of the VM.
reason VirtualMachineStateReason Reason why the VM is in the observed state. Populated if applicable for the observed state.
message string Additional details about the state of the VM.
network NetworkStatus Status of the VM networks.
conditions Condition array Details of observed state.
stateTransitionTime object (keys:VirtualMachineState, values:Time) Last transition time of each state.
provisionTime VirtualMachineProvisionTime Time taken to provision the VM.
errors VMMError array A list of any errors that occurred during the reconciliation of this resource.

VirtualMachineType

Defines the CPU and Memory resource of a VM.

Appears in: - VirtualMachineTypeList

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineType
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec VirtualMachineTypeSpec

VirtualMachineTypeList

VirtualMachineTypeList contains a list of VirtualMachineType.

Field Description
apiVersion string virtualmachine.gdc.goog/v1
kind string VirtualMachineTypeList
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items VirtualMachineType array

VirtualMachineTypeSpec

Defines the configurations of a VirtualMachineType.

Appears in: - VirtualMachineType

Field Description
vcpus integer Specifies the number of VCPUs that are available to the instance. Specify vcpus as an integer that is a multiple of 2, between 2 and 128, inclusive.
memory Quantity Specifies the amount of physical memory available to the instance. memory must have a value that is between 1G and 400G, inclusive.