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 Instance in a given location. */ 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; /** * The full name of the Google Compute Engine [network](/compute/docs/networks-and-firewalls#networks) to which the instance is connected. If left unspecified, the `default` network will be used. */ readonly authorizedNetwork: pulumi.Output; /** * The time the instance was created. */ readonly createTime: pulumi.Output; /** * Endpoint for the Discovery API. */ readonly discoveryEndpoint: pulumi.Output; /** * User provided name for the instance, which is only used for display purposes. Cannot be more than 80 characters. */ readonly displayName: pulumi.Output; /** * Required. The logical name of the Memcached instance in the user project with the following restrictions: * Must contain only lowercase letters, numbers, and hyphens. * Must start with a letter. * Must be between 1-40 characters. * Must end with a number or a letter. * Must be unique within the user project / location. If any of the above are not met, the API raises an invalid argument error. */ readonly instanceId: pulumi.Output; /** * List of messages that describe the current state of the Memcached instance. */ readonly instanceMessages: pulumi.Output; /** * Resource labels to represent user-provided metadata. Refer to cloud documentation on labels for more details. https://cloud.google.com/compute/docs/labeling-resources */ readonly labels: pulumi.Output<{ [key: string]: string; }>; readonly location: pulumi.Output; /** * The maintenance policy for the instance. If not provided, the maintenance event will be performed based on Memorystore internal rollout schedule. */ readonly maintenancePolicy: pulumi.Output; /** * Published maintenance schedule. */ readonly maintenanceSchedule: pulumi.Output; /** * The full version of memcached server running on this instance. System automatically determines the full memcached version for an instance based on the input MemcacheVersion. The full version format will be "memcached-1.5.16". */ readonly memcacheFullVersion: pulumi.Output; /** * List of Memcached nodes. Refer to Node message for more details. */ readonly memcacheNodes: pulumi.Output; /** * The major version of Memcached software. If not provided, latest supported version will be used. Currently the latest supported major version is `MEMCACHE_1_5`. The minor version will be automatically determined by our system based on the latest supported minor version. */ readonly memcacheVersion: pulumi.Output; /** * Unique name of the resource in this scope including project and location using the form: `projects/{project_id}/locations/{location_id}/instances/{instance_id}` Note: Memcached instances are managed and addressed at the regional level so `location_id` here refers to a Google Cloud region; however, users may choose which zones Memcached nodes should be provisioned in within an instance. Refer to zones field for more details. */ readonly name: pulumi.Output; /** * Configuration for Memcached nodes. */ readonly nodeConfig: pulumi.Output; /** * Number of nodes in the Memcached instance. */ readonly nodeCount: pulumi.Output; /** * User defined parameters to apply to the memcached process on each node. */ readonly parameters: pulumi.Output; readonly project: pulumi.Output; /** * Optional. Contains the id of allocated IP address ranges associated with the private service access connection for example, "test-default" associated with IP range 10.0.0.0/29. */ readonly reservedIpRangeId: pulumi.Output; /** * The state of this Memcached instance. */ readonly state: pulumi.Output; /** * The time the instance was updated. */ readonly updateTime: pulumi.Output; /** * Zones in which Memcached nodes should be provisioned. Memcached nodes will be equally distributed across these zones. If not provided, the service will by default create nodes in all zones in the region for the instance. */ readonly zones: 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 full name of the Google Compute Engine [network](/compute/docs/networks-and-firewalls#networks) to which the instance is connected. If left unspecified, the `default` network will be used. */ authorizedNetwork?: pulumi.Input; /** * User provided name for the instance, which is only used for display purposes. Cannot be more than 80 characters. */ displayName?: pulumi.Input; /** * Required. The logical name of the Memcached instance in the user project with the following restrictions: * Must contain only lowercase letters, numbers, and hyphens. * Must start with a letter. * Must be between 1-40 characters. * Must end with a number or a letter. * Must be unique within the user project / location. If any of the above are not met, the API raises an invalid argument error. */ instanceId: pulumi.Input; /** * List of messages that describe the current state of the Memcached instance. */ instanceMessages?: pulumi.Input[]>; /** * Resource labels to represent user-provided metadata. Refer to cloud documentation on labels for more details. https://cloud.google.com/compute/docs/labeling-resources */ labels?: pulumi.Input<{ [key: string]: pulumi.Input; }>; location?: pulumi.Input; /** * The maintenance policy for the instance. If not provided, the maintenance event will be performed based on Memorystore internal rollout schedule. */ maintenancePolicy?: pulumi.Input; /** * The major version of Memcached software. If not provided, latest supported version will be used. Currently the latest supported major version is `MEMCACHE_1_5`. The minor version will be automatically determined by our system based on the latest supported minor version. */ memcacheVersion?: pulumi.Input; /** * Unique name of the resource in this scope including project and location using the form: `projects/{project_id}/locations/{location_id}/instances/{instance_id}` Note: Memcached instances are managed and addressed at the regional level so `location_id` here refers to a Google Cloud region; however, users may choose which zones Memcached nodes should be provisioned in within an instance. Refer to zones field for more details. */ name?: pulumi.Input; /** * Configuration for Memcached nodes. */ nodeConfig: pulumi.Input; /** * Number of nodes in the Memcached instance. */ nodeCount: pulumi.Input; /** * User defined parameters to apply to the memcached process on each node. */ parameters?: pulumi.Input; project?: pulumi.Input; /** * Optional. Contains the id of allocated IP address ranges associated with the private service access connection for example, "test-default" associated with IP range 10.0.0.0/29. */ reservedIpRangeId?: pulumi.Input[]>; /** * Zones in which Memcached nodes should be provisioned. Memcached nodes will be equally distributed across these zones. If not provided, the service will by default create nodes in all zones in the region for the instance. */ zones?: pulumi.Input[]>; }