# Migrate for Compute Engine V1 API - Class Google::Cloud::VMMigration::V1::ComputeEngineTargetDefaults (v2.9.0)

2.9.0 (latest) 2.8.0 2.7.0 2.6.0 2.5.1 2.4.0 2.3.0 2.2.0 2.1.1 2.0.0 1.3.0 1.2.0 1.1.0 1.0.2 0.9.0 0.8.2 0.7.0 0.6.1 0.5.0 0.4.0 0.3.0 0.2.0 0.1.1 Reference documentation and code samples for the Migrate for Compute Engine V1 API class Google::Cloud::VMMigration::V1::ComputeEngineTargetDefaults.

ComputeEngineTargetDefaults is a collection of details for creating a VM in a
target Compute Engine project.

## Inherits

- Object

## Extended By

- Google::Protobuf::MessageExts::ClassMethods

## Includes

- Google::Protobuf::MessageExts

## Methods

### #adaptation_modifiers

    def adaptation_modifiers() -> ::Array<::Google::Cloud::VMMigration::V1::AdaptationModifier>

**Returns**

- (::Array\<[::Google::Cloud::VMMigration::V1::AdaptationModifier](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-AdaptationModifier)\>) --- Optional. AdaptationModifiers are the set of modifiers used during OS adaptation.

### #adaptation_modifiers=

    def adaptation_modifiers=(value) -> ::Array<::Google::Cloud::VMMigration::V1::AdaptationModifier>

**Parameter**

- **value** (::Array\<[::Google::Cloud::VMMigration::V1::AdaptationModifier](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-AdaptationModifier)\>) --- Optional. AdaptationModifiers are the set of modifiers used during OS adaptation.
**Returns**

- (::Array\<[::Google::Cloud::VMMigration::V1::AdaptationModifier](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-AdaptationModifier)\>) --- Optional. AdaptationModifiers are the set of modifiers used during OS adaptation.

### #additional_licenses

    def additional_licenses() -> ::Array<::String>

**Returns**

- (::Array\<::String\>) --- Additional licenses to assign to the VM.

### #additional_licenses=

    def additional_licenses=(value) -> ::Array<::String>

**Parameter**

- **value** (::Array\<::String\>) --- Additional licenses to assign to the VM.
**Returns**

- (::Array\<::String\>) --- Additional licenses to assign to the VM.

### #applied_license

    def applied_license() -> ::Google::Cloud::VMMigration::V1::AppliedLicense

**Returns**

- ([::Google::Cloud::VMMigration::V1::AppliedLicense](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-AppliedLicense)) --- Output only. The OS license returned from the adaptation module report.

### #boot_conversion

    def boot_conversion() -> ::Google::Cloud::VMMigration::V1::BootConversion

**Returns**

- ([::Google::Cloud::VMMigration::V1::BootConversion](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-BootConversion)) --- Optional. By default the virtual machine will keep its existing boot option. Setting this property will trigger an internal process which will convert the virtual machine from using the existing boot option to another.

### #boot_conversion=

    def boot_conversion=(value) -> ::Google::Cloud::VMMigration::V1::BootConversion

**Parameter**

- **value** ([::Google::Cloud::VMMigration::V1::BootConversion](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-BootConversion)) --- Optional. By default the virtual machine will keep its existing boot option. Setting this property will trigger an internal process which will convert the virtual machine from using the existing boot option to another.
**Returns**

- ([::Google::Cloud::VMMigration::V1::BootConversion](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-BootConversion)) --- Optional. By default the virtual machine will keep its existing boot option. Setting this property will trigger an internal process which will convert the virtual machine from using the existing boot option to another.

### #boot_option

    def boot_option() -> ::Google::Cloud::VMMigration::V1::ComputeEngineBootOption

**Returns**

- ([::Google::Cloud::VMMigration::V1::ComputeEngineBootOption](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-ComputeEngineBootOption)) --- Output only. The VM Boot Option, as set in the source VM.

### #compute_scheduling

    def compute_scheduling() -> ::Google::Cloud::VMMigration::V1::ComputeScheduling

**Returns**

- ([::Google::Cloud::VMMigration::V1::ComputeScheduling](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-ComputeScheduling)) --- Compute instance scheduling information (if empty default is used).

