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.



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

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


3005
3006
3007
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3005

def additional_licenses
  @additional_licenses
end

#descriptionString

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

Returns:

  • (String)


3010
3011
3012
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3010

def description
  @description
end

#encryptionGoogle::Apis::VmmigrationV1alpha1::Encryption

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



3015
3016
3017
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3015

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


3020
3021
3022
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3020

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)


3025
3026
3027
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3025

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



3031
3032
3033
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3031

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



3038
3039
3040
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3038

def network_interfaces
  @network_interfaces
end

#os_adaptation_parametersGoogle::Apis::VmmigrationV1alpha1::ImageImportOsAdaptationParameters

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



3043
3044
3045
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3043

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



3048
3049
3050
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3048

def 
  @service_account
end

#shielded_instance_configGoogle::Apis::VmmigrationV1alpha1::ShieldedInstanceConfig

Shielded instance configuration. Corresponds to the JSON property shieldedInstanceConfig



3053
3054
3055
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3053

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)


3059
3060
3061
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3059

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



3065
3066
3067
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3065

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


3070
3071
3072
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3070

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)


3076
3077
3078
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3076

def target_project
  @target_project
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
# File 'lib/google/apis/vmmigration_v1alpha1/classes.rb', line 3083

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