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.



3141
3142
3143
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3141

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


3068
3069
3070
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3068

def additional_licenses
  @additional_licenses
end

#descriptionString

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

Returns:

  • (String)


3073
3074
3075
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3073

def description
  @description
end

#encryptionGoogle::Apis::VmmigrationV1alpha1::Encryption

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



3078
3079
3080
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3078

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


3083
3084
3085
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3083

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)


3088
3089
3090
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3088

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



3094
3095
3096
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3094

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 are ignored for machine image import. Corresponds to the JSON property networkInterfaces



3101
3102
3103
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3101

def network_interfaces
  @network_interfaces
end

#os_adaptation_parametersGoogle::Apis::VmmigrationV1alpha1::ImageImportOsAdaptationParameters

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



3106
3107
3108
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3106

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



3111
3112
3113
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3111

def 
  @service_account
end

#shielded_instance_configGoogle::Apis::VmmigrationV1alpha1::ShieldedInstanceConfig

Shielded instance configuration. Corresponds to the JSON property shieldedInstanceConfig



3116
3117
3118
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3116

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)


3122
3123
3124
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3122

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



3128
3129
3130
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3128

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


3133
3134
3135
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3133

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)


3139
3140
3141
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3139

def target_project
  @target_project
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3146

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