Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.pulumi.vsphere.inputs.VirtualMachineState Maven / Gradle / Ivy
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.vsphere.inputs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.vsphere.inputs.VirtualMachineCdromArgs;
import com.pulumi.vsphere.inputs.VirtualMachineCloneArgs;
import com.pulumi.vsphere.inputs.VirtualMachineDiskArgs;
import com.pulumi.vsphere.inputs.VirtualMachineNetworkInterfaceArgs;
import com.pulumi.vsphere.inputs.VirtualMachineOvfDeployArgs;
import com.pulumi.vsphere.inputs.VirtualMachineVappArgs;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
public final class VirtualMachineState extends com.pulumi.resources.ResourceArgs {
public static final VirtualMachineState Empty = new VirtualMachineState();
/**
* The guest name for the operating system when guest_id is otherGuest or otherGuest64.
*
*/
@Import(name="alternateGuestName")
private @Nullable Output alternateGuestName;
/**
* @return The guest name for the operating system when guest_id is otherGuest or otherGuest64.
*
*/
public Optional> alternateGuestName() {
return Optional.ofNullable(this.alternateGuestName);
}
/**
* User-provided description of the virtual machine.
*
*/
@Import(name="annotation")
private @Nullable Output annotation;
/**
* @return User-provided description of the virtual machine.
*
*/
public Optional> annotation() {
return Optional.ofNullable(this.annotation);
}
/**
* The number of milliseconds to wait before starting the boot sequence.
*
*/
@Import(name="bootDelay")
private @Nullable Output bootDelay;
/**
* @return The number of milliseconds to wait before starting the boot sequence.
*
*/
public Optional> bootDelay() {
return Optional.ofNullable(this.bootDelay);
}
/**
* The number of milliseconds to wait before retrying the boot sequence. This only valid if boot_retry_enabled is true.
*
*/
@Import(name="bootRetryDelay")
private @Nullable Output bootRetryDelay;
/**
* @return The number of milliseconds to wait before retrying the boot sequence. This only valid if boot_retry_enabled is true.
*
*/
public Optional> bootRetryDelay() {
return Optional.ofNullable(this.bootRetryDelay);
}
/**
* If set to true, a virtual machine that fails to boot will try again after the delay defined in boot_retry_delay.
*
*/
@Import(name="bootRetryEnabled")
private @Nullable Output bootRetryEnabled;
/**
* @return If set to true, a virtual machine that fails to boot will try again after the delay defined in boot_retry_delay.
*
*/
public Optional> bootRetryEnabled() {
return Optional.ofNullable(this.bootRetryEnabled);
}
/**
* A specification for a CDROM device on this virtual machine.
*
*/
@Import(name="cdroms")
private @Nullable Output> cdroms;
/**
* @return A specification for a CDROM device on this virtual machine.
*
*/
public Optional>> cdroms() {
return Optional.ofNullable(this.cdroms);
}
/**
* A unique identifier for a given version of the last configuration was applied.
*
*/
@Import(name="changeVersion")
private @Nullable Output changeVersion;
/**
* @return A unique identifier for a given version of the last configuration was applied.
*
*/
public Optional> changeVersion() {
return Optional.ofNullable(this.changeVersion);
}
/**
* A specification for cloning a virtual machine from template.
*
*/
@Import(name="clone")
private @Nullable Output clone;
/**
* @return A specification for cloning a virtual machine from template.
*
*/
public Optional> clone_() {
return Optional.ofNullable(this.clone);
}
/**
* Allow CPUs to be added to this virtual machine while it is running.
*
*/
@Import(name="cpuHotAddEnabled")
private @Nullable Output cpuHotAddEnabled;
/**
* @return Allow CPUs to be added to this virtual machine while it is running.
*
*/
public Optional> cpuHotAddEnabled() {
return Optional.ofNullable(this.cpuHotAddEnabled);
}
/**
* Allow CPUs to be added to this virtual machine while it is running.
*
*/
@Import(name="cpuHotRemoveEnabled")
private @Nullable Output cpuHotRemoveEnabled;
/**
* @return Allow CPUs to be added to this virtual machine while it is running.
*
*/
public Optional> cpuHotRemoveEnabled() {
return Optional.ofNullable(this.cpuHotRemoveEnabled);
}
/**
* The maximum amount of memory (in MB) or CPU (in MHz) that this virtual machine can consume, regardless of available
* resources.
*
*/
@Import(name="cpuLimit")
private @Nullable Output cpuLimit;
/**
* @return The maximum amount of memory (in MB) or CPU (in MHz) that this virtual machine can consume, regardless of available
* resources.
*
*/
public Optional> cpuLimit() {
return Optional.ofNullable(this.cpuLimit);
}
/**
* Enable CPU performance counters on this virtual machine.
*
*/
@Import(name="cpuPerformanceCountersEnabled")
private @Nullable Output cpuPerformanceCountersEnabled;
/**
* @return Enable CPU performance counters on this virtual machine.
*
*/
public Optional> cpuPerformanceCountersEnabled() {
return Optional.ofNullable(this.cpuPerformanceCountersEnabled);
}
/**
* The amount of memory (in MB) or CPU (in MHz) that this virtual machine is guaranteed.
*
*/
@Import(name="cpuReservation")
private @Nullable Output cpuReservation;
/**
* @return The amount of memory (in MB) or CPU (in MHz) that this virtual machine is guaranteed.
*
*/
public Optional> cpuReservation() {
return Optional.ofNullable(this.cpuReservation);
}
/**
* The amount of shares to allocate to cpu for a custom share level.
*
*/
@Import(name="cpuShareCount")
private @Nullable Output cpuShareCount;
/**
* @return The amount of shares to allocate to cpu for a custom share level.
*
*/
public Optional> cpuShareCount() {
return Optional.ofNullable(this.cpuShareCount);
}
/**
* The allocation level for cpu resources. Can be one of high, low, normal, or custom.
*
*/
@Import(name="cpuShareLevel")
private @Nullable Output cpuShareLevel;
/**
* @return The allocation level for cpu resources. Can be one of high, low, normal, or custom.
*
*/
public Optional> cpuShareLevel() {
return Optional.ofNullable(this.cpuShareLevel);
}
/**
* A list of custom attributes to set on this resource.
*
*/
@Import(name="customAttributes")
private @Nullable Output> customAttributes;
/**
* @return A list of custom attributes to set on this resource.
*
*/
public Optional>> customAttributes() {
return Optional.ofNullable(this.customAttributes);
}
/**
* The ID of the datacenter where the VM is to be created.
*
*/
@Import(name="datacenterId")
private @Nullable Output datacenterId;
/**
* @return The ID of the datacenter where the VM is to be created.
*
*/
public Optional> datacenterId() {
return Optional.ofNullable(this.datacenterId);
}
/**
* The ID of a datastore cluster to put the virtual machine in.
*
*/
@Import(name="datastoreClusterId")
private @Nullable Output datastoreClusterId;
/**
* @return The ID of a datastore cluster to put the virtual machine in.
*
*/
public Optional> datastoreClusterId() {
return Optional.ofNullable(this.datastoreClusterId);
}
/**
* The ID of the virtual machine's datastore. The virtual machine configuration is placed here, along with any virtual
* disks that are created without datastores.
*
*/
@Import(name="datastoreId")
private @Nullable Output datastoreId;
/**
* @return The ID of the virtual machine's datastore. The virtual machine configuration is placed here, along with any virtual
* disks that are created without datastores.
*
*/
public Optional> datastoreId() {
return Optional.ofNullable(this.datastoreId);
}
/**
* The IP address selected by the provider to be used with any provisioners configured on this resource. When possible, this is the first IPv4 address that is reachable through the default gateway configured on the machine, then the first reachable IPv6 address, and then the first general discovered address if neither exists. If VMware Tools is not running on the virtual machine, or if the virtual machine is powered off, this value will be blank.
*
*/
@Import(name="defaultIpAddress")
private @Nullable Output defaultIpAddress;
/**
* @return The IP address selected by the provider to be used with any provisioners configured on this resource. When possible, this is the first IPv4 address that is reachable through the default gateway configured on the machine, then the first reachable IPv6 address, and then the first general discovered address if neither exists. If VMware Tools is not running on the virtual machine, or if the virtual machine is powered off, this value will be blank.
*
*/
public Optional> defaultIpAddress() {
return Optional.ofNullable(this.defaultIpAddress);
}
/**
* A specification for a virtual disk device on this virtual machine.
*
*/
@Import(name="disks")
private @Nullable Output> disks;
/**
* @return A specification for a virtual disk device on this virtual machine.
*
*/
public Optional>> disks() {
return Optional.ofNullable(this.disks);
}
/**
* When the boot type set in firmware is efi, this enables EFI secure boot.
*
*/
@Import(name="efiSecureBootEnabled")
private @Nullable Output efiSecureBootEnabled;
/**
* @return When the boot type set in firmware is efi, this enables EFI secure boot.
*
*/
public Optional> efiSecureBootEnabled() {
return Optional.ofNullable(this.efiSecureBootEnabled);
}
/**
* Expose the UUIDs of attached virtual disks to the virtual machine, allowing access to them in the guest.
*
*/
@Import(name="enableDiskUuid")
private @Nullable Output enableDiskUuid;
/**
* @return Expose the UUIDs of attached virtual disks to the virtual machine, allowing access to them in the guest.
*
*/
public Optional> enableDiskUuid() {
return Optional.ofNullable(this.enableDiskUuid);
}
/**
* Enable logging on this virtual machine.
*
*/
@Import(name="enableLogging")
private @Nullable Output enableLogging;
/**
* @return Enable logging on this virtual machine.
*
*/
public Optional> enableLogging() {
return Optional.ofNullable(this.enableLogging);
}
/**
* The EPT/RVI (hardware memory virtualization) setting for this virtual machine. Can be one of automatic, on, or off.
*
*/
@Import(name="eptRviMode")
private @Nullable Output eptRviMode;
/**
* @return The EPT/RVI (hardware memory virtualization) setting for this virtual machine. Can be one of automatic, on, or off.
*
*/
public Optional> eptRviMode() {
return Optional.ofNullable(this.eptRviMode);
}
/**
* Extra configuration data for this virtual machine. Can be used to supply advanced parameters not normally in
* configuration, such as instance metadata, or configuration data for OVF images.
*
*/
@Import(name="extraConfig")
private @Nullable Output> extraConfig;
/**
* @return Extra configuration data for this virtual machine. Can be used to supply advanced parameters not normally in
* configuration, such as instance metadata, or configuration data for OVF images.
*
*/
public Optional>> extraConfig() {
return Optional.ofNullable(this.extraConfig);
}
/**
* Allow the virtual machine to be rebooted when a change to `extra_config` occurs.
*
*/
@Import(name="extraConfigRebootRequired")
private @Nullable Output extraConfigRebootRequired;
/**
* @return Allow the virtual machine to be rebooted when a change to `extra_config` occurs.
*
*/
public Optional> extraConfigRebootRequired() {
return Optional.ofNullable(this.extraConfigRebootRequired);
}
/**
* The firmware interface to use on the virtual machine. Can be one of bios or efi.
*
*/
@Import(name="firmware")
private @Nullable Output firmware;
/**
* @return The firmware interface to use on the virtual machine. Can be one of bios or efi.
*
*/
public Optional> firmware() {
return Optional.ofNullable(this.firmware);
}
/**
* The name of the folder to locate the virtual machine in.
*
*/
@Import(name="folder")
private @Nullable Output folder;
/**
* @return The name of the folder to locate the virtual machine in.
*
*/
public Optional> folder() {
return Optional.ofNullable(this.folder);
}
/**
* Set to true to force power-off a virtual machine if a graceful guest shutdown failed for a necessary operation.
*
*/
@Import(name="forcePowerOff")
private @Nullable Output forcePowerOff;
/**
* @return Set to true to force power-off a virtual machine if a graceful guest shutdown failed for a necessary operation.
*
*/
public Optional> forcePowerOff() {
return Optional.ofNullable(this.forcePowerOff);
}
/**
* The guest ID for the operating system.
*
*/
@Import(name="guestId")
private @Nullable Output guestId;
/**
* @return The guest ID for the operating system.
*
*/
public Optional> guestId() {
return Optional.ofNullable(this.guestId);
}
/**
* The current list of IP addresses on this machine, including the value of `default_ip_address`. If VMware Tools is not running on the virtual machine, or if the virtul machine is powered off, this list will be empty.
*
*/
@Import(name="guestIpAddresses")
private @Nullable Output> guestIpAddresses;
/**
* @return The current list of IP addresses on this machine, including the value of `default_ip_address`. If VMware Tools is not running on the virtual machine, or if the virtul machine is powered off, this list will be empty.
*
*/
public Optional>> guestIpAddresses() {
return Optional.ofNullable(this.guestIpAddresses);
}
/**
* The hardware version for the virtual machine.
*
*/
@Import(name="hardwareVersion")
private @Nullable Output hardwareVersion;
/**
* @return The hardware version for the virtual machine.
*
*/
public Optional> hardwareVersion() {
return Optional.ofNullable(this.hardwareVersion);
}
/**
* The ID of an optional host system to pin the virtual machine to.
*
*/
@Import(name="hostSystemId")
private @Nullable Output hostSystemId;
/**
* @return The ID of an optional host system to pin the virtual machine to.
*
*/
public Optional> hostSystemId() {
return Optional.ofNullable(this.hostSystemId);
}
/**
* The (non-nested) hardware virtualization setting for this virtual machine. Can be one of hvAuto, hvOn, or hvOff.
*
*/
@Import(name="hvMode")
private @Nullable Output hvMode;
/**
* @return The (non-nested) hardware virtualization setting for this virtual machine. Can be one of hvAuto, hvOn, or hvOff.
*
*/
public Optional> hvMode() {
return Optional.ofNullable(this.hvMode);
}
@Import(name="ideControllerCount")
private @Nullable Output ideControllerCount;
public Optional> ideControllerCount() {
return Optional.ofNullable(this.ideControllerCount);
}
/**
* List of IP addresses and CIDR networks to ignore while waiting for an IP
*
*/
@Import(name="ignoredGuestIps")
private @Nullable Output> ignoredGuestIps;
/**
* @return List of IP addresses and CIDR networks to ignore while waiting for an IP
*
*/
public Optional>> ignoredGuestIps() {
return Optional.ofNullable(this.ignoredGuestIps);
}
/**
* Indicates if the virtual machine resource has been imported, or if the state has been migrated from a previous version of the resource. It influences the behavior of the first post-import apply operation. See the section on importing below.
*
*/
@Import(name="imported")
private @Nullable Output imported;
/**
* @return Indicates if the virtual machine resource has been imported, or if the state has been migrated from a previous version of the resource. It influences the behavior of the first post-import apply operation. See the section on importing below.
*
*/
public Optional> imported() {
return Optional.ofNullable(this.imported);
}
/**
* Controls the scheduling delay of the virtual machine. Use a higher sensitivity for applications that require lower
* latency, such as VOIP, media player applications, or applications that require frequent access to mouse or keyboard
* devices. Can be one of low, normal, medium, or high.
*
*/
@Import(name="latencySensitivity")
private @Nullable Output latencySensitivity;
/**
* @return Controls the scheduling delay of the virtual machine. Use a higher sensitivity for applications that require lower
* latency, such as VOIP, media player applications, or applications that require frequent access to mouse or keyboard
* devices. Can be one of low, normal, medium, or high.
*
*/
public Optional> latencySensitivity() {
return Optional.ofNullable(this.latencySensitivity);
}
/**
* The size of the virtual machine's memory, in MB.
*
*/
@Import(name="memory")
private @Nullable Output memory;
/**
* @return The size of the virtual machine's memory, in MB.
*
*/
public Optional> memory() {
return Optional.ofNullable(this.memory);
}
/**
* Allow memory to be added to this virtual machine while it is running.
*
*/
@Import(name="memoryHotAddEnabled")
private @Nullable Output memoryHotAddEnabled;
/**
* @return Allow memory to be added to this virtual machine while it is running.
*
*/
public Optional> memoryHotAddEnabled() {
return Optional.ofNullable(this.memoryHotAddEnabled);
}
/**
* The maximum amount of memory (in MB) or CPU (in MHz) that this virtual machine can consume, regardless of available
* resources.
*
*/
@Import(name="memoryLimit")
private @Nullable Output memoryLimit;
/**
* @return The maximum amount of memory (in MB) or CPU (in MHz) that this virtual machine can consume, regardless of available
* resources.
*
*/
public Optional> memoryLimit() {
return Optional.ofNullable(this.memoryLimit);
}
/**
* The amount of memory (in MB) or CPU (in MHz) that this virtual machine is guaranteed.
*
*/
@Import(name="memoryReservation")
private @Nullable Output memoryReservation;
/**
* @return The amount of memory (in MB) or CPU (in MHz) that this virtual machine is guaranteed.
*
*/
public Optional> memoryReservation() {
return Optional.ofNullable(this.memoryReservation);
}
/**
* If set true, memory resource reservation for this virtual machine will always be equal to the virtual machine's memory
* size;increases in memory size will be rejected when a corresponding reservation increase is not possible. This feature
* may only be enabled if it is currently possible to reserve all of the virtual machine's memory.
*
*/
@Import(name="memoryReservationLockedToMax")
private @Nullable Output memoryReservationLockedToMax;
/**
* @return If set true, memory resource reservation for this virtual machine will always be equal to the virtual machine's memory
* size;increases in memory size will be rejected when a corresponding reservation increase is not possible. This feature
* may only be enabled if it is currently possible to reserve all of the virtual machine's memory.
*
*/
public Optional> memoryReservationLockedToMax() {
return Optional.ofNullable(this.memoryReservationLockedToMax);
}
/**
* The amount of shares to allocate to memory for a custom share level.
*
*/
@Import(name="memoryShareCount")
private @Nullable Output memoryShareCount;
/**
* @return The amount of shares to allocate to memory for a custom share level.
*
*/
public Optional> memoryShareCount() {
return Optional.ofNullable(this.memoryShareCount);
}
/**
* The allocation level for memory resources. Can be one of high, low, normal, or custom.
*
*/
@Import(name="memoryShareLevel")
private @Nullable Output memoryShareLevel;
/**
* @return The allocation level for memory resources. Can be one of high, low, normal, or custom.
*
*/
public Optional> memoryShareLevel() {
return Optional.ofNullable(this.memoryShareLevel);
}
/**
* The amount of time, in minutes, to wait for a vMotion operation to complete before failing.
*
*/
@Import(name="migrateWaitTimeout")
private @Nullable Output migrateWaitTimeout;
/**
* @return The amount of time, in minutes, to wait for a vMotion operation to complete before failing.
*
*/
public Optional> migrateWaitTimeout() {
return Optional.ofNullable(this.migrateWaitTimeout);
}
/**
* The managed object reference ID of the created virtual machine.
*
*/
@Import(name="moid")
private @Nullable Output moid;
/**
* @return The managed object reference ID of the created virtual machine.
*
*/
public Optional> moid() {
return Optional.ofNullable(this.moid);
}
/**
* The name of this virtual machine.
*
*/
@Import(name="name")
private @Nullable Output name;
/**
* @return The name of this virtual machine.
*
*/
public Optional> name() {
return Optional.ofNullable(this.name);
}
/**
* Enable nested hardware virtualization on this virtual machine, facilitating nested virtualization in the guest.
*
*/
@Import(name="nestedHvEnabled")
private @Nullable Output nestedHvEnabled;
/**
* @return Enable nested hardware virtualization on this virtual machine, facilitating nested virtualization in the guest.
*
*/
public Optional> nestedHvEnabled() {
return Optional.ofNullable(this.nestedHvEnabled);
}
/**
* A specification for a virtual NIC on this virtual machine.
*
*/
@Import(name="networkInterfaces")
private @Nullable Output> networkInterfaces;
/**
* @return A specification for a virtual NIC on this virtual machine.
*
*/
public Optional>> networkInterfaces() {
return Optional.ofNullable(this.networkInterfaces);
}
/**
* The number of cores to distribute amongst the CPUs in this virtual machine. If specified, the value supplied to num_cpus
* must be evenly divisible by this value.
*
*/
@Import(name="numCoresPerSocket")
private @Nullable Output numCoresPerSocket;
/**
* @return The number of cores to distribute amongst the CPUs in this virtual machine. If specified, the value supplied to num_cpus
* must be evenly divisible by this value.
*
*/
public Optional> numCoresPerSocket() {
return Optional.ofNullable(this.numCoresPerSocket);
}
/**
* The number of virtual processors to assign to this virtual machine.
*
*/
@Import(name="numCpus")
private @Nullable Output numCpus;
/**
* @return The number of virtual processors to assign to this virtual machine.
*
*/
public Optional> numCpus() {
return Optional.ofNullable(this.numCpus);
}
/**
* A specification for deploying a virtual machine from ovf/ova template.
*
*/
@Import(name="ovfDeploy")
private @Nullable Output ovfDeploy;
/**
* @return A specification for deploying a virtual machine from ovf/ova template.
*
*/
public Optional> ovfDeploy() {
return Optional.ofNullable(this.ovfDeploy);
}
/**
* A list of PCI passthrough devices
*
*/
@Import(name="pciDeviceIds")
private @Nullable Output> pciDeviceIds;
/**
* @return A list of PCI passthrough devices
*
*/
public Optional>> pciDeviceIds() {
return Optional.ofNullable(this.pciDeviceIds);
}
/**
* A computed value for the current power state of the virtual machine. One of `on`, `off`, or `suspended`.
*
*/
@Import(name="powerState")
private @Nullable Output powerState;
/**
* @return A computed value for the current power state of the virtual machine. One of `on`, `off`, or `suspended`.
*
*/
public Optional> powerState() {
return Optional.ofNullable(this.powerState);
}
/**
* The amount of time, in seconds, that we will be trying to power on a VM
*
*/
@Import(name="poweronTimeout")
private @Nullable Output poweronTimeout;
/**
* @return The amount of time, in seconds, that we will be trying to power on a VM
*
*/
public Optional> poweronTimeout() {
return Optional.ofNullable(this.poweronTimeout);
}
@Import(name="rebootRequired")
private @Nullable Output rebootRequired;
public Optional> rebootRequired() {
return Optional.ofNullable(this.rebootRequired);
}
/**
* Triggers replacement of resource whenever it changes.
*
*/
@Import(name="replaceTrigger")
private @Nullable Output replaceTrigger;
/**
* @return Triggers replacement of resource whenever it changes.
*
*/
public Optional> replaceTrigger() {
return Optional.ofNullable(this.replaceTrigger);
}
/**
* The ID of a resource pool to put the virtual machine in.
*
*/
@Import(name="resourcePoolId")
private @Nullable Output resourcePoolId;
/**
* @return The ID of a resource pool to put the virtual machine in.
*
*/
public Optional> resourcePoolId() {
return Optional.ofNullable(this.resourcePoolId);
}
/**
* Enable the run of scripts after virtual machine power-on when VMware Tools is installed.
*
*/
@Import(name="runToolsScriptsAfterPowerOn")
private @Nullable Output runToolsScriptsAfterPowerOn;
/**
* @return Enable the run of scripts after virtual machine power-on when VMware Tools is installed.
*
*/
public Optional> runToolsScriptsAfterPowerOn() {
return Optional.ofNullable(this.runToolsScriptsAfterPowerOn);
}
/**
* Enable the run of scripts after virtual machine resume when when VMware Tools is installed.
*
*/
@Import(name="runToolsScriptsAfterResume")
private @Nullable Output runToolsScriptsAfterResume;
/**
* @return Enable the run of scripts after virtual machine resume when when VMware Tools is installed.
*
*/
public Optional> runToolsScriptsAfterResume() {
return Optional.ofNullable(this.runToolsScriptsAfterResume);
}
/**
* Enable the run of scripts before guest operating system reboot when VMware Tools is installed.
*
*/
@Import(name="runToolsScriptsBeforeGuestReboot")
private @Nullable Output runToolsScriptsBeforeGuestReboot;
/**
* @return Enable the run of scripts before guest operating system reboot when VMware Tools is installed.
*
*/
public Optional> runToolsScriptsBeforeGuestReboot() {
return Optional.ofNullable(this.runToolsScriptsBeforeGuestReboot);
}
/**
* Enable the run of scripts before guest operating system shutdown when VMware Tools is installed.
*
*/
@Import(name="runToolsScriptsBeforeGuestShutdown")
private @Nullable Output runToolsScriptsBeforeGuestShutdown;
/**
* @return Enable the run of scripts before guest operating system shutdown when VMware Tools is installed.
*
*/
public Optional> runToolsScriptsBeforeGuestShutdown() {
return Optional.ofNullable(this.runToolsScriptsBeforeGuestShutdown);
}
/**
* Enable the run of scripts before guest operating system standby when VMware Tools is installed.
*
*/
@Import(name="runToolsScriptsBeforeGuestStandby")
private @Nullable Output runToolsScriptsBeforeGuestStandby;
/**
* @return Enable the run of scripts before guest operating system standby when VMware Tools is installed.
*
*/
public Optional> runToolsScriptsBeforeGuestStandby() {
return Optional.ofNullable(this.runToolsScriptsBeforeGuestStandby);
}
@Import(name="sataControllerCount")
private @Nullable Output sataControllerCount;
public Optional> sataControllerCount() {
return Optional.ofNullable(this.sataControllerCount);
}
/**
* Mode for sharing the SCSI bus. The modes are physicalSharing, virtualSharing, and noSharing.
*
*/
@Import(name="scsiBusSharing")
private @Nullable Output scsiBusSharing;
/**
* @return Mode for sharing the SCSI bus. The modes are physicalSharing, virtualSharing, and noSharing.
*
*/
public Optional> scsiBusSharing() {
return Optional.ofNullable(this.scsiBusSharing);
}
@Import(name="scsiControllerCount")
private @Nullable Output scsiControllerCount;
public Optional> scsiControllerCount() {
return Optional.ofNullable(this.scsiControllerCount);
}
/**
* The type of SCSI bus this virtual machine will have. Can be one of lsilogic, lsilogic-sas or pvscsi.
*
*/
@Import(name="scsiType")
private @Nullable Output scsiType;
/**
* @return The type of SCSI bus this virtual machine will have. Can be one of lsilogic, lsilogic-sas or pvscsi.
*
*/
public Optional> scsiType() {
return Optional.ofNullable(this.scsiType);
}
/**
* The amount of time, in minutes, to wait for shutdown when making necessary updates to the virtual machine.
*
*/
@Import(name="shutdownWaitTimeout")
private @Nullable Output shutdownWaitTimeout;
/**
* @return The amount of time, in minutes, to wait for shutdown when making necessary updates to the virtual machine.
*
*/
public Optional> shutdownWaitTimeout() {
return Optional.ofNullable(this.shutdownWaitTimeout);
}
/**
* The ID of the storage policy to assign to the virtual machine home directory.
*
*/
@Import(name="storagePolicyId")
private @Nullable Output storagePolicyId;
/**
* @return The ID of the storage policy to assign to the virtual machine home directory.
*
*/
public Optional> storagePolicyId() {
return Optional.ofNullable(this.storagePolicyId);
}
/**
* The swap file placement policy for this virtual machine. Can be one of inherit, hostLocal, or vmDirectory.
*
*/
@Import(name="swapPlacementPolicy")
private @Nullable Output swapPlacementPolicy;
/**
* @return The swap file placement policy for this virtual machine. Can be one of inherit, hostLocal, or vmDirectory.
*
*/
public Optional> swapPlacementPolicy() {
return Optional.ofNullable(this.swapPlacementPolicy);
}
/**
* Enable guest clock synchronization with the host. On vSphere 7.0 U1 and above, with only this setting the clock is
* synchronized on startup and resume. Requires VMware Tools to be installed.
*
*/
@Import(name="syncTimeWithHost")
private @Nullable Output syncTimeWithHost;
/**
* @return Enable guest clock synchronization with the host. On vSphere 7.0 U1 and above, with only this setting the clock is
* synchronized on startup and resume. Requires VMware Tools to be installed.
*
*/
public Optional> syncTimeWithHost() {
return Optional.ofNullable(this.syncTimeWithHost);
}
/**
* Enable periodic clock synchronization with the host. Supported only on vSphere 7.0 U1 and above. On prior versions
* setting `sync_time_with_host` is enough for periodic synchronization. Requires VMware Tools to be installed.
*
*/
@Import(name="syncTimeWithHostPeriodically")
private @Nullable Output syncTimeWithHostPeriodically;
/**
* @return Enable periodic clock synchronization with the host. Supported only on vSphere 7.0 U1 and above. On prior versions
* setting `sync_time_with_host` is enough for periodic synchronization. Requires VMware Tools to be installed.
*
*/
public Optional> syncTimeWithHostPeriodically() {
return Optional.ofNullable(this.syncTimeWithHostPeriodically);
}
/**
* A list of tag IDs to apply to this object.
*
*/
@Import(name="tags")
private @Nullable Output> tags;
/**
* @return A list of tag IDs to apply to this object.
*
*/
public Optional>> tags() {
return Optional.ofNullable(this.tags);
}
/**
* Set the upgrade policy for VMware Tools. Can be one of `manual` or `upgradeAtPowerCycle`.
*
*/
@Import(name="toolsUpgradePolicy")
private @Nullable Output toolsUpgradePolicy;
/**
* @return Set the upgrade policy for VMware Tools. Can be one of `manual` or `upgradeAtPowerCycle`.
*
*/
public Optional> toolsUpgradePolicy() {
return Optional.ofNullable(this.toolsUpgradePolicy);
}
/**
* The UUID of the virtual machine. Also exposed as the `id` of the resource.
*
*/
@Import(name="uuid")
private @Nullable Output uuid;
/**
* @return The UUID of the virtual machine. Also exposed as the `id` of the resource.
*
*/
public Optional> uuid() {
return Optional.ofNullable(this.uuid);
}
/**
* vApp configuration data for this virtual machine. Can be used to provide configuration data for OVF images.
*
*/
@Import(name="vapp")
private @Nullable Output vapp;
/**
* @return vApp configuration data for this virtual machine. Can be used to provide configuration data for OVF images.
*
*/
public Optional> vapp() {
return Optional.ofNullable(this.vapp);
}
/**
* Computed value which is only valid for cloned virtual machines. A list of vApp transport methods supported by the source virtual machine or template.
*
*/
@Import(name="vappTransports")
private @Nullable Output> vappTransports;
/**
* @return Computed value which is only valid for cloned virtual machines. A list of vApp transport methods supported by the source virtual machine or template.
*
*/
public Optional>> vappTransports() {
return Optional.ofNullable(this.vappTransports);
}
/**
* Flag to specify if Virtualization-based security is enabled for this virtual machine.
*
*/
@Import(name="vbsEnabled")
private @Nullable Output vbsEnabled;
/**
* @return Flag to specify if Virtualization-based security is enabled for this virtual machine.
*
*/
public Optional> vbsEnabled() {
return Optional.ofNullable(this.vbsEnabled);
}
/**
* The state of VMware Tools in the guest. This will determine the proper course of action for some device operations.
*
*/
@Import(name="vmwareToolsStatus")
private @Nullable Output vmwareToolsStatus;
/**
* @return The state of VMware Tools in the guest. This will determine the proper course of action for some device operations.
*
*/
public Optional> vmwareToolsStatus() {
return Optional.ofNullable(this.vmwareToolsStatus);
}
/**
* The path of the virtual machine configuration file on the datastore in which the virtual machine is placed.
*
*/
@Import(name="vmxPath")
private @Nullable Output vmxPath;
/**
* @return The path of the virtual machine configuration file on the datastore in which the virtual machine is placed.
*
*/
public Optional> vmxPath() {
return Optional.ofNullable(this.vmxPath);
}
/**
* Flag to specify if I/O MMU virtualization, also called Intel Virtualization Technology for Directed I/O (VT-d) and AMD
* I/O Virtualization (AMD-Vi or IOMMU), is enabled.
*
*/
@Import(name="vvtdEnabled")
private @Nullable Output vvtdEnabled;
/**
* @return Flag to specify if I/O MMU virtualization, also called Intel Virtualization Technology for Directed I/O (VT-d) and AMD
* I/O Virtualization (AMD-Vi or IOMMU), is enabled.
*
*/
public Optional> vvtdEnabled() {
return Optional.ofNullable(this.vvtdEnabled);
}
/**
* The amount of time, in minutes, to wait for an available IP address on this virtual machine. A value less than 1
* disables the waiter.
*
*/
@Import(name="waitForGuestIpTimeout")
private @Nullable Output waitForGuestIpTimeout;
/**
* @return The amount of time, in minutes, to wait for an available IP address on this virtual machine. A value less than 1
* disables the waiter.
*
*/
public Optional> waitForGuestIpTimeout() {
return Optional.ofNullable(this.waitForGuestIpTimeout);
}
/**
* Controls whether or not the guest network waiter waits for a routable address. When false, the waiter does not wait for
* a default gateway, nor are IP addresses checked against any discovered default gateways as part of its success criteria.
*
*/
@Import(name="waitForGuestNetRoutable")
private @Nullable Output waitForGuestNetRoutable;
/**
* @return Controls whether or not the guest network waiter waits for a routable address. When false, the waiter does not wait for
* a default gateway, nor are IP addresses checked against any discovered default gateways as part of its success criteria.
*
*/
public Optional> waitForGuestNetRoutable() {
return Optional.ofNullable(this.waitForGuestNetRoutable);
}
/**
* The amount of time, in minutes, to wait for an available IP address on this virtual machine. A value less than 1
* disables the waiter.
*
*/
@Import(name="waitForGuestNetTimeout")
private @Nullable Output waitForGuestNetTimeout;
/**
* @return The amount of time, in minutes, to wait for an available IP address on this virtual machine. A value less than 1
* disables the waiter.
*
*/
public Optional> waitForGuestNetTimeout() {
return Optional.ofNullable(this.waitForGuestNetTimeout);
}
private VirtualMachineState() {}
private VirtualMachineState(VirtualMachineState $) {
this.alternateGuestName = $.alternateGuestName;
this.annotation = $.annotation;
this.bootDelay = $.bootDelay;
this.bootRetryDelay = $.bootRetryDelay;
this.bootRetryEnabled = $.bootRetryEnabled;
this.cdroms = $.cdroms;
this.changeVersion = $.changeVersion;
this.clone = $.clone;
this.cpuHotAddEnabled = $.cpuHotAddEnabled;
this.cpuHotRemoveEnabled = $.cpuHotRemoveEnabled;
this.cpuLimit = $.cpuLimit;
this.cpuPerformanceCountersEnabled = $.cpuPerformanceCountersEnabled;
this.cpuReservation = $.cpuReservation;
this.cpuShareCount = $.cpuShareCount;
this.cpuShareLevel = $.cpuShareLevel;
this.customAttributes = $.customAttributes;
this.datacenterId = $.datacenterId;
this.datastoreClusterId = $.datastoreClusterId;
this.datastoreId = $.datastoreId;
this.defaultIpAddress = $.defaultIpAddress;
this.disks = $.disks;
this.efiSecureBootEnabled = $.efiSecureBootEnabled;
this.enableDiskUuid = $.enableDiskUuid;
this.enableLogging = $.enableLogging;
this.eptRviMode = $.eptRviMode;
this.extraConfig = $.extraConfig;
this.extraConfigRebootRequired = $.extraConfigRebootRequired;
this.firmware = $.firmware;
this.folder = $.folder;
this.forcePowerOff = $.forcePowerOff;
this.guestId = $.guestId;
this.guestIpAddresses = $.guestIpAddresses;
this.hardwareVersion = $.hardwareVersion;
this.hostSystemId = $.hostSystemId;
this.hvMode = $.hvMode;
this.ideControllerCount = $.ideControllerCount;
this.ignoredGuestIps = $.ignoredGuestIps;
this.imported = $.imported;
this.latencySensitivity = $.latencySensitivity;
this.memory = $.memory;
this.memoryHotAddEnabled = $.memoryHotAddEnabled;
this.memoryLimit = $.memoryLimit;
this.memoryReservation = $.memoryReservation;
this.memoryReservationLockedToMax = $.memoryReservationLockedToMax;
this.memoryShareCount = $.memoryShareCount;
this.memoryShareLevel = $.memoryShareLevel;
this.migrateWaitTimeout = $.migrateWaitTimeout;
this.moid = $.moid;
this.name = $.name;
this.nestedHvEnabled = $.nestedHvEnabled;
this.networkInterfaces = $.networkInterfaces;
this.numCoresPerSocket = $.numCoresPerSocket;
this.numCpus = $.numCpus;
this.ovfDeploy = $.ovfDeploy;
this.pciDeviceIds = $.pciDeviceIds;
this.powerState = $.powerState;
this.poweronTimeout = $.poweronTimeout;
this.rebootRequired = $.rebootRequired;
this.replaceTrigger = $.replaceTrigger;
this.resourcePoolId = $.resourcePoolId;
this.runToolsScriptsAfterPowerOn = $.runToolsScriptsAfterPowerOn;
this.runToolsScriptsAfterResume = $.runToolsScriptsAfterResume;
this.runToolsScriptsBeforeGuestReboot = $.runToolsScriptsBeforeGuestReboot;
this.runToolsScriptsBeforeGuestShutdown = $.runToolsScriptsBeforeGuestShutdown;
this.runToolsScriptsBeforeGuestStandby = $.runToolsScriptsBeforeGuestStandby;
this.sataControllerCount = $.sataControllerCount;
this.scsiBusSharing = $.scsiBusSharing;
this.scsiControllerCount = $.scsiControllerCount;
this.scsiType = $.scsiType;
this.shutdownWaitTimeout = $.shutdownWaitTimeout;
this.storagePolicyId = $.storagePolicyId;
this.swapPlacementPolicy = $.swapPlacementPolicy;
this.syncTimeWithHost = $.syncTimeWithHost;
this.syncTimeWithHostPeriodically = $.syncTimeWithHostPeriodically;
this.tags = $.tags;
this.toolsUpgradePolicy = $.toolsUpgradePolicy;
this.uuid = $.uuid;
this.vapp = $.vapp;
this.vappTransports = $.vappTransports;
this.vbsEnabled = $.vbsEnabled;
this.vmwareToolsStatus = $.vmwareToolsStatus;
this.vmxPath = $.vmxPath;
this.vvtdEnabled = $.vvtdEnabled;
this.waitForGuestIpTimeout = $.waitForGuestIpTimeout;
this.waitForGuestNetRoutable = $.waitForGuestNetRoutable;
this.waitForGuestNetTimeout = $.waitForGuestNetTimeout;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(VirtualMachineState defaults) {
return new Builder(defaults);
}
public static final class Builder {
private VirtualMachineState $;
public Builder() {
$ = new VirtualMachineState();
}
public Builder(VirtualMachineState defaults) {
$ = new VirtualMachineState(Objects.requireNonNull(defaults));
}
/**
* @param alternateGuestName The guest name for the operating system when guest_id is otherGuest or otherGuest64.
*
* @return builder
*
*/
public Builder alternateGuestName(@Nullable Output alternateGuestName) {
$.alternateGuestName = alternateGuestName;
return this;
}
/**
* @param alternateGuestName The guest name for the operating system when guest_id is otherGuest or otherGuest64.
*
* @return builder
*
*/
public Builder alternateGuestName(String alternateGuestName) {
return alternateGuestName(Output.of(alternateGuestName));
}
/**
* @param annotation User-provided description of the virtual machine.
*
* @return builder
*
*/
public Builder annotation(@Nullable Output annotation) {
$.annotation = annotation;
return this;
}
/**
* @param annotation User-provided description of the virtual machine.
*
* @return builder
*
*/
public Builder annotation(String annotation) {
return annotation(Output.of(annotation));
}
/**
* @param bootDelay The number of milliseconds to wait before starting the boot sequence.
*
* @return builder
*
*/
public Builder bootDelay(@Nullable Output bootDelay) {
$.bootDelay = bootDelay;
return this;
}
/**
* @param bootDelay The number of milliseconds to wait before starting the boot sequence.
*
* @return builder
*
*/
public Builder bootDelay(Integer bootDelay) {
return bootDelay(Output.of(bootDelay));
}
/**
* @param bootRetryDelay The number of milliseconds to wait before retrying the boot sequence. This only valid if boot_retry_enabled is true.
*
* @return builder
*
*/
public Builder bootRetryDelay(@Nullable Output bootRetryDelay) {
$.bootRetryDelay = bootRetryDelay;
return this;
}
/**
* @param bootRetryDelay The number of milliseconds to wait before retrying the boot sequence. This only valid if boot_retry_enabled is true.
*
* @return builder
*
*/
public Builder bootRetryDelay(Integer bootRetryDelay) {
return bootRetryDelay(Output.of(bootRetryDelay));
}
/**
* @param bootRetryEnabled If set to true, a virtual machine that fails to boot will try again after the delay defined in boot_retry_delay.
*
* @return builder
*
*/
public Builder bootRetryEnabled(@Nullable Output bootRetryEnabled) {
$.bootRetryEnabled = bootRetryEnabled;
return this;
}
/**
* @param bootRetryEnabled If set to true, a virtual machine that fails to boot will try again after the delay defined in boot_retry_delay.
*
* @return builder
*
*/
public Builder bootRetryEnabled(Boolean bootRetryEnabled) {
return bootRetryEnabled(Output.of(bootRetryEnabled));
}
/**
* @param cdroms A specification for a CDROM device on this virtual machine.
*
* @return builder
*
*/
public Builder cdroms(@Nullable Output> cdroms) {
$.cdroms = cdroms;
return this;
}
/**
* @param cdroms A specification for a CDROM device on this virtual machine.
*
* @return builder
*
*/
public Builder cdroms(List cdroms) {
return cdroms(Output.of(cdroms));
}
/**
* @param cdroms A specification for a CDROM device on this virtual machine.
*
* @return builder
*
*/
public Builder cdroms(VirtualMachineCdromArgs... cdroms) {
return cdroms(List.of(cdroms));
}
/**
* @param changeVersion A unique identifier for a given version of the last configuration was applied.
*
* @return builder
*
*/
public Builder changeVersion(@Nullable Output changeVersion) {
$.changeVersion = changeVersion;
return this;
}
/**
* @param changeVersion A unique identifier for a given version of the last configuration was applied.
*
* @return builder
*
*/
public Builder changeVersion(String changeVersion) {
return changeVersion(Output.of(changeVersion));
}
/**
* @param clone A specification for cloning a virtual machine from template.
*
* @return builder
*
*/
public Builder clone_(@Nullable Output clone) {
$.clone = clone;
return this;
}
/**
* @param clone A specification for cloning a virtual machine from template.
*
* @return builder
*
*/
public Builder clone_(VirtualMachineCloneArgs clone) {
return clone_(Output.of(clone));
}
/**
* @param cpuHotAddEnabled Allow CPUs to be added to this virtual machine while it is running.
*
* @return builder
*
*/
public Builder cpuHotAddEnabled(@Nullable Output cpuHotAddEnabled) {
$.cpuHotAddEnabled = cpuHotAddEnabled;
return this;
}
/**
* @param cpuHotAddEnabled Allow CPUs to be added to this virtual machine while it is running.
*
* @return builder
*
*/
public Builder cpuHotAddEnabled(Boolean cpuHotAddEnabled) {
return cpuHotAddEnabled(Output.of(cpuHotAddEnabled));
}
/**
* @param cpuHotRemoveEnabled Allow CPUs to be added to this virtual machine while it is running.
*
* @return builder
*
*/
public Builder cpuHotRemoveEnabled(@Nullable Output cpuHotRemoveEnabled) {
$.cpuHotRemoveEnabled = cpuHotRemoveEnabled;
return this;
}
/**
* @param cpuHotRemoveEnabled Allow CPUs to be added to this virtual machine while it is running.
*
* @return builder
*
*/
public Builder cpuHotRemoveEnabled(Boolean cpuHotRemoveEnabled) {
return cpuHotRemoveEnabled(Output.of(cpuHotRemoveEnabled));
}
/**
* @param cpuLimit The maximum amount of memory (in MB) or CPU (in MHz) that this virtual machine can consume, regardless of available
* resources.
*
* @return builder
*
*/
public Builder cpuLimit(@Nullable Output cpuLimit) {
$.cpuLimit = cpuLimit;
return this;
}
/**
* @param cpuLimit The maximum amount of memory (in MB) or CPU (in MHz) that this virtual machine can consume, regardless of available
* resources.
*
* @return builder
*
*/
public Builder cpuLimit(Integer cpuLimit) {
return cpuLimit(Output.of(cpuLimit));
}
/**
* @param cpuPerformanceCountersEnabled Enable CPU performance counters on this virtual machine.
*
* @return builder
*
*/
public Builder cpuPerformanceCountersEnabled(@Nullable Output cpuPerformanceCountersEnabled) {
$.cpuPerformanceCountersEnabled = cpuPerformanceCountersEnabled;
return this;
}
/**
* @param cpuPerformanceCountersEnabled Enable CPU performance counters on this virtual machine.
*
* @return builder
*
*/
public Builder cpuPerformanceCountersEnabled(Boolean cpuPerformanceCountersEnabled) {
return cpuPerformanceCountersEnabled(Output.of(cpuPerformanceCountersEnabled));
}
/**
* @param cpuReservation The amount of memory (in MB) or CPU (in MHz) that this virtual machine is guaranteed.
*
* @return builder
*
*/
public Builder cpuReservation(@Nullable Output cpuReservation) {
$.cpuReservation = cpuReservation;
return this;
}
/**
* @param cpuReservation The amount of memory (in MB) or CPU (in MHz) that this virtual machine is guaranteed.
*
* @return builder
*
*/
public Builder cpuReservation(Integer cpuReservation) {
return cpuReservation(Output.of(cpuReservation));
}
/**
* @param cpuShareCount The amount of shares to allocate to cpu for a custom share level.
*
* @return builder
*
*/
public Builder cpuShareCount(@Nullable Output cpuShareCount) {
$.cpuShareCount = cpuShareCount;
return this;
}
/**
* @param cpuShareCount The amount of shares to allocate to cpu for a custom share level.
*
* @return builder
*
*/
public Builder cpuShareCount(Integer cpuShareCount) {
return cpuShareCount(Output.of(cpuShareCount));
}
/**
* @param cpuShareLevel The allocation level for cpu resources. Can be one of high, low, normal, or custom.
*
* @return builder
*
*/
public Builder cpuShareLevel(@Nullable Output cpuShareLevel) {
$.cpuShareLevel = cpuShareLevel;
return this;
}
/**
* @param cpuShareLevel The allocation level for cpu resources. Can be one of high, low, normal, or custom.
*
* @return builder
*
*/
public Builder cpuShareLevel(String cpuShareLevel) {
return cpuShareLevel(Output.of(cpuShareLevel));
}
/**
* @param customAttributes A list of custom attributes to set on this resource.
*
* @return builder
*
*/
public Builder customAttributes(@Nullable Output> customAttributes) {
$.customAttributes = customAttributes;
return this;
}
/**
* @param customAttributes A list of custom attributes to set on this resource.
*
* @return builder
*
*/
public Builder customAttributes(Map customAttributes) {
return customAttributes(Output.of(customAttributes));
}
/**
* @param datacenterId The ID of the datacenter where the VM is to be created.
*
* @return builder
*
*/
public Builder datacenterId(@Nullable Output datacenterId) {
$.datacenterId = datacenterId;
return this;
}
/**
* @param datacenterId The ID of the datacenter where the VM is to be created.
*
* @return builder
*
*/
public Builder datacenterId(String datacenterId) {
return datacenterId(Output.of(datacenterId));
}
/**
* @param datastoreClusterId The ID of a datastore cluster to put the virtual machine in.
*
* @return builder
*
*/
public Builder datastoreClusterId(@Nullable Output datastoreClusterId) {
$.datastoreClusterId = datastoreClusterId;
return this;
}
/**
* @param datastoreClusterId The ID of a datastore cluster to put the virtual machine in.
*
* @return builder
*
*/
public Builder datastoreClusterId(String datastoreClusterId) {
return datastoreClusterId(Output.of(datastoreClusterId));
}
/**
* @param datastoreId The ID of the virtual machine's datastore. The virtual machine configuration is placed here, along with any virtual
* disks that are created without datastores.
*
* @return builder
*
*/
public Builder datastoreId(@Nullable Output datastoreId) {
$.datastoreId = datastoreId;
return this;
}
/**
* @param datastoreId The ID of the virtual machine's datastore. The virtual machine configuration is placed here, along with any virtual
* disks that are created without datastores.
*
* @return builder
*
*/
public Builder datastoreId(String datastoreId) {
return datastoreId(Output.of(datastoreId));
}
/**
* @param defaultIpAddress The IP address selected by the provider to be used with any provisioners configured on this resource. When possible, this is the first IPv4 address that is reachable through the default gateway configured on the machine, then the first reachable IPv6 address, and then the first general discovered address if neither exists. If VMware Tools is not running on the virtual machine, or if the virtual machine is powered off, this value will be blank.
*
* @return builder
*
*/
public Builder defaultIpAddress(@Nullable Output defaultIpAddress) {
$.defaultIpAddress = defaultIpAddress;
return this;
}
/**
* @param defaultIpAddress The IP address selected by the provider to be used with any provisioners configured on this resource. When possible, this is the first IPv4 address that is reachable through the default gateway configured on the machine, then the first reachable IPv6 address, and then the first general discovered address if neither exists. If VMware Tools is not running on the virtual machine, or if the virtual machine is powered off, this value will be blank.
*
* @return builder
*
*/
public Builder defaultIpAddress(String defaultIpAddress) {
return defaultIpAddress(Output.of(defaultIpAddress));
}
/**
* @param disks A specification for a virtual disk device on this virtual machine.
*
* @return builder
*
*/
public Builder disks(@Nullable Output> disks) {
$.disks = disks;
return this;
}
/**
* @param disks A specification for a virtual disk device on this virtual machine.
*
* @return builder
*
*/
public Builder disks(List disks) {
return disks(Output.of(disks));
}
/**
* @param disks A specification for a virtual disk device on this virtual machine.
*
* @return builder
*
*/
public Builder disks(VirtualMachineDiskArgs... disks) {
return disks(List.of(disks));
}
/**
* @param efiSecureBootEnabled When the boot type set in firmware is efi, this enables EFI secure boot.
*
* @return builder
*
*/
public Builder efiSecureBootEnabled(@Nullable Output efiSecureBootEnabled) {
$.efiSecureBootEnabled = efiSecureBootEnabled;
return this;
}
/**
* @param efiSecureBootEnabled When the boot type set in firmware is efi, this enables EFI secure boot.
*
* @return builder
*
*/
public Builder efiSecureBootEnabled(Boolean efiSecureBootEnabled) {
return efiSecureBootEnabled(Output.of(efiSecureBootEnabled));
}
/**
* @param enableDiskUuid Expose the UUIDs of attached virtual disks to the virtual machine, allowing access to them in the guest.
*
* @return builder
*
*/
public Builder enableDiskUuid(@Nullable Output enableDiskUuid) {
$.enableDiskUuid = enableDiskUuid;
return this;
}
/**
* @param enableDiskUuid Expose the UUIDs of attached virtual disks to the virtual machine, allowing access to them in the guest.
*
* @return builder
*
*/
public Builder enableDiskUuid(Boolean enableDiskUuid) {
return enableDiskUuid(Output.of(enableDiskUuid));
}
/**
* @param enableLogging Enable logging on this virtual machine.
*
* @return builder
*
*/
public Builder enableLogging(@Nullable Output enableLogging) {
$.enableLogging = enableLogging;
return this;
}
/**
* @param enableLogging Enable logging on this virtual machine.
*
* @return builder
*
*/
public Builder enableLogging(Boolean enableLogging) {
return enableLogging(Output.of(enableLogging));
}
/**
* @param eptRviMode The EPT/RVI (hardware memory virtualization) setting for this virtual machine. Can be one of automatic, on, or off.
*
* @return builder
*
*/
public Builder eptRviMode(@Nullable Output eptRviMode) {
$.eptRviMode = eptRviMode;
return this;
}
/**
* @param eptRviMode The EPT/RVI (hardware memory virtualization) setting for this virtual machine. Can be one of automatic, on, or off.
*
* @return builder
*
*/
public Builder eptRviMode(String eptRviMode) {
return eptRviMode(Output.of(eptRviMode));
}
/**
* @param extraConfig Extra configuration data for this virtual machine. Can be used to supply advanced parameters not normally in
* configuration, such as instance metadata, or configuration data for OVF images.
*
* @return builder
*
*/
public Builder extraConfig(@Nullable Output> extraConfig) {
$.extraConfig = extraConfig;
return this;
}
/**
* @param extraConfig Extra configuration data for this virtual machine. Can be used to supply advanced parameters not normally in
* configuration, such as instance metadata, or configuration data for OVF images.
*
* @return builder
*
*/
public Builder extraConfig(Map extraConfig) {
return extraConfig(Output.of(extraConfig));
}
/**
* @param extraConfigRebootRequired Allow the virtual machine to be rebooted when a change to `extra_config` occurs.
*
* @return builder
*
*/
public Builder extraConfigRebootRequired(@Nullable Output extraConfigRebootRequired) {
$.extraConfigRebootRequired = extraConfigRebootRequired;
return this;
}
/**
* @param extraConfigRebootRequired Allow the virtual machine to be rebooted when a change to `extra_config` occurs.
*
* @return builder
*
*/
public Builder extraConfigRebootRequired(Boolean extraConfigRebootRequired) {
return extraConfigRebootRequired(Output.of(extraConfigRebootRequired));
}
/**
* @param firmware The firmware interface to use on the virtual machine. Can be one of bios or efi.
*
* @return builder
*
*/
public Builder firmware(@Nullable Output firmware) {
$.firmware = firmware;
return this;
}
/**
* @param firmware The firmware interface to use on the virtual machine. Can be one of bios or efi.
*
* @return builder
*
*/
public Builder firmware(String firmware) {
return firmware(Output.of(firmware));
}
/**
* @param folder The name of the folder to locate the virtual machine in.
*
* @return builder
*
*/
public Builder folder(@Nullable Output folder) {
$.folder = folder;
return this;
}
/**
* @param folder The name of the folder to locate the virtual machine in.
*
* @return builder
*
*/
public Builder folder(String folder) {
return folder(Output.of(folder));
}
/**
* @param forcePowerOff Set to true to force power-off a virtual machine if a graceful guest shutdown failed for a necessary operation.
*
* @return builder
*
*/
public Builder forcePowerOff(@Nullable Output forcePowerOff) {
$.forcePowerOff = forcePowerOff;
return this;
}
/**
* @param forcePowerOff Set to true to force power-off a virtual machine if a graceful guest shutdown failed for a necessary operation.
*
* @return builder
*
*/
public Builder forcePowerOff(Boolean forcePowerOff) {
return forcePowerOff(Output.of(forcePowerOff));
}
/**
* @param guestId The guest ID for the operating system.
*
* @return builder
*
*/
public Builder guestId(@Nullable Output guestId) {
$.guestId = guestId;
return this;
}
/**
* @param guestId The guest ID for the operating system.
*
* @return builder
*
*/
public Builder guestId(String guestId) {
return guestId(Output.of(guestId));
}
/**
* @param guestIpAddresses The current list of IP addresses on this machine, including the value of `default_ip_address`. If VMware Tools is not running on the virtual machine, or if the virtul machine is powered off, this list will be empty.
*
* @return builder
*
*/
public Builder guestIpAddresses(@Nullable Output> guestIpAddresses) {
$.guestIpAddresses = guestIpAddresses;
return this;
}
/**
* @param guestIpAddresses The current list of IP addresses on this machine, including the value of `default_ip_address`. If VMware Tools is not running on the virtual machine, or if the virtul machine is powered off, this list will be empty.
*
* @return builder
*
*/
public Builder guestIpAddresses(List guestIpAddresses) {
return guestIpAddresses(Output.of(guestIpAddresses));
}
/**
* @param guestIpAddresses The current list of IP addresses on this machine, including the value of `default_ip_address`. If VMware Tools is not running on the virtual machine, or if the virtul machine is powered off, this list will be empty.
*
* @return builder
*
*/
public Builder guestIpAddresses(String... guestIpAddresses) {
return guestIpAddresses(List.of(guestIpAddresses));
}
/**
* @param hardwareVersion The hardware version for the virtual machine.
*
* @return builder
*
*/
public Builder hardwareVersion(@Nullable Output hardwareVersion) {
$.hardwareVersion = hardwareVersion;
return this;
}
/**
* @param hardwareVersion The hardware version for the virtual machine.
*
* @return builder
*
*/
public Builder hardwareVersion(Integer hardwareVersion) {
return hardwareVersion(Output.of(hardwareVersion));
}
/**
* @param hostSystemId The ID of an optional host system to pin the virtual machine to.
*
* @return builder
*
*/
public Builder hostSystemId(@Nullable Output hostSystemId) {
$.hostSystemId = hostSystemId;
return this;
}
/**
* @param hostSystemId The ID of an optional host system to pin the virtual machine to.
*
* @return builder
*
*/
public Builder hostSystemId(String hostSystemId) {
return hostSystemId(Output.of(hostSystemId));
}
/**
* @param hvMode The (non-nested) hardware virtualization setting for this virtual machine. Can be one of hvAuto, hvOn, or hvOff.
*
* @return builder
*
*/
public Builder hvMode(@Nullable Output hvMode) {
$.hvMode = hvMode;
return this;
}
/**
* @param hvMode The (non-nested) hardware virtualization setting for this virtual machine. Can be one of hvAuto, hvOn, or hvOff.
*
* @return builder
*
*/
public Builder hvMode(String hvMode) {
return hvMode(Output.of(hvMode));
}
public Builder ideControllerCount(@Nullable Output ideControllerCount) {
$.ideControllerCount = ideControllerCount;
return this;
}
public Builder ideControllerCount(Integer ideControllerCount) {
return ideControllerCount(Output.of(ideControllerCount));
}
/**
* @param ignoredGuestIps List of IP addresses and CIDR networks to ignore while waiting for an IP
*
* @return builder
*
*/
public Builder ignoredGuestIps(@Nullable Output> ignoredGuestIps) {
$.ignoredGuestIps = ignoredGuestIps;
return this;
}
/**
* @param ignoredGuestIps List of IP addresses and CIDR networks to ignore while waiting for an IP
*
* @return builder
*
*/
public Builder ignoredGuestIps(List ignoredGuestIps) {
return ignoredGuestIps(Output.of(ignoredGuestIps));
}
/**
* @param ignoredGuestIps List of IP addresses and CIDR networks to ignore while waiting for an IP
*
* @return builder
*
*/
public Builder ignoredGuestIps(String... ignoredGuestIps) {
return ignoredGuestIps(List.of(ignoredGuestIps));
}
/**
* @param imported Indicates if the virtual machine resource has been imported, or if the state has been migrated from a previous version of the resource. It influences the behavior of the first post-import apply operation. See the section on importing below.
*
* @return builder
*
*/
public Builder imported(@Nullable Output imported) {
$.imported = imported;
return this;
}
/**
* @param imported Indicates if the virtual machine resource has been imported, or if the state has been migrated from a previous version of the resource. It influences the behavior of the first post-import apply operation. See the section on importing below.
*
* @return builder
*
*/
public Builder imported(Boolean imported) {
return imported(Output.of(imported));
}
/**
* @param latencySensitivity Controls the scheduling delay of the virtual machine. Use a higher sensitivity for applications that require lower
* latency, such as VOIP, media player applications, or applications that require frequent access to mouse or keyboard
* devices. Can be one of low, normal, medium, or high.
*
* @return builder
*
*/
public Builder latencySensitivity(@Nullable Output latencySensitivity) {
$.latencySensitivity = latencySensitivity;
return this;
}
/**
* @param latencySensitivity Controls the scheduling delay of the virtual machine. Use a higher sensitivity for applications that require lower
* latency, such as VOIP, media player applications, or applications that require frequent access to mouse or keyboard
* devices. Can be one of low, normal, medium, or high.
*
* @return builder
*
*/
public Builder latencySensitivity(String latencySensitivity) {
return latencySensitivity(Output.of(latencySensitivity));
}
/**
* @param memory The size of the virtual machine's memory, in MB.
*
* @return builder
*
*/
public Builder memory(@Nullable Output memory) {
$.memory = memory;
return this;
}
/**
* @param memory The size of the virtual machine's memory, in MB.
*
* @return builder
*
*/
public Builder memory(Integer memory) {
return memory(Output.of(memory));
}
/**
* @param memoryHotAddEnabled Allow memory to be added to this virtual machine while it is running.
*
* @return builder
*
*/
public Builder memoryHotAddEnabled(@Nullable Output memoryHotAddEnabled) {
$.memoryHotAddEnabled = memoryHotAddEnabled;
return this;
}
/**
* @param memoryHotAddEnabled Allow memory to be added to this virtual machine while it is running.
*
* @return builder
*
*/
public Builder memoryHotAddEnabled(Boolean memoryHotAddEnabled) {
return memoryHotAddEnabled(Output.of(memoryHotAddEnabled));
}
/**
* @param memoryLimit The maximum amount of memory (in MB) or CPU (in MHz) that this virtual machine can consume, regardless of available
* resources.
*
* @return builder
*
*/
public Builder memoryLimit(@Nullable Output memoryLimit) {
$.memoryLimit = memoryLimit;
return this;
}
/**
* @param memoryLimit The maximum amount of memory (in MB) or CPU (in MHz) that this virtual machine can consume, regardless of available
* resources.
*
* @return builder
*
*/
public Builder memoryLimit(Integer memoryLimit) {
return memoryLimit(Output.of(memoryLimit));
}
/**
* @param memoryReservation The amount of memory (in MB) or CPU (in MHz) that this virtual machine is guaranteed.
*
* @return builder
*
*/
public Builder memoryReservation(@Nullable Output memoryReservation) {
$.memoryReservation = memoryReservation;
return this;
}
/**
* @param memoryReservation The amount of memory (in MB) or CPU (in MHz) that this virtual machine is guaranteed.
*
* @return builder
*
*/
public Builder memoryReservation(Integer memoryReservation) {
return memoryReservation(Output.of(memoryReservation));
}
/**
* @param memoryReservationLockedToMax If set true, memory resource reservation for this virtual machine will always be equal to the virtual machine's memory
* size;increases in memory size will be rejected when a corresponding reservation increase is not possible. This feature
* may only be enabled if it is currently possible to reserve all of the virtual machine's memory.
*
* @return builder
*
*/
public Builder memoryReservationLockedToMax(@Nullable Output memoryReservationLockedToMax) {
$.memoryReservationLockedToMax = memoryReservationLockedToMax;
return this;
}
/**
* @param memoryReservationLockedToMax If set true, memory resource reservation for this virtual machine will always be equal to the virtual machine's memory
* size;increases in memory size will be rejected when a corresponding reservation increase is not possible. This feature
* may only be enabled if it is currently possible to reserve all of the virtual machine's memory.
*
* @return builder
*
*/
public Builder memoryReservationLockedToMax(Boolean memoryReservationLockedToMax) {
return memoryReservationLockedToMax(Output.of(memoryReservationLockedToMax));
}
/**
* @param memoryShareCount The amount of shares to allocate to memory for a custom share level.
*
* @return builder
*
*/
public Builder memoryShareCount(@Nullable Output memoryShareCount) {
$.memoryShareCount = memoryShareCount;
return this;
}
/**
* @param memoryShareCount The amount of shares to allocate to memory for a custom share level.
*
* @return builder
*
*/
public Builder memoryShareCount(Integer memoryShareCount) {
return memoryShareCount(Output.of(memoryShareCount));
}
/**
* @param memoryShareLevel The allocation level for memory resources. Can be one of high, low, normal, or custom.
*
* @return builder
*
*/
public Builder memoryShareLevel(@Nullable Output memoryShareLevel) {
$.memoryShareLevel = memoryShareLevel;
return this;
}
/**
* @param memoryShareLevel The allocation level for memory resources. Can be one of high, low, normal, or custom.
*
* @return builder
*
*/
public Builder memoryShareLevel(String memoryShareLevel) {
return memoryShareLevel(Output.of(memoryShareLevel));
}
/**
* @param migrateWaitTimeout The amount of time, in minutes, to wait for a vMotion operation to complete before failing.
*
* @return builder
*
*/
public Builder migrateWaitTimeout(@Nullable Output migrateWaitTimeout) {
$.migrateWaitTimeout = migrateWaitTimeout;
return this;
}
/**
* @param migrateWaitTimeout The amount of time, in minutes, to wait for a vMotion operation to complete before failing.
*
* @return builder
*
*/
public Builder migrateWaitTimeout(Integer migrateWaitTimeout) {
return migrateWaitTimeout(Output.of(migrateWaitTimeout));
}
/**
* @param moid The managed object reference ID of the created virtual machine.
*
* @return builder
*
*/
public Builder moid(@Nullable Output moid) {
$.moid = moid;
return this;
}
/**
* @param moid The managed object reference ID of the created virtual machine.
*
* @return builder
*
*/
public Builder moid(String moid) {
return moid(Output.of(moid));
}
/**
* @param name The name of this virtual machine.
*
* @return builder
*
*/
public Builder name(@Nullable Output name) {
$.name = name;
return this;
}
/**
* @param name The name of this virtual machine.
*
* @return builder
*
*/
public Builder name(String name) {
return name(Output.of(name));
}
/**
* @param nestedHvEnabled Enable nested hardware virtualization on this virtual machine, facilitating nested virtualization in the guest.
*
* @return builder
*
*/
public Builder nestedHvEnabled(@Nullable Output nestedHvEnabled) {
$.nestedHvEnabled = nestedHvEnabled;
return this;
}
/**
* @param nestedHvEnabled Enable nested hardware virtualization on this virtual machine, facilitating nested virtualization in the guest.
*
* @return builder
*
*/
public Builder nestedHvEnabled(Boolean nestedHvEnabled) {
return nestedHvEnabled(Output.of(nestedHvEnabled));
}
/**
* @param networkInterfaces A specification for a virtual NIC on this virtual machine.
*
* @return builder
*
*/
public Builder networkInterfaces(@Nullable Output> networkInterfaces) {
$.networkInterfaces = networkInterfaces;
return this;
}
/**
* @param networkInterfaces A specification for a virtual NIC on this virtual machine.
*
* @return builder
*
*/
public Builder networkInterfaces(List networkInterfaces) {
return networkInterfaces(Output.of(networkInterfaces));
}
/**
* @param networkInterfaces A specification for a virtual NIC on this virtual machine.
*
* @return builder
*
*/
public Builder networkInterfaces(VirtualMachineNetworkInterfaceArgs... networkInterfaces) {
return networkInterfaces(List.of(networkInterfaces));
}
/**
* @param numCoresPerSocket The number of cores to distribute amongst the CPUs in this virtual machine. If specified, the value supplied to num_cpus
* must be evenly divisible by this value.
*
* @return builder
*
*/
public Builder numCoresPerSocket(@Nullable Output numCoresPerSocket) {
$.numCoresPerSocket = numCoresPerSocket;
return this;
}
/**
* @param numCoresPerSocket The number of cores to distribute amongst the CPUs in this virtual machine. If specified, the value supplied to num_cpus
* must be evenly divisible by this value.
*
* @return builder
*
*/
public Builder numCoresPerSocket(Integer numCoresPerSocket) {
return numCoresPerSocket(Output.of(numCoresPerSocket));
}
/**
* @param numCpus The number of virtual processors to assign to this virtual machine.
*
* @return builder
*
*/
public Builder numCpus(@Nullable Output numCpus) {
$.numCpus = numCpus;
return this;
}
/**
* @param numCpus The number of virtual processors to assign to this virtual machine.
*
* @return builder
*
*/
public Builder numCpus(Integer numCpus) {
return numCpus(Output.of(numCpus));
}
/**
* @param ovfDeploy A specification for deploying a virtual machine from ovf/ova template.
*
* @return builder
*
*/
public Builder ovfDeploy(@Nullable Output ovfDeploy) {
$.ovfDeploy = ovfDeploy;
return this;
}
/**
* @param ovfDeploy A specification for deploying a virtual machine from ovf/ova template.
*
* @return builder
*
*/
public Builder ovfDeploy(VirtualMachineOvfDeployArgs ovfDeploy) {
return ovfDeploy(Output.of(ovfDeploy));
}
/**
* @param pciDeviceIds A list of PCI passthrough devices
*
* @return builder
*
*/
public Builder pciDeviceIds(@Nullable Output> pciDeviceIds) {
$.pciDeviceIds = pciDeviceIds;
return this;
}
/**
* @param pciDeviceIds A list of PCI passthrough devices
*
* @return builder
*
*/
public Builder pciDeviceIds(List pciDeviceIds) {
return pciDeviceIds(Output.of(pciDeviceIds));
}
/**
* @param pciDeviceIds A list of PCI passthrough devices
*
* @return builder
*
*/
public Builder pciDeviceIds(String... pciDeviceIds) {
return pciDeviceIds(List.of(pciDeviceIds));
}
/**
* @param powerState A computed value for the current power state of the virtual machine. One of `on`, `off`, or `suspended`.
*
* @return builder
*
*/
public Builder powerState(@Nullable Output powerState) {
$.powerState = powerState;
return this;
}
/**
* @param powerState A computed value for the current power state of the virtual machine. One of `on`, `off`, or `suspended`.
*
* @return builder
*
*/
public Builder powerState(String powerState) {
return powerState(Output.of(powerState));
}
/**
* @param poweronTimeout The amount of time, in seconds, that we will be trying to power on a VM
*
* @return builder
*
*/
public Builder poweronTimeout(@Nullable Output poweronTimeout) {
$.poweronTimeout = poweronTimeout;
return this;
}
/**
* @param poweronTimeout The amount of time, in seconds, that we will be trying to power on a VM
*
* @return builder
*
*/
public Builder poweronTimeout(Integer poweronTimeout) {
return poweronTimeout(Output.of(poweronTimeout));
}
public Builder rebootRequired(@Nullable Output rebootRequired) {
$.rebootRequired = rebootRequired;
return this;
}
public Builder rebootRequired(Boolean rebootRequired) {
return rebootRequired(Output.of(rebootRequired));
}
/**
* @param replaceTrigger Triggers replacement of resource whenever it changes.
*
* @return builder
*
*/
public Builder replaceTrigger(@Nullable Output replaceTrigger) {
$.replaceTrigger = replaceTrigger;
return this;
}
/**
* @param replaceTrigger Triggers replacement of resource whenever it changes.
*
* @return builder
*
*/
public Builder replaceTrigger(String replaceTrigger) {
return replaceTrigger(Output.of(replaceTrigger));
}
/**
* @param resourcePoolId The ID of a resource pool to put the virtual machine in.
*
* @return builder
*
*/
public Builder resourcePoolId(@Nullable Output resourcePoolId) {
$.resourcePoolId = resourcePoolId;
return this;
}
/**
* @param resourcePoolId The ID of a resource pool to put the virtual machine in.
*
* @return builder
*
*/
public Builder resourcePoolId(String resourcePoolId) {
return resourcePoolId(Output.of(resourcePoolId));
}
/**
* @param runToolsScriptsAfterPowerOn Enable the run of scripts after virtual machine power-on when VMware Tools is installed.
*
* @return builder
*
*/
public Builder runToolsScriptsAfterPowerOn(@Nullable Output runToolsScriptsAfterPowerOn) {
$.runToolsScriptsAfterPowerOn = runToolsScriptsAfterPowerOn;
return this;
}
/**
* @param runToolsScriptsAfterPowerOn Enable the run of scripts after virtual machine power-on when VMware Tools is installed.
*
* @return builder
*
*/
public Builder runToolsScriptsAfterPowerOn(Boolean runToolsScriptsAfterPowerOn) {
return runToolsScriptsAfterPowerOn(Output.of(runToolsScriptsAfterPowerOn));
}
/**
* @param runToolsScriptsAfterResume Enable the run of scripts after virtual machine resume when when VMware Tools is installed.
*
* @return builder
*
*/
public Builder runToolsScriptsAfterResume(@Nullable Output runToolsScriptsAfterResume) {
$.runToolsScriptsAfterResume = runToolsScriptsAfterResume;
return this;
}
/**
* @param runToolsScriptsAfterResume Enable the run of scripts after virtual machine resume when when VMware Tools is installed.
*
* @return builder
*
*/
public Builder runToolsScriptsAfterResume(Boolean runToolsScriptsAfterResume) {
return runToolsScriptsAfterResume(Output.of(runToolsScriptsAfterResume));
}
/**
* @param runToolsScriptsBeforeGuestReboot Enable the run of scripts before guest operating system reboot when VMware Tools is installed.
*
* @return builder
*
*/
public Builder runToolsScriptsBeforeGuestReboot(@Nullable Output runToolsScriptsBeforeGuestReboot) {
$.runToolsScriptsBeforeGuestReboot = runToolsScriptsBeforeGuestReboot;
return this;
}
/**
* @param runToolsScriptsBeforeGuestReboot Enable the run of scripts before guest operating system reboot when VMware Tools is installed.
*
* @return builder
*
*/
public Builder runToolsScriptsBeforeGuestReboot(Boolean runToolsScriptsBeforeGuestReboot) {
return runToolsScriptsBeforeGuestReboot(Output.of(runToolsScriptsBeforeGuestReboot));
}
/**
* @param runToolsScriptsBeforeGuestShutdown Enable the run of scripts before guest operating system shutdown when VMware Tools is installed.
*
* @return builder
*
*/
public Builder runToolsScriptsBeforeGuestShutdown(@Nullable Output runToolsScriptsBeforeGuestShutdown) {
$.runToolsScriptsBeforeGuestShutdown = runToolsScriptsBeforeGuestShutdown;
return this;
}
/**
* @param runToolsScriptsBeforeGuestShutdown Enable the run of scripts before guest operating system shutdown when VMware Tools is installed.
*
* @return builder
*
*/
public Builder runToolsScriptsBeforeGuestShutdown(Boolean runToolsScriptsBeforeGuestShutdown) {
return runToolsScriptsBeforeGuestShutdown(Output.of(runToolsScriptsBeforeGuestShutdown));
}
/**
* @param runToolsScriptsBeforeGuestStandby Enable the run of scripts before guest operating system standby when VMware Tools is installed.
*
* @return builder
*
*/
public Builder runToolsScriptsBeforeGuestStandby(@Nullable Output runToolsScriptsBeforeGuestStandby) {
$.runToolsScriptsBeforeGuestStandby = runToolsScriptsBeforeGuestStandby;
return this;
}
/**
* @param runToolsScriptsBeforeGuestStandby Enable the run of scripts before guest operating system standby when VMware Tools is installed.
*
* @return builder
*
*/
public Builder runToolsScriptsBeforeGuestStandby(Boolean runToolsScriptsBeforeGuestStandby) {
return runToolsScriptsBeforeGuestStandby(Output.of(runToolsScriptsBeforeGuestStandby));
}
public Builder sataControllerCount(@Nullable Output sataControllerCount) {
$.sataControllerCount = sataControllerCount;
return this;
}
public Builder sataControllerCount(Integer sataControllerCount) {
return sataControllerCount(Output.of(sataControllerCount));
}
/**
* @param scsiBusSharing Mode for sharing the SCSI bus. The modes are physicalSharing, virtualSharing, and noSharing.
*
* @return builder
*
*/
public Builder scsiBusSharing(@Nullable Output scsiBusSharing) {
$.scsiBusSharing = scsiBusSharing;
return this;
}
/**
* @param scsiBusSharing Mode for sharing the SCSI bus. The modes are physicalSharing, virtualSharing, and noSharing.
*
* @return builder
*
*/
public Builder scsiBusSharing(String scsiBusSharing) {
return scsiBusSharing(Output.of(scsiBusSharing));
}
public Builder scsiControllerCount(@Nullable Output scsiControllerCount) {
$.scsiControllerCount = scsiControllerCount;
return this;
}
public Builder scsiControllerCount(Integer scsiControllerCount) {
return scsiControllerCount(Output.of(scsiControllerCount));
}
/**
* @param scsiType The type of SCSI bus this virtual machine will have. Can be one of lsilogic, lsilogic-sas or pvscsi.
*
* @return builder
*
*/
public Builder scsiType(@Nullable Output scsiType) {
$.scsiType = scsiType;
return this;
}
/**
* @param scsiType The type of SCSI bus this virtual machine will have. Can be one of lsilogic, lsilogic-sas or pvscsi.
*
* @return builder
*
*/
public Builder scsiType(String scsiType) {
return scsiType(Output.of(scsiType));
}
/**
* @param shutdownWaitTimeout The amount of time, in minutes, to wait for shutdown when making necessary updates to the virtual machine.
*
* @return builder
*
*/
public Builder shutdownWaitTimeout(@Nullable Output shutdownWaitTimeout) {
$.shutdownWaitTimeout = shutdownWaitTimeout;
return this;
}
/**
* @param shutdownWaitTimeout The amount of time, in minutes, to wait for shutdown when making necessary updates to the virtual machine.
*
* @return builder
*
*/
public Builder shutdownWaitTimeout(Integer shutdownWaitTimeout) {
return shutdownWaitTimeout(Output.of(shutdownWaitTimeout));
}
/**
* @param storagePolicyId The ID of the storage policy to assign to the virtual machine home directory.
*
* @return builder
*
*/
public Builder storagePolicyId(@Nullable Output