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.



3647
3648
3649
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3647

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


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

def additional_licenses
  @additional_licenses
end

#descriptionString

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

Returns:

  • (String)


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

def description
  @description
end

#encryptionGoogle::Apis::VmmigrationV1alpha1::Encryption

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



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

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


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

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)


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

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



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

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



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

def network_interfaces
  @network_interfaces
end

#os_adaptation_parametersGoogle::Apis::VmmigrationV1alpha1::ImageImportOsAdaptationParameters

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



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

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



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

def 
  @service_account
end

#shielded_instance_configGoogle::Apis::VmmigrationV1alpha1::ShieldedInstanceConfig

Shielded instance configuration. Corresponds to the JSON property shieldedInstanceConfig



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

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)


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

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



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

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


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

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)


3645
3646
3647
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3645

def target_project
  @target_project
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
3662
3663
3664
3665
3666
3667
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3652

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