Class: Google::Apis::FileV1beta1::GoogleCloudSaasacceleratorManagementProvidersV1Instance

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudSaasacceleratorManagementProvidersV1Instance

Returns a new instance of GoogleCloudSaasacceleratorManagementProvidersV1Instance.



429
430
431
# File 'lib/google/apis/file_v1beta1/classes.rb', line 429

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

Instance Attribute Details

#consumer_defined_nameString

consumer_defined_name is the name that is set by the consumer. On the other hand Name field represents system-assigned id of an instance so consumers are not necessarily aware of it. consumer_defined_name is used for notification/UI purposes for consumer to recognize their instances. Corresponds to the JSON property consumerDefinedName

Returns:

  • (String)


319
320
321
# File 'lib/google/apis/file_v1beta1/classes.rb', line 319

def consumer_defined_name
  @consumer_defined_name
end

#create_timeString

Output only. Timestamp when the resource was created. Corresponds to the JSON property createTime

Returns:

  • (String)


324
325
326
# File 'lib/google/apis/file_v1beta1/classes.rb', line 324

def create_time
  @create_time
end

#instance_typeString

Optional. The instance_type of this instance of format: projects/ project_number/locations/location_id/instanceTypes/instance_type_id. Instance Type represents a high-level tier or SKU of the service that this instance belong to. When enabled(eg: Maintenance Rollout), Rollout uses ' instance_type' along with 'software_versions' to determine whether instance needs an update or not. Corresponds to the JSON property instanceType

Returns:

  • (String)


334
335
336
# File 'lib/google/apis/file_v1beta1/classes.rb', line 334

def instance_type
  @instance_type
end

#labelsHash<String,String>

Optional. Resource labels to represent user provided metadata. Each label is a key-value pair, where both the key and the value are arbitrary strings provided by the user. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


341
342
343
# File 'lib/google/apis/file_v1beta1/classes.rb', line 341

def labels
  @labels
end

#maintenance_policy_namesHash<String,String>

Optional. Deprecated. The MaintenancePolicies that have been attached to the instance. The key must be of the type name of the oneof policy name defined in MaintenancePolicy, and the referenced policy must define the same policy type. For complete details of MaintenancePolicy, please refer to go/cloud-saas-mw-ug. Corresponds to the JSON property maintenancePolicyNames

Returns:

  • (Hash<String,String>)


349
350
351
# File 'lib/google/apis/file_v1beta1/classes.rb', line 349

def maintenance_policy_names
  @maintenance_policy_names
end

#maintenance_schedulesHash<String,Google::Apis::FileV1beta1::GoogleCloudSaasacceleratorManagementProvidersV1MaintenanceSchedule>

The MaintenanceSchedule contains the scheduling information of published maintenance schedule with same key as software_versions. Corresponds to the JSON property maintenanceSchedules



355
356
357
# File 'lib/google/apis/file_v1beta1/classes.rb', line 355

def maintenance_schedules
  @maintenance_schedules
end

#maintenance_settingsGoogle::Apis::FileV1beta1::GoogleCloudSaasacceleratorManagementProvidersV1MaintenanceSettings

Maintenance settings associated with instance. Allows service producers and end users to assign settings that controls maintenance on this instance. Corresponds to the JSON property maintenanceSettings



361
362
363
# File 'lib/google/apis/file_v1beta1/classes.rb', line 361

def maintenance_settings
  @maintenance_settings
end

#nameString

Unique name of the resource. It uses the form: projects/project_number/ locations/location_id/instances/instance_id`Note: This name is passed, stored and logged across the rollout system. So use of consumer project_id or any other consumer PII in the name is strongly discouraged for wipeout (go/ wipeout) compliance. See go/elysium/project_ids#storage-guidance for more details. Corresponds to the JSON propertyname`

Returns:

  • (String)


371
372
373
# File 'lib/google/apis/file_v1beta1/classes.rb', line 371

def name
  @name
end

#notification_parametersHash<String,Google::Apis::FileV1beta1::GoogleCloudSaasacceleratorManagementProvidersV1NotificationParameter>

Optional. notification_parameter are information that service producers may like to include that is not relevant to Rollout. This parameter will only be passed to Gamma and Cloud Logging for notification/logging purpose. Corresponds to the JSON property notificationParameters



