Show / Hide Table of Contents

Class Instance

Instance represents the interface for SLM services to actuate the state of control plane resources. Example Instance in JSON, where consumer-project-number=123456, producer-project-id=cloud-sql:

json Instance: {
"name": "projects/123456/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/123456/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", }

LINT.IfChange

Inheritance
object
Instance
Implements
IDirectResponseSchema
Inherited Members
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
object.ToString()
Namespace: Google.Apis.Connectors.v1.Data
Assembly: Google.Apis.Connectors.v1.dll
Syntax
public class Instance : IDirectResponseSchema

Properties

ConsumerDefinedName

consumer_defined_name is the name of the instance set by the service consumers. Generally this is different from the name field which reperesents the system-assigned id of the instance which the service consumers do not recognize. This is a required field for tenants onboarding to Maintenance Window notifications (go/slm-rollout-maintenance-policies#prerequisites).

Declaration
[JsonProperty("consumerDefinedName")]
public virtual string ConsumerDefinedName { get; set; }
Property Value
Type Description
string

ConsumerProjectNumber

Optional. The consumer_project_number associated with this Apigee instance. This field is added specifically to support Apigee integration with SLM Rollout and UMM. It represents the numerical project ID of the GCP project that consumes this Apigee instance. It is used for SLM rollout notifications and UMM integration, enabling proper mapping to customer projects and log delivery for Apigee instances. This field complements consumer_project_id and may be used for specific Apigee scenarios where the numerical ID is required.

Declaration
[JsonProperty("consumerProjectNumber")]
public virtual string ConsumerProjectNumber { get; set; }
Property Value
Type Description
string

CreateTime

object representation of CreateTimeRaw.

Declaration
[JsonIgnore]
[Obsolete("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")]
public virtual object CreateTime { get; set; }
Property Value
Type Description
object

CreateTimeDateTimeOffset

DateTimeOffset representation of CreateTimeRaw.

Declaration
[JsonIgnore]
public virtual DateTimeOffset? CreateTimeDateTimeOffset { get; set; }
Property Value
Type Description
DateTimeOffset?

CreateTimeRaw

Output only. Timestamp when the resource was created.

Declaration
[JsonProperty("createTime")]
public virtual string CreateTimeRaw { get; set; }
Property Value
Type Description
string

ETag

The ETag of the item.

Declaration
public virtual string ETag { get; set; }
Property Value
Type Description
string

InstanceType

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.

Declaration
[JsonProperty("instanceType")]
public virtual string InstanceType { get; set; }
Property Value
Type Description
string

Labels

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.

Declaration
[JsonProperty("labels")]
public virtual IDictionary<string, string> Labels { get; set; }
Property Value
Type Description
IDictionary<string, string>

MaintenancePolicyNames

Optional. 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 details, please refer to go/mr-user-guide. Should not be set if maintenance_settings.maintenance_policies is set.

Declaration
[JsonProperty("maintenancePolicyNames")]
public virtual IDictionary<string, string> MaintenancePolicyNames { get; set; }
Property Value
Type Description
IDictionary<string, string>

MaintenanceSchedules

The MaintenanceSchedule contains the scheduling information of published maintenance schedule with same key as software_versions.

Declaration
[JsonProperty("maintenanceSchedules")]
public virtual IDictionary<string, MaintenanceSchedule> MaintenanceSchedules { get; set; }
Property Value
Type Description
IDictionary<string, MaintenanceSchedule>

MaintenanceSettings

Optional. The MaintenanceSettings associated with instance.

Declaration
[JsonProperty("maintenanceSettings")]
public virtual MaintenanceSettings MaintenanceSettings { get; set; }
Property Value
Type Description
MaintenanceSettings

Name

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.

Declaration
[JsonProperty("name")]
public virtual string Name { get; set; }
Property Value
Type Description
string

NotificationParameters

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.

Declaration
[JsonProperty("notificationParameters")]
public virtual IDictionary<string, NotificationParameter> NotificationParameters { get; set; }
Property Value
Type Description
IDictionary<string, NotificationParameter>

ProducerMetadata

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

Declaration
[JsonProperty("producerMetadata")]
public virtual IDictionary<string, string> ProducerMetadata { get; set; }
Property Value
Type Description
IDictionary<string, string>

ProvisionedResources

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

Declaration
[JsonProperty("provisionedResources")]
public virtual IList<ProvisionedResource> ProvisionedResources { get; set; }
Property Value
Type Description
IList<ProvisionedResource>

SlmInstanceTemplate

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.

Declaration
[JsonProperty("slmInstanceTemplate")]
public virtual string SlmInstanceTemplate { get; set; }
Property Value
Type Description
string

SloMetadata

Output only. SLO metadata for instance classification in the Standardized dataplane SLO platform. See go/cloud-ssa-standard-slo for feature description.

Declaration
[JsonProperty("sloMetadata")]
public virtual SloMetadata SloMetadata { get; set; }
Property Value
Type Description
SloMetadata

SoftwareVersions

Software versions that are used to deploy this instance. This can be mutated by rollout services.

Declaration
[JsonProperty("softwareVersions")]
public virtual IDictionary<string, string> SoftwareVersions { get; set; }
Property Value
Type Description
IDictionary<string, string>

State

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

Declaration
[JsonProperty("state")]
public virtual string State { get; set; }
Property Value
Type Description
string

TenantProjectId

Output only. ID of the associated GCP tenant project. See go/get-instance-metadata.

Declaration
[JsonProperty("tenantProjectId")]
public virtual string TenantProjectId { get; set; }
Property Value
Type Description
string

UpdateTime

object representation of UpdateTimeRaw.

Declaration
[JsonIgnore]
[Obsolete("This property is obsolete and may behave unexpectedly; please use UpdateTimeDateTimeOffset instead.")]
public virtual object UpdateTime { get; set; }
Property Value
Type Description
object

UpdateTimeDateTimeOffset

DateTimeOffset representation of UpdateTimeRaw.

Declaration
[JsonIgnore]
public virtual DateTimeOffset? UpdateTimeDateTimeOffset { get; set; }
Property Value
Type Description
DateTimeOffset?

UpdateTimeRaw

Output only. Timestamp when the resource was last modified.

Declaration
[JsonProperty("updateTime")]
public virtual string UpdateTimeRaw { get; set; }
Property Value
Type Description
string

Implements

IDirectResponseSchema
In this article
Back to top Generated by DocFX