Class: Google::Apis::VmmigrationV1::DisksMigrationVmTargetDefaults

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/vmmigration_v1/classes.rb,
lib/google/apis/vmmigration_v1/representations.rb,
lib/google/apis/vmmigration_v1/representations.rb

Overview

Details for creation of a VM that migrated data disks will be attached to.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ DisksMigrationVmTargetDefaults

Returns a new instance of DisksMigrationVmTargetDefaults.



2030
2031
2032
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2030

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#additional_licensesArray<String>

Optional. Additional licenses to assign to the VM. Corresponds to the JSON property additionalLicenses

Returns:

  • (Array<String>)


1947
1948
1949
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1947

def additional_licenses
  @additional_licenses
end

#boot_disk_defaultsGoogle::Apis::VmmigrationV1::BootDiskDefaults

BootDiskDefaults hold information about the boot disk of a VM. Corresponds to the JSON property bootDiskDefaults



1952
1953
1954
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1952

def boot_disk_defaults
  @boot_disk_defaults
end

#compute_schedulingGoogle::Apis::VmmigrationV1::ComputeScheduling

Scheduling information for VM on maintenance/restart behaviour and node allocation in sole tenant nodes. Options for instance behavior when the host machine undergoes maintenance that may temporarily impact instance performance. Corresponds to the JSON property computeScheduling



1959
1960
1961
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1959

def compute_scheduling
  @compute_scheduling
end

#enable_integrity_monitoringBoolean Also known as: enable_integrity_monitoring?

Optional. Defines whether the instance has integrity monitoring enabled. Corresponds to the JSON property enableIntegrityMonitoring

Returns:

  • (Boolean)


1964
1965
1966
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1964

def enable_integrity_monitoring
  @enable_integrity_monitoring
end

#enable_vtpmBoolean Also known as: enable_vtpm?

Optional. Defines whether the instance has vTPM enabled. Corresponds to the JSON property enableVtpm

Returns:

  • (Boolean)


1970
1971
1972
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1970

def enable_vtpm
  @enable_vtpm
end

#encryptionGoogle::Apis::VmmigrationV1::Encryption

Encryption message describes the details of the applied encryption. Corresponds to the JSON property encryption



1976
1977
1978
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1976

def encryption
  @encryption
end

#hostnameString

Optional. The hostname to assign to the VM. Corresponds to the JSON property hostname

Returns:

  • (String)


1981
1982
1983
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1981

def hostname
  @hostname
end

#labelsHash<String,String>

Optional. A map of labels to associate with the VM. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


1986
1987
1988
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1986

def labels
  @labels
end

#machine_typeString

Required. The machine type to create the VM with. Corresponds to the JSON property machineType

Returns:

  • (String)


1991
1992
1993
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1991

def machine_type
  @machine_type
end

#machine_type_seriesString

Optional. The machine type series to create the VM with. For presentation only. Corresponds to the JSON property machineTypeSeries

Returns:

  • (String)


1996
1997
1998
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1996

def machine_type_series
  @machine_type_series
end

#metadataHash<String,String>

Optional. The metadata key/value pairs to assign to the VM. Corresponds to the JSON property metadata

Returns:

  • (Hash<String,String>)


2001
2002
2003
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2001

def 
  @metadata
end

#network_interfacesArray<Google::Apis::VmmigrationV1::NetworkInterface>

Optional. NICs to attach to the VM. Corresponds to the JSON property networkInterfaces



2006
2007
2008
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2006

def network_interfaces
  @network_interfaces
end

#network_tagsArray<String>

Optional. A list of network tags to associate with the VM. Corresponds to the JSON property networkTags

Returns:

  • (Array<String>)


2011
2012
2013
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2011

def network_tags
  @network_tags
end

#secure_bootBoolean Also known as: secure_boot?

Optional. Defines whether the instance has Secure Boot enabled. This can be set to true only if the VM boot option is EFI. Corresponds to the JSON property secureBoot

Returns:

  • (Boolean)


2017
2018
2019
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2017

def secure_boot
  @secure_boot
end

#service_accountString

Optional. The service account to associate the VM with. Corresponds to the JSON property serviceAccount

Returns:

  • (String)


2023
2024
2025
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2023

def 
  @service_account
end

#vm_nameString

Required. The name of the VM to create. Corresponds to the JSON property vmName

Returns:

  • (String)


2028
2029
2030
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2028

def vm_name
  @vm_name
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 2035

def update!(**args)
  @additional_licenses = args[:additional_licenses] if args.key?(:additional_licenses)
  @boot_disk_defaults = args[:boot_disk_defaults] if args.key?(:boot_disk_defaults)
  @compute_scheduling = args[:compute_scheduling] if args.key?(:compute_scheduling)
  @enable_integrity_monitoring = args[:enable_integrity_monitoring] if args.key?(:enable_integrity_monitoring)
  @enable_vtpm = args[:enable_vtpm] if args.key?(:enable_vtpm)
  @encryption = args[:encryption] if args.key?(:encryption)
  @hostname = args[:hostname] if args.key?(:hostname)
  @labels = args[:labels] if args.key?(:labels)
  @machine_type = args[:machine_type] if args.key?(:machine_type)
  @machine_type_series = args[:machine_type_series] if args.key?(:machine_type_series)
  @metadata = args[:metadata] if args.key?(:metadata)
  @network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
  @network_tags = args[:network_tags] if args.key?(:network_tags)
  @secure_boot = args[:secure_boot] if args.key?(:secure_boot)
  @service_account = args[:service_account] if args.key?(:service_account)
  @vm_name = args[:vm_name] if args.key?(:vm_name)
end