### #compute_scheduling=

    def compute_scheduling=(value) -> ::Google::Cloud::VMMigration::V1::ComputeScheduling

**Parameter**

- **value** ([::Google::Cloud::VMMigration::V1::ComputeScheduling](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-ComputeScheduling)) --- Compute instance scheduling information (if empty default is used).
**Returns**

- ([::Google::Cloud::VMMigration::V1::ComputeScheduling](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-ComputeScheduling)) --- Compute instance scheduling information (if empty default is used).

### #disk_replica_zones

    def disk_replica_zones() -> ::Array<::String>

**Returns**

- (::Array\<::String\>) --- Optional. Additional replica zones of the target regional disks. If this list is not empty a regional disk will be created. The first supported zone would be the one stated in the [zone](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-ComputeEngineTargetDefaults#Google__Cloud__VMMigration__V1__ComputeEngineTargetDefaults_zone_instance_ "Google::Cloud::VMMigration::V1::ComputeEngineTargetDefaults#zone (method)") field. The rest are taken from this list. Please refer to the [regional disk
  creation
  API](https://cloud.google.com/compute/docs/regions-zones/global-regional-zonal-resources) for further details about regional vs zonal disks. If not specified, a zonal disk will be created in the same zone the VM is created.

### #disk_replica_zones=

    def disk_replica_zones=(value) -> ::Array<::String>

**Parameter**

- **value** (::Array\<::String\>) --- Optional. Additional replica zones of the target regional disks. If this list is not empty a regional disk will be created. The first supported zone would be the one stated in the [zone](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-ComputeEngineTargetDefaults#Google__Cloud__VMMigration__V1__ComputeEngineTargetDefaults_zone_instance_ "Google::Cloud::VMMigration::V1::ComputeEngineTargetDefaults#zone (method)") field. The rest are taken from this list. Please refer to the [regional disk
  creation
  API](https://cloud.google.com/compute/docs/regions-zones/global-regional-zonal-resources) for further details about regional vs zonal disks. If not specified, a zonal disk will be created in the same zone the VM is created.
**Returns**

- (::Array\<::String\>) --- Optional. Additional replica zones of the target regional disks. If this list is not empty a regional disk will be created. The first supported zone would be the one stated in the [zone](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-ComputeEngineTargetDefaults#Google__Cloud__VMMigration__V1__ComputeEngineTargetDefaults_zone_instance_ "Google::Cloud::VMMigration::V1::ComputeEngineTargetDefaults#zone (method)") field. The rest are taken from this list. Please refer to the [regional disk
  creation
  API](https://cloud.google.com/compute/docs/regions-zones/global-regional-zonal-resources) for further details about regional vs zonal disks. If not specified, a zonal disk will be created in the same zone the VM is created.

### #disk_type

    def disk_type() -> ::Google::Cloud::VMMigration::V1::ComputeEngineDiskType

**Returns**

- ([::Google::Cloud::VMMigration::V1::ComputeEngineDiskType](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-ComputeEngineDiskType)) --- The disk type to use in the VM.

### #disk_type=

    def disk_type=(value) -> ::Google::Cloud::VMMigration::V1::ComputeEngineDiskType

**Parameter**

- **value** ([::Google::Cloud::VMMigration::V1::ComputeEngineDiskType](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-ComputeEngineDiskType)) --- The disk type to use in the VM.
**Returns**

- ([::Google::Cloud::VMMigration::V1::ComputeEngineDiskType](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-ComputeEngineDiskType)) --- The disk type to use in the VM.

### #enable_integrity_monitoring

    def enable_integrity_monitoring() -> ::Boolean

**Returns**

- (::Boolean) --- Optional. Defines whether the instance has integrity monitoring enabled. This can be set to true only if the VM boot option is EFI, and vTPM is enabled.

### #enable_integrity_monitoring=

    def enable_integrity_monitoring=(value) -> ::Boolean

**Parameter**

- **value** (::Boolean) --- Optional. Defines whether the instance has integrity monitoring enabled. This can be set to true only if the VM boot option is EFI, and vTPM is enabled.
**Returns**

- (::Boolean) --- Optional. Defines whether the instance has integrity monitoring enabled. This can be set to true only if the VM boot option is EFI, and vTPM is enabled.

### #enable_vtpm

    def enable_vtpm() -> ::Boolean

**Returns**

- (::Boolean) --- Optional. Defines whether the instance has vTPM enabled. This can be set to true only if the VM boot option is EFI.

### #enable_vtpm=

    def enable_vtpm=(value) -> ::Boolean

**Parameter**

- **value** (::Boolean) --- Optional. Defines whether the instance has vTPM enabled. This can be set to true only if the VM boot option is EFI.
**Returns**

- (::Boolean) --- Optional. Defines whether the instance has vTPM enabled. This can be set to true only if the VM boot option is EFI.

### #encryption

    def encryption() -> ::Google::Cloud::VMMigration::V1::Encryption

**Returns**

- ([::Google::Cloud::VMMigration::V1::Encryption](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-Encryption)) --- Optional. Immutable. The encryption to apply to the VM disks.

### #encryption=

    def encryption=(value) -> ::Google::Cloud::VMMigration::V1::Encryption

**Parameter**

- **value** ([::Google::Cloud::VMMigration::V1::Encryption](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-Encryption)) --- Optional. Immutable. The encryption to apply to the VM disks.
**Returns**

- ([::Google::Cloud::VMMigration::V1::Encryption](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-Encryption)) --- Optional. Immutable. The encryption to apply to the VM disks.

### #hostname

    def hostname() -> ::String

**Returns**

- (::String) --- The hostname to assign to the VM.

### #hostname=

    def hostname=(value) -> ::String

**Parameter**

- **value** (::String) --- The hostname to assign to the VM.
**Returns**

- (::String) --- The hostname to assign to the VM.

### #labels

    def labels() -> ::Google::Protobuf::Map{::String => ::String}

**Returns**

- (::Google::Protobuf::Map{::String =\> ::String}) --- A map of labels to associate with the VM.

### #labels=

    def labels=(value) -> ::Google::Protobuf::Map{::String => ::String}

**Parameter**

- **value** (::Google::Protobuf::Map{::String =\> ::String}) --- A map of labels to associate with the VM.
**Returns**

- (::Google::Protobuf::Map{::String =\> ::String}) --- A map of labels to associate with the VM.

### #license_type

    def license_type() -> ::Google::Cloud::VMMigration::V1::ComputeEngineLicenseType

**Returns**

- ([::Google::Cloud::VMMigration::V1::ComputeEngineLicenseType](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-ComputeEngineLicenseType)) --- The license type to use in OS adaptation.

### #license_type=

    def license_type=(value) -> ::Google::Cloud::VMMigration::V1::ComputeEngineLicenseType

**Parameter**

- **value** ([::Google::Cloud::VMMigration::V1::ComputeEngineLicenseType](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-ComputeEngineLicenseType)) --- The license type to use in OS adaptation.
**Returns**

- ([::Google::Cloud::VMMigration::V1::ComputeEngineLicenseType](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-ComputeEngineLicenseType)) --- The license type to use in OS adaptation.

### #machine_type

    def machine_type() -> ::String

**Returns**

- (::String) --- The machine type to create the VM with.

### #machine_type=

    def machine_type=(value) -> ::String

**Parameter**

- **value** (::String) --- The machine type to create the VM with.
**Returns**

- (::String) --- The machine type to create the VM with.

### #machine_type_series

    def machine_type_series() -> ::String

**Returns**

- (::String) --- The machine type series to create the VM with.

### #machine_type_series=

    def machine_type_series=(value) -> ::String

**Parameter**

- **value** (::String) --- The machine type series to create the VM with.
**Returns**

- (::String) --- The machine type series to create the VM with.

### #metadata

    def metadata() -> ::Google::Protobuf::Map{::String => ::String}

**Returns**

- (::Google::Protobuf::Map{::String =\> ::String}) --- The metadata key/value pairs to assign to the VM.

### #metadata=

    def metadata=(value) -> ::Google::Protobuf::Map{::String => ::String}

**Parameter**

- **value** (::Google::Protobuf::Map{::String =\> ::String}) --- The metadata key/value pairs to assign to the VM.
**Returns**

- (::Google::Protobuf::Map{::String =\> ::String}) --- The metadata key/value pairs to assign to the VM.

### #network_interfaces

    def network_interfaces() -> ::Array<::Google::Cloud::VMMigration::V1::NetworkInterface>

**Returns**

- (::Array\<[::Google::Cloud::VMMigration::V1::NetworkInterface](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-NetworkInterface)\>) --- List of NICs connected to this VM.

### #network_interfaces=

    def network_interfaces=(value) -> ::Array<::Google::Cloud::VMMigration::V1::NetworkInterface>

**Parameter**

- **value** (::Array\<[::Google::Cloud::VMMigration::V1::NetworkInterface](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-NetworkInterface)\>) --- List of NICs connected to this VM.
**Returns**

- (::Array\<[::Google::Cloud::VMMigration::V1::NetworkInterface](https://docs.cloud.google.com/ruby/docs/reference/google-cloud-vm_migration-v1/latest/Google-Cloud-VMMigration-V1-NetworkInterface)\>) --- List of NICs connected to this VM.

### #network_tags

    def network_tags() -> ::Array<::String>

**Returns**

- (::Array\<::String\>) --- A list of network tags to associate with the VM.

### #network_tags=

    def network_tags=(value) -> ::Array<::String>

**Parameter**

- **value** (::Array\<::String\>) --- A list of network tags to associate with the VM.
**Returns**

- (::Array\<::String\>) --- A list of network tags to associate with the VM.

### #secure_boot

    def secure_boot() -> ::Boolean

**Returns**

- (::Boolean) --- Defines whether the instance has Secure Boot enabled. This can be set to true only if the VM boot option is EFI.

### #secure_boot=

    def secure_boot=(value) -> ::Boolean

**Parameter**

- **value** (::Boolean) --- Defines whether the instance has Secure Boot enabled. This can be set to true only if the VM boot option is EFI.
**Returns**

- (::Boolean) --- Defines whether the instance has Secure Boot enabled. This can be set to true only if the VM boot option is EFI.

### #service_account

    def service_account() -> ::String

**Returns**

- (::String) --- Optional. The service account to associate the VM with.

### #service_account=

    def service_account=(value) -> ::String

**Parameter**

- **value** (::String) --- Optional. The service account to associate the VM with.
**Returns**

- (::String) --- Optional. The service account to associate the VM with.

### #storage_pool

    def storage_pool() -> ::String

**Returns**

- (::String) --- Optional. If specified this will be the storage pool in which the disk is created. This is the full path of the storage pool resource, for example: "projects/my-project/zones/us-central1-a/storagePools/my-storage-pool". The storage pool must be in the same project and zone as the target disks. The storage pool's type must match the disk type.

### #storage_pool=

    def storage_pool=(value) -> ::String

**Parameter**

- **value** (::String) --- Optional. If specified this will be the storage pool in which the disk is created. This is the full path of the storage pool resource, for example: "projects/my-project/zones/us-central1-a/storagePools/my-storage-pool". The storage pool must be in the same project and zone as the target disks. The storage pool's type must match the disk type.
**Returns**

- (::String) --- Optional. If specified this will be the storage pool in which the disk is created. This is the full path of the storage pool resource, for example: "projects/my-project/zones/us-central1-a/storagePools/my-storage-pool". The storage pool must be in the same project and zone as the target disks. The storage pool's type must match the disk type.

### #target_project

    def target_project() -> ::String

**Returns**

- (::String) --- The full path of the resource of type TargetProject which represents the Compute Engine project in which to create this VM.

### #target_project=

    def target_project=(value) -> ::String

**Parameter**

- **value** (::String) --- The full path of the resource of type TargetProject which represents the Compute Engine project in which to create this VM.
**Returns**

- (::String) --- The full path of the resource of type TargetProject which represents the Compute Engine project in which to create this VM.

### #vm_name

    def vm_name() -> ::String

**Returns**

- (::String) --- The name of the VM to create.

### #vm_name=

    def vm_name=(value) -> ::String

**Parameter**

- **value** (::String) --- The name of the VM to create.
**Returns**

- (::String) --- The name of the VM to create.

### #zone

    def zone() -> ::String

**Returns**

- (::String) --- The zone in which to create the VM.

### #zone=

    def zone=(value) -> ::String

**Parameter**

- **value** (::String) --- The zone in which to create the VM.
**Returns**

- (::String) --- The zone in which to create the VM.