Class: Google::Apis::VmmigrationV1::MachineImageTargetDetails

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

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.



3082
3083
3084
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 3082

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


3009
3010
3011
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 3009

def additional_licenses
  @additional_licenses
end

#descriptionString

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

Returns:

  • (String)


3014
3015
3016
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 3014

def description
  @description
end

#encryptionGoogle::Apis::VmmigrationV1::Encryption

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



3019
3020
3021
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 3019

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


3024
3025
3026
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 3024

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)


3029
3030
3031
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 3029

def machine_image_name
  @machine_image_name
end

#machine_image_parameters_overridesGoogle::Apis::VmmigrationV1::MachineImageParametersOverrides

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



3035
3036
3037
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 3035

def machine_image_parameters_overrides
  @machine_image_parameters_overrides
end

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

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



3042
3043
3044
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 3042

def network_interfaces
  @network_interfaces
end

#os_adaptation_parametersGoogle::Apis::VmmigrationV1::ImageImportOsAdaptationParameters

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



3047
3048
3049
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 3047

def os_adaptation_parameters
  @os_adaptation_parameters
end

#service_accountGoogle::Apis::VmmigrationV1::ServiceAccount

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



3052
3053
3054
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 3052

def 
  @service_account
end

#shielded_instance_configGoogle::Apis::VmmigrationV1::ShieldedInstanceConfig

Shielded instance configuration. Corresponds to the JSON property shieldedInstanceConfig



3057
3058
3059
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 3057

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)


3063
3064
3065
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 3063

def single_region_storage
  @single_region_storage
end

#skip_os_adaptationGoogle::Apis::VmmigrationV1::SkipOsAdaptation

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



3069
3070
3071
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 3069

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


3074
3075
3076
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 3074

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)


3080
3081
3082
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 3080

def target_project
  @target_project
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 3087

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