378
379
380
# File 'lib/google/apis/file_v1beta1/classes.rb', line 378

def notification_parameters
  @notification_parameters
end

#producer_metadataHash<String,String>

Output only. Custom string attributes used primarily to expose producer- specific information in monitoring dashboards. See go/get-instance-metadata. Corresponds to the JSON property producerMetadata

Returns:

  • (Hash<String,String>)


384
385
386
# File 'lib/google/apis/file_v1beta1/classes.rb', line 384

def 
  @producer_metadata
end

#provisioned_resourcesArray<Google::Apis::FileV1beta1::GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource>

Output only. The list of data plane resources provisioned for this instance, e. g. compute VMs. See go/get-instance-metadata. Corresponds to the JSON property provisionedResources



390
391
392
# File 'lib/google/apis/file_v1beta1/classes.rb', line 390

def provisioned_resources
  @provisioned_resources
end

#slm_instance_templateString

Link to the SLM instance template. Only populated when updating SLM instances via SSA's Actuation service adaptor. Service producers with custom control plane (e.g. Cloud SQL) doesn't need to populate this field. Instead they should use software_versions. Corresponds to the JSON property slmInstanceTemplate

Returns:

  • (String)


398
399
400
# File 'lib/google/apis/file_v1beta1/classes.rb', line 398

def slm_instance_template
  @slm_instance_template
end

#slo_metadataGoogle::Apis::FileV1beta1::GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata

SloMetadata contains resources required for proper SLO classification of the instance. Corresponds to the JSON property sloMetadata



404
405
406
# File 'lib/google/apis/file_v1beta1/classes.rb', line 404

def 
  @slo_metadata
end

#software_versionsHash<String,String>

Software versions that are used to deploy this instance. This can be mutated by rollout services. Corresponds to the JSON property softwareVersions

Returns:

  • (Hash<String,String>)


410
411
412
# File 'lib/google/apis/file_v1beta1/classes.rb', line 410

def software_versions
  @software_versions
end

#stateString

Output only. Current lifecycle state of the resource (e.g. if it's being created or ready to use). Corresponds to the JSON property state

Returns:

  • (String)


416
417
418
# File 'lib/google/apis/file_v1beta1/classes.rb', line 416

def state
  @state
end

#tenant_project_idString

Output only. ID of the associated GCP tenant project. See go/get-instance- metadata. Corresponds to the JSON property tenantProjectId

Returns:

  • (String)


422
423
424
# File 'lib/google/apis/file_v1beta1/classes.rb', line 422

def tenant_project_id
  @tenant_project_id
end

#update_timeString

Output only. Timestamp when the resource was last modified. Corresponds to the JSON property updateTime

Returns:

  • (String)


427
428
429
# File 'lib/google/apis/file_v1beta1/classes.rb', line 427

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'lib/google/apis/file_v1beta1/classes.rb', line 434

def update!(**args)
  @consumer_defined_name = args[:consumer_defined_name] if args.key?(:consumer_defined_name)
  @create_time = args[:create_time] if args.key?(:create_time)
  @instance_type = args[:instance_type] if args.key?(:instance_type)
  @labels = args[:labels] if args.key?(:labels)
  @maintenance_policy_names = args[:maintenance_policy_names] if args.key?(:maintenance_policy_names)
  @maintenance_schedules = args[:maintenance_schedules] if args.key?(:maintenance_schedules)
  @maintenance_settings = args[:maintenance_settings] if args.key?(:maintenance_settings)
  @name = args[:name] if args.key?(:name)
  @notification_parameters = args[:notification_parameters] if args.key?(:notification_parameters)
  @producer_metadata = args[:producer_metadata] if args.key?(:producer_metadata)
  @provisioned_resources = args[:provisioned_resources] if args.key?(:provisioned_resources)
  @slm_instance_template = args[:slm_instance_template] if args.key?(:slm_instance_template)
  @slo_metadata = args[:slo_metadata] if args.key?(:slo_metadata)
  @software_versions = args[:software_versions] if args.key?(:software_versions)
  @state = args[:state] if args.key?(:state)
  @tenant_project_id = args[:tenant_project_id] if args.key?(:tenant_project_id)
  @update_time = args[:update_time] if args.key?(:update_time)
end