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.



1831
1832
1833
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1831

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>)


1761
1762
1763
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1761

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



1766
1767
1768
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1766

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. Corresponds to the JSON property computeScheduling



1772
1773
1774
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1772

def compute_scheduling
  @compute_scheduling
end

#encryptionGoogle::Apis::VmmigrationV1::Encryption

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



1777
1778
1779
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1777

def encryption
  @encryption
end

#hostnameString

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

Returns:

  • (String)


1782
1783
1784
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1782

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>)


1787
1788
1789
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1787

def labels
  @labels
end

#machine_typeString

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

Returns:

  • (String)


1792
1793
1794
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1792

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)


1797
1798
1799
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1797

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>)


1802
1803
1804
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1802

def 
  @metadata
end

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

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



1807
1808
1809
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1807

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>)


1812
1813
1814
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1812

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)


1818
1819
1820
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1818

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)


1824
1825
1826
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1824

def 
  @service_account
end

#vm_nameString

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

Returns:

  • (String)


1829
1830
1831
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1829

def vm_name
  @vm_name
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1836

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)
  @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