import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../../types/input"; import * as outputs from "../../types/output"; import * as enums from "../../types/enums"; /** * Creates a new Cloud SQL instance. */ export declare class Instance extends pulumi.CustomResource { /** * Get an existing Instance resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): Instance; /** * Returns true if the given object is an instance of Instance. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is Instance; /** * List all maintenance versions applicable on the instance */ readonly availableMaintenanceVersions: pulumi.Output; /** * The backend type. `SECOND_GEN`: Cloud SQL database instance. `EXTERNAL`: A database server that is not managed by Google. This property is read-only; use the `tier` property in the `settings` object to determine the database type. */ readonly backendType: pulumi.Output; /** * Connection name of the Cloud SQL instance used in connection strings. */ readonly connectionName: pulumi.Output; /** * The time when the instance was created in [RFC 3339](https://tools.ietf.org/html/rfc3339) format, for example `2012-11-15T16:19:00.094Z`. */ readonly createTime: pulumi.Output; /** * The current disk usage of the instance in bytes. This property has been deprecated. Use the "cloudsql.googleapis.com/database/disk/bytes_used" metric in Cloud Monitoring API instead. Please see [this announcement](https://groups.google.com/d/msg/google-cloud-sql-announce/I_7-F9EBhT0/BtvFtdFeAgAJ) for details. */ readonly currentDiskSize: pulumi.Output; /** * Stores the current database version running on the instance including minor version such as `MYSQL_8_0_18`. */ readonly databaseInstalledVersion: pulumi.Output; /** * The database engine type and version. The `databaseVersion` field cannot be changed after instance creation. */ readonly databaseVersion: pulumi.Output; /** * Disk encryption configuration specific to an instance. */ readonly diskEncryptionConfiguration: pulumi.Output; /** * Disk encryption status specific to an instance. */ readonly diskEncryptionStatus: pulumi.Output; /** * The dns name of the instance. */ readonly dnsName: pulumi.Output; /** * This field is deprecated and will be removed from a future version of the API. Use the `settings.settingsVersion` field instead. * * @deprecated This field is deprecated and will be removed from a future version of the API. Use the `settings.settingsVersion` field instead. */ readonly etag: pulumi.Output; /** * The name and status of the failover replica. */ readonly failoverReplica: pulumi.Output; /** * The Compute Engine zone that the instance is currently serving from. This value could be different from the zone that was specified when the instance was created if the instance has failed over to its secondary zone. WARNING: Changing this might restart the instance. */ readonly gceZone: pulumi.Output; /** * The instance type. */ readonly instanceType: pulumi.Output; /** * The assigned IP addresses for the instance. */ readonly ipAddresses: pulumi.Output; /** * The IPv6 address assigned to the instance. (Deprecated) This property was applicable only to First Generation instances. * * @deprecated The IPv6 address assigned to the instance. (Deprecated) This property was applicable only to First Generation instances. */ readonly ipv6Address: pulumi.Output; /** * This is always `sql#instance`. */ readonly kind: pulumi.Output; /** * The current software version on the instance. */ readonly maintenanceVersion: pulumi.Output; /** * The name of the instance which will act as primary in the replication setup. */ readonly masterInstanceName: pulumi.Output; /** * The maximum disk size of the instance in bytes. */ readonly maxDiskSize: pulumi.Output; /** * Name of the Cloud SQL instance. This does not include the project ID. */ readonly name: pulumi.Output; /** * Configuration specific to on-premises instances. */ readonly onPremisesConfiguration: pulumi.Output; /** * This field represents the report generated by the proactive database wellness job for OutOfDisk issues. * Writers: * the proactive database wellness job for OOD. * Readers: * the proactive database wellness job */ readonly outOfDiskReport: pulumi.Output; /** * DEPRECATED: please use write_endpoint instead. * * @deprecated Output only. DEPRECATED: please use write_endpoint instead. */ readonly primaryDnsName: pulumi.Output; readonly project: pulumi.Output; /** * The link to service attachment of PSC instance. */ readonly pscServiceAttachmentLink: pulumi.Output; /** * The geographical region. Can be: * `us-central` (`FIRST_GEN` instances only) * `us-central1` (`SECOND_GEN` instances only) * `asia-east1` or `europe-west1`. Defaults to `us-central` or `us-central1` depending on the instance type. The region cannot be changed after instance creation. */ readonly region: pulumi.Output; /** * Configuration specific to failover replicas and read replicas. */ readonly replicaConfiguration: pulumi.Output; /** * The replicas of the instance. */ readonly replicaNames: pulumi.Output; /** * Initial root password. Use only on creation. You must set root passwords before you can connect to PostgreSQL instances. */ readonly rootPassword: pulumi.Output; /** * The status indicating if instance satisfiesPzs. Reserved for future use. */ readonly satisfiesPzs: pulumi.Output; /** * The start time of any upcoming scheduled maintenance for this instance. */ readonly scheduledMaintenance: pulumi.Output; /** * The Compute Engine zone that the failover instance is currently serving from for a regional instance. This value could be different from the zone that was specified when the instance was created if the instance has failed over to its secondary/failover zone. */ readonly secondaryGceZone: pulumi.Output; /** * The URI of this resource. */ readonly selfLink: pulumi.Output; /** * SSL configuration. */ readonly serverCaCert: pulumi.Output; /** * The service account email address assigned to the instance.\This property is read-only. */ readonly serviceAccountEmailAddress: pulumi.Output; /** * The user settings. */ readonly settings: pulumi.Output; readonly sqlNetworkArchitecture: pulumi.Output; /** * The current serving state of the Cloud SQL instance. */ readonly state: pulumi.Output; /** * If the instance state is SUSPENDED, the reason for the suspension. */ readonly suspensionReason: pulumi.Output; /** * The dns name of the primary instance in a replication group. */ readonly writeEndpoint: pulumi.Output; /** * Create a Instance resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args?: InstanceArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a Instance resource. */ export interface InstanceArgs { /** * The backend type. `SECOND_GEN`: Cloud SQL database instance. `EXTERNAL`: A database server that is not managed by Google. This property is read-only; use the `tier` property in the `settings` object to determine the database type. */ backendType?: pulumi.Input; /** * Connection name of the Cloud SQL instance used in connection strings. */ connectionName?: pulumi.Input; /** * The current disk usage of the instance in bytes. This property has been deprecated. Use the "cloudsql.googleapis.com/database/disk/bytes_used" metric in Cloud Monitoring API instead. Please see [this announcement](https://groups.google.com/d/msg/google-cloud-sql-announce/I_7-F9EBhT0/BtvFtdFeAgAJ) for details. */ currentDiskSize?: pulumi.Input; /** * The database engine type and version. The `databaseVersion` field cannot be changed after instance creation. */ databaseVersion?: pulumi.Input; /** * Disk encryption configuration specific to an instance. */ diskEncryptionConfiguration?: pulumi.Input; /** * Disk encryption status specific to an instance. */ diskEncryptionStatus?: pulumi.Input; /** * This field is deprecated and will be removed from a future version of the API. Use the `settings.settingsVersion` field instead. * * @deprecated This field is deprecated and will be removed from a future version of the API. Use the `settings.settingsVersion` field instead. */ etag?: pulumi.Input; /** * The name and status of the failover replica. */ failoverReplica?: pulumi.Input; /** * The Compute Engine zone that the instance is currently serving from. This value could be different from the zone that was specified when the instance was created if the instance has failed over to its secondary zone. WARNING: Changing this might restart the instance. */ gceZone?: pulumi.Input; /** * The instance type. */ instanceType?: pulumi.Input; /** * The assigned IP addresses for the instance. */ ipAddresses?: pulumi.Input[]>; /** * The IPv6 address assigned to the instance. (Deprecated) This property was applicable only to First Generation instances. * * @deprecated The IPv6 address assigned to the instance. (Deprecated) This property was applicable only to First Generation instances. */ ipv6Address?: pulumi.Input; /** * This is always `sql#instance`. */ kind?: pulumi.Input; /** * The current software version on the instance. */ maintenanceVersion?: pulumi.Input; /** * The name of the instance which will act as primary in the replication setup. */ masterInstanceName?: pulumi.Input; /** * The maximum disk size of the instance in bytes. */ maxDiskSize?: pulumi.Input; /** * Name of the Cloud SQL instance. This does not include the project ID. */ name?: pulumi.Input; /** * Configuration specific to on-premises instances. */ onPremisesConfiguration?: pulumi.Input; /** * This field represents the report generated by the proactive database wellness job for OutOfDisk issues. * Writers: * the proactive database wellness job for OOD. * Readers: * the proactive database wellness job */ outOfDiskReport?: pulumi.Input; /** * The project ID of the project containing the Cloud SQL instance. The Google apps domain is prefixed if applicable. */ project?: pulumi.Input; /** * The geographical region. Can be: * `us-central` (`FIRST_GEN` instances only) * `us-central1` (`SECOND_GEN` instances only) * `asia-east1` or `europe-west1`. Defaults to `us-central` or `us-central1` depending on the instance type. The region cannot be changed after instance creation. */ region?: pulumi.Input; /** * Configuration specific to failover replicas and read replicas. */ replicaConfiguration?: pulumi.Input; /** * The replicas of the instance. */ replicaNames?: pulumi.Input[]>; /** * Initial root password. Use only on creation. You must set root passwords before you can connect to PostgreSQL instances. */ rootPassword?: pulumi.Input; /** * The status indicating if instance satisfiesPzs. Reserved for future use. */ satisfiesPzs?: pulumi.Input; /** * The start time of any upcoming scheduled maintenance for this instance. */ scheduledMaintenance?: pulumi.Input; /** * The Compute Engine zone that the failover instance is currently serving from for a regional instance. This value could be different from the zone that was specified when the instance was created if the instance has failed over to its secondary/failover zone. */ secondaryGceZone?: pulumi.Input; /** * The URI of this resource. */ selfLink?: pulumi.Input; /** * SSL configuration. */ serverCaCert?: pulumi.Input; /** * The service account email address assigned to the instance.\This property is read-only. */ serviceAccountEmailAddress?: pulumi.Input; /** * The user settings. */ settings?: pulumi.Input; sqlNetworkArchitecture?: pulumi.Input; /** * The current serving state of the Cloud SQL instance. */ state?: pulumi.Input; /** * If the instance state is SUSPENDED, the reason for the suspension. */ suspensionReason?: pulumi.Input[]>; }