Class: Google::Apis::VmmigrationV1alpha1::MachineImageTargetDetails

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

Overview

The target details of the machine image resource that will be created by the image import job.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ MachineImageTargetDetails

Returns a new instance of MachineImageTargetDetails.



3641
3642
3643
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3641

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

Instance Attribute Details

#additional_licensesArray<String>

Optional. Additional licenses to assign to the instance created by the machine image. Format: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/ global/licenses/LICENSE_NAME Or https://www.googleapis.com/compute/beta/ projects/PROJECT_ID/global/licenses/LICENSE_NAME Corresponds to the JSON property additionalLicenses

Returns:

  • (Array<String>)


3568
3569
3570
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3568

def additional_licenses
  @additional_licenses
end

#descriptionString

Optional. An optional description of the machine image. Corresponds to the JSON property description

Returns:

  • (String)


3573
3574
3575
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3573

def description
  @description
end

#encryptionGoogle::Apis::VmmigrationV1alpha1::Encryption

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



3578
3579
3580
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3578

def encryption
  @encryption
end

#labelsHash<String,String>

Optional. The labels to apply to the instance created by the machine image. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


3583
3584
3585
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3583

def labels
  @labels
end

#machine_image_nameString

Required. The name of the machine image to be created. Corresponds to the JSON property machineImageName

Returns:

  • (String)


3588
3589
3590
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3588

def machine_image_name
  @machine_image_name
end

#machine_image_parameters_overridesGoogle::Apis::VmmigrationV1alpha1::MachineImageParametersOverrides

Parameters overriding decisions based on the source machine image configurations. Corresponds to the JSON property machineImageParametersOverrides



3594
3595
3596
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3594

def machine_image_parameters_overrides
  @machine_image_parameters_overrides
end

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

Optional. The network interfaces to create with the instance created by the machine image. Internal and external IP addresses, and network tiers are ignored for machine image import. Corresponds to the JSON property networkInterfaces



3601
3602
3603
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3601

def network_interfaces
  @network_interfaces
end

#os_adaptation_parametersGoogle::Apis::VmmigrationV1alpha1::ImageImportOsAdaptationParameters

Parameters affecting the OS adaptation process. Corresponds to the JSON property osAdaptationParameters



3606
3607
3608
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3606

def os_adaptation_parameters
  @os_adaptation_parameters
end

#service_accountGoogle::Apis::VmmigrationV1alpha1::ServiceAccount

Service account to assign to the instance created by the machine image. Corresponds to the JSON property serviceAccount



3611
3612
3613
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3611

def 
  @service_account
end

#shielded_instance_configGoogle::Apis::VmmigrationV1alpha1::ShieldedInstanceConfig

Shielded instance configuration. Corresponds to the JSON property shieldedInstanceConfig



3616
3617
3618
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3616

def shielded_instance_config
  @shielded_instance_config
end

#single_region_storageBoolean Also known as: single_region_storage?

Optional. Set to true to set the machine image storageLocations to the single region of the import job. When false, the closest multi-region is selected. Corresponds to the JSON property singleRegionStorage

Returns:

  • (Boolean)


3622
3623
3624
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3622

def single_region_storage
  @single_region_storage
end

#skip_os_adaptationGoogle::Apis::VmmigrationV1alpha1::SkipOsAdaptation

Mentions that the machine image import is not using OS adaptation process. Corresponds to the JSON property skipOsAdaptation



3628
3629
3630
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3628

def skip_os_adaptation
  @skip_os_adaptation
end

#tagsArray<String>

Optional. The tags to apply to the instance created by the machine image. Corresponds to the JSON property tags

Returns:

  • (Array<String>)


3633
3634
3635
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3633

def tags
  @tags
end

#target_projectString

Required. Reference to the TargetProject resource that represents the target project in which the imported machine image will be created. Corresponds to the JSON property targetProject

Returns:

  • (String)


3639
3640
3641
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3639

def target_project
  @target_project
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3646
3647
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3646

def update!(**args)
  @additional_licenses = args[:additional_licenses] if args.key?(:additional_licenses)
  @description = args[:description] if args.key?(:description)
  @encryption = args[:encryption] if args.key?(:encryption)
  @labels = args[:labels] if args.key?(:labels)
  @machine_image_name = args[:machine_image_name] if args.key?(:machine_image_name)
  @machine_image_parameters_overrides = args[:machine_image_parameters_overrides] if args.key?(:machine_image_parameters_overrides)
  @network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
  @os_adaptation_parameters = args[:os_adaptation_parameters] if args.key?(:os_adaptation_parameters)
  @service_account = args[:service_account] if args.key?(:service_account)
  @shielded_instance_config = args[:shielded_instance_config] if args.key?(:shielded_instance_config)
  @single_region_storage = args[:single_region_storage] if args.key?(:single_region_storage)
  @skip_os_adaptation = args[:skip_os_adaptation] if args.key?(:skip_os_adaptation)
  @tags = args[:tags] if args.key?(:tags)
  @target_project = args[:target_project] if args.key?(:target_project)
end