Class: Google::Apis::ManagedidentitiesV1alpha1::GoogleCloudSaasacceleratorManagementProvidersV1Instance
- Inherits:
-
Object
- Object
- Google::Apis::ManagedidentitiesV1alpha1::GoogleCloudSaasacceleratorManagementProvidersV1Instance
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- generated/google/apis/managedidentities_v1alpha1/classes.rb,
generated/google/apis/managedidentities_v1alpha1/representations.rb,
generated/google/apis/managedidentities_v1alpha1/representations.rb
Overview
Instance represents the interface for SLM services to actuate the state of control plane resources. Example Instance in JSON, where consumer-project=snapchat, producer-project=cloud-sql:
Instance:
`
"name":
"projects/snapchat/locations/us-east1/instances/prod-instance",
"create_time": `
"seconds": 1526406431,
`,
"labels": `
"env": "prod",
"foo": "bar"
`,
"state": READY,
"software_versions": `
"software_update": "cloud-sql-09-28-2018",
`,
"maintenance_policy_names": `
"UpdatePolicy":
"projects/snapchat/locations/us-east1/maintenancePolicies/prod-update-
policy",
`
"tenant_project_id": "cloud-sql-test-tenant",
"producer_metadata": `
"cloud-sql-tier": "basic",
"cloud-sql-instance-size": "1G",
`,
"provisioned_resources": [
`
"resource-type": "compute-instance",
"resource-url":
"https://www.googleapis.com/compute/v1/projects/cloud-sql/zones/us-east1-
b/instances/vm-1",
`
],
"maintenance_schedules": `
"csa_rollout": `
"start_time": `
"seconds": 1526406431,
`,
"end_time": `
"seconds": 1535406431,
`,
`,
"ncsa_rollout": `
"start_time": `
"seconds": 1526406431,
`,
"end_time": `
"seconds": 1535406431,
`,
`
`,
"consumer_defined_name": "my-sql-instance1",
`
Instance Attribute Summary collapse
-
#consumer_defined_name ⇒ String
consumer_defined_name is the name that is set by the consumer.
-
#create_time ⇒ String
Output only.
-
#labels ⇒ Hash<String,String>
Optional.
-
#maintenance_policy_names ⇒ Hash<String,String>
The MaintenancePolicies that have been attached to the instance.
-
#maintenance_schedules ⇒ Hash<String,Google::Apis::ManagedidentitiesV1alpha1::GoogleCloudSaasacceleratorManagementProvidersV1MaintenanceSchedule>
The MaintenanceSchedule contains the scheduling information of published maintenance schedule.
-
#name ⇒ String
Unique name of the resource.
-
#producer_metadata ⇒ Hash<String,String>
Output only.
-
#provisioned_resources ⇒ Array<Google::Apis::ManagedidentitiesV1alpha1::GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource>
Output only.
-
#rollout_metadata ⇒ Hash<String,Google::Apis::ManagedidentitiesV1alpha1::GoogleCloudSaasacceleratorManagementProvidersV1RolloutMetadata>
The map between RolloutType and the corresponding RolloutMetadata.
-
#slm_instance_template ⇒ String
Link to the SLM instance template.
-
#slo_metadata ⇒ Google::Apis::ManagedidentitiesV1alpha1::GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata
SloMetadata contains resources required for proper SLO classification of the instance.
-
#software_versions ⇒ Hash<String,String>
Software versions that are used to deploy this instance.
-
#state ⇒ String
Output only.
-
#tenant_project_id ⇒ String
Output only.
-
#update_time ⇒ String
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ GoogleCloudSaasacceleratorManagementProvidersV1Instance
constructor
A new instance of GoogleCloudSaasacceleratorManagementProvidersV1Instance.
-
#update!(**args) ⇒ Object
Update properties of this object.
Methods included from Core::JsonObjectSupport
Methods included from Core::Hashable
Constructor Details
#initialize(**args) ⇒ GoogleCloudSaasacceleratorManagementProvidersV1Instance
Returns a new instance of GoogleCloudSaasacceleratorManagementProvidersV1Instance.
625 626 627 |
# File 'generated/google/apis/managedidentities_v1alpha1/classes.rb', line 625 def initialize(**args) update!(**args) end |
Instance Attribute Details
#consumer_defined_name ⇒ String
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
530 531 532 |
# File 'generated/google/apis/managedidentities_v1alpha1/classes.rb', line 530 def consumer_defined_name @consumer_defined_name end |
#create_time ⇒ String
Output only. Timestamp when the resource was created.
Corresponds to the JSON property createTime
535 536 537 |
# File 'generated/google/apis/managedidentities_v1alpha1/classes.rb', line 535 def create_time @create_time end |
#labels ⇒ Hash<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
542 543 544 |
# File 'generated/google/apis/managedidentities_v1alpha1/classes.rb', line 542 def labels @labels end |
#maintenance_policy_names ⇒ Hash<String,String>
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
551 552 553 |
# File 'generated/google/apis/managedidentities_v1alpha1/classes.rb', line 551 def maintenance_policy_names @maintenance_policy_names end |
#maintenance_schedules ⇒ Hash<String,Google::Apis::ManagedidentitiesV1alpha1::GoogleCloudSaasacceleratorManagementProvidersV1MaintenanceSchedule>
The MaintenanceSchedule contains the scheduling information of published
maintenance schedule.
Corresponds to the JSON property maintenanceSchedules
557 558 559 |
# File 'generated/google/apis/managedidentities_v1alpha1/classes.rb', line 557 def maintenance_schedules @maintenance_schedules end |
#name ⇒ String
Unique name of the resource. It uses the form:
projects/
project_id/locations/
location_id/instances/
instance_id`
Corresponds to the JSON property
name`
563 564 565 |
# File 'generated/google/apis/managedidentities_v1alpha1/classes.rb', line 563 def name @name end |
#producer_metadata ⇒ Hash<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
570 571 572 |
# File 'generated/google/apis/managedidentities_v1alpha1/classes.rb', line 570 def @producer_metadata end |
#provisioned_resources ⇒ Array<Google::Apis::ManagedidentitiesV1alpha1::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
576 577 578 |
# File 'generated/google/apis/managedidentities_v1alpha1/classes.rb', line 576 def provisioned_resources @provisioned_resources end |
#rollout_metadata ⇒ Hash<String,Google::Apis::ManagedidentitiesV1alpha1::GoogleCloudSaasacceleratorManagementProvidersV1RolloutMetadata>
The map between RolloutType and the corresponding RolloutMetadata.
This is only mutated by rollout service. For actuation implementation,
this information is pass-through for Rollout management. Producer shall
not modify by itself.
For update of a single entry in this map, the update field mask shall
follow this sementics: go/advanced-field-masks
Corresponds to the JSON property rolloutMetadata
586 587 588 |
# File 'generated/google/apis/managedidentities_v1alpha1/classes.rb', line 586 def @rollout_metadata end |
#slm_instance_template ⇒ String
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
594 595 596 |
# File 'generated/google/apis/managedidentities_v1alpha1/classes.rb', line 594 def slm_instance_template @slm_instance_template end |
#slo_metadata ⇒ Google::Apis::ManagedidentitiesV1alpha1::GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata
SloMetadata contains resources required for proper SLO classification of the
instance.
Corresponds to the JSON property sloMetadata
600 601 602 |
# File 'generated/google/apis/managedidentities_v1alpha1/classes.rb', line 600 def @slo_metadata end |
#software_versions ⇒ Hash<String,String>
Software versions that are used to deploy this instance. This can be
mutated by rollout services.
Corresponds to the JSON property softwareVersions
606 607 608 |
# File 'generated/google/apis/managedidentities_v1alpha1/classes.rb', line 606 def software_versions @software_versions end |
#state ⇒ String
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
612 613 614 |
# File 'generated/google/apis/managedidentities_v1alpha1/classes.rb', line 612 def state @state end |
#tenant_project_id ⇒ String
Output only. ID of the associated GCP tenant project.
See go/get-instance-metadata.
Corresponds to the JSON property tenantProjectId
618 619 620 |
# File 'generated/google/apis/managedidentities_v1alpha1/classes.rb', line 618 def tenant_project_id @tenant_project_id end |
#update_time ⇒ String
Output only. Timestamp when the resource was last modified.
Corresponds to the JSON property updateTime
623 624 625 |
# File 'generated/google/apis/managedidentities_v1alpha1/classes.rb', line 623 def update_time @update_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 |
# File 'generated/google/apis/managedidentities_v1alpha1/classes.rb', line 630 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) @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) @name = args[:name] if args.key?(:name) @producer_metadata = args[:producer_metadata] if args.key?(:producer_metadata) @provisioned_resources = args[:provisioned_resources] if args.key?(:provisioned_resources) @rollout_metadata = args[:rollout_metadata] if args.key?(:rollout_metadata) @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 |