redis

package
v4.21.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 13, 2021 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type GetInstanceServerCaCert added in v4.13.0

type GetInstanceServerCaCert struct {
	Cert            string `pulumi:"cert"`
	CreateTime      string `pulumi:"createTime"`
	ExpireTime      string `pulumi:"expireTime"`
	SerialNumber    string `pulumi:"serialNumber"`
	Sha1Fingerprint string `pulumi:"sha1Fingerprint"`
}

type GetInstanceServerCaCertArgs added in v4.13.0

type GetInstanceServerCaCertArgs struct {
	Cert            pulumi.StringInput `pulumi:"cert"`
	CreateTime      pulumi.StringInput `pulumi:"createTime"`
	ExpireTime      pulumi.StringInput `pulumi:"expireTime"`
	SerialNumber    pulumi.StringInput `pulumi:"serialNumber"`
	Sha1Fingerprint pulumi.StringInput `pulumi:"sha1Fingerprint"`
}

func (GetInstanceServerCaCertArgs) ElementType added in v4.13.0

func (GetInstanceServerCaCertArgs) ToGetInstanceServerCaCertOutput added in v4.13.0

func (i GetInstanceServerCaCertArgs) ToGetInstanceServerCaCertOutput() GetInstanceServerCaCertOutput

func (GetInstanceServerCaCertArgs) ToGetInstanceServerCaCertOutputWithContext added in v4.13.0

func (i GetInstanceServerCaCertArgs) ToGetInstanceServerCaCertOutputWithContext(ctx context.Context) GetInstanceServerCaCertOutput

type GetInstanceServerCaCertArray added in v4.13.0

type GetInstanceServerCaCertArray []GetInstanceServerCaCertInput

func (GetInstanceServerCaCertArray) ElementType added in v4.13.0

func (GetInstanceServerCaCertArray) ToGetInstanceServerCaCertArrayOutput added in v4.13.0

func (i GetInstanceServerCaCertArray) ToGetInstanceServerCaCertArrayOutput() GetInstanceServerCaCertArrayOutput

func (GetInstanceServerCaCertArray) ToGetInstanceServerCaCertArrayOutputWithContext added in v4.13.0

func (i GetInstanceServerCaCertArray) ToGetInstanceServerCaCertArrayOutputWithContext(ctx context.Context) GetInstanceServerCaCertArrayOutput

type GetInstanceServerCaCertArrayInput added in v4.13.0

type GetInstanceServerCaCertArrayInput interface {
	pulumi.Input

	ToGetInstanceServerCaCertArrayOutput() GetInstanceServerCaCertArrayOutput
	ToGetInstanceServerCaCertArrayOutputWithContext(context.Context) GetInstanceServerCaCertArrayOutput
}

GetInstanceServerCaCertArrayInput is an input type that accepts GetInstanceServerCaCertArray and GetInstanceServerCaCertArrayOutput values. You can construct a concrete instance of `GetInstanceServerCaCertArrayInput` via:

GetInstanceServerCaCertArray{ GetInstanceServerCaCertArgs{...} }

type GetInstanceServerCaCertArrayOutput added in v4.13.0

type GetInstanceServerCaCertArrayOutput struct{ *pulumi.OutputState }

func (GetInstanceServerCaCertArrayOutput) ElementType added in v4.13.0

func (GetInstanceServerCaCertArrayOutput) Index added in v4.13.0

func (GetInstanceServerCaCertArrayOutput) ToGetInstanceServerCaCertArrayOutput added in v4.13.0

func (o GetInstanceServerCaCertArrayOutput) ToGetInstanceServerCaCertArrayOutput() GetInstanceServerCaCertArrayOutput

func (GetInstanceServerCaCertArrayOutput) ToGetInstanceServerCaCertArrayOutputWithContext added in v4.13.0

func (o GetInstanceServerCaCertArrayOutput) ToGetInstanceServerCaCertArrayOutputWithContext(ctx context.Context) GetInstanceServerCaCertArrayOutput

type GetInstanceServerCaCertInput added in v4.13.0

type GetInstanceServerCaCertInput interface {
	pulumi.Input

	ToGetInstanceServerCaCertOutput() GetInstanceServerCaCertOutput
	ToGetInstanceServerCaCertOutputWithContext(context.Context) GetInstanceServerCaCertOutput
}

GetInstanceServerCaCertInput is an input type that accepts GetInstanceServerCaCertArgs and GetInstanceServerCaCertOutput values. You can construct a concrete instance of `GetInstanceServerCaCertInput` via:

GetInstanceServerCaCertArgs{...}

type GetInstanceServerCaCertOutput added in v4.13.0

type GetInstanceServerCaCertOutput struct{ *pulumi.OutputState }

func (GetInstanceServerCaCertOutput) Cert added in v4.13.0

func (GetInstanceServerCaCertOutput) CreateTime added in v4.13.0

func (GetInstanceServerCaCertOutput) ElementType added in v4.13.0

func (GetInstanceServerCaCertOutput) ExpireTime added in v4.13.0

func (GetInstanceServerCaCertOutput) SerialNumber added in v4.13.0

func (GetInstanceServerCaCertOutput) Sha1Fingerprint added in v4.13.0

func (GetInstanceServerCaCertOutput) ToGetInstanceServerCaCertOutput added in v4.13.0

func (o GetInstanceServerCaCertOutput) ToGetInstanceServerCaCertOutput() GetInstanceServerCaCertOutput

func (GetInstanceServerCaCertOutput) ToGetInstanceServerCaCertOutputWithContext added in v4.13.0

func (o GetInstanceServerCaCertOutput) ToGetInstanceServerCaCertOutputWithContext(ctx context.Context) GetInstanceServerCaCertOutput

type Instance

type Instance struct {
	pulumi.CustomResourceState

	// Only applicable to STANDARD_HA tier which protects the instance
	// against zonal failures by provisioning it across two zones.
	// If provided, it must be a different zone from the one provided in
	// [locationId].
	AlternativeLocationId pulumi.StringOutput `pulumi:"alternativeLocationId"`
	// Optional. Indicates whether OSS Redis AUTH is enabled for the
	// instance. If set to "true" AUTH is enabled on the instance.
	// Default value is "false" meaning AUTH is disabled.
	AuthEnabled pulumi.BoolPtrOutput `pulumi:"authEnabled"`
	// AUTH String set on the instance. This field will only be populated if authEnabled is true.
	AuthString pulumi.StringOutput `pulumi:"authString"`
	// The full name of the Google Compute Engine network to which the
	// instance is connected. If left unspecified, the default network
	// will be used.
	AuthorizedNetwork pulumi.StringOutput `pulumi:"authorizedNetwork"`
	// The connection mode of the Redis instance.
	// Default value is `DIRECT_PEERING`.
	// Possible values are `DIRECT_PEERING` and `PRIVATE_SERVICE_ACCESS`.
	ConnectMode pulumi.StringPtrOutput `pulumi:"connectMode"`
	// The time the instance was created in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// The current zone where the Redis endpoint is placed. For Basic Tier instances, this will always be the same as the
	// [locationId] provided by the user at creation time. For Standard Tier instances, this can be either [locationId] or
	// [alternativeLocationId] and can change after a failover event.
	CurrentLocationId pulumi.StringOutput `pulumi:"currentLocationId"`
	// An arbitrary and optional user-provided name for the instance.
	DisplayName pulumi.StringPtrOutput `pulumi:"displayName"`
	// Hostname or IP address of the exposed Redis endpoint used by clients to connect to the service.
	Host pulumi.StringOutput `pulumi:"host"`
	// Resource labels to represent user provided metadata.
	Labels pulumi.StringMapOutput `pulumi:"labels"`
	// The zone where the instance will be provisioned. If not provided,
	// the service will choose a zone for the instance. For STANDARD_HA tier,
	// instances will be created across two zones for protection against
	// zonal failures. If [alternativeLocationId] is also provided, it must
	// be different from [locationId].
	LocationId pulumi.StringOutput `pulumi:"locationId"`
	// Redis memory size in GiB.
	MemorySizeGb pulumi.IntOutput `pulumi:"memorySizeGb"`
	// The ID of the instance or a fully qualified identifier for the instance.
	Name pulumi.StringOutput `pulumi:"name"`
	// Output only. Cloud IAM identity used by import / export operations to transfer data to/from Cloud Storage. Format is
	// "serviceAccount:". The value may change over time for a given instance so should be checked before each import/export
	// operation.
	PersistenceIamIdentity pulumi.StringOutput `pulumi:"persistenceIamIdentity"`
	// The port number of the exposed Redis endpoint.
	Port pulumi.IntOutput `pulumi:"port"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// Redis configuration parameters, according to http://redis.io/topics/config.
	// Please check Memorystore documentation for the list of supported parameters:
	// https://cloud.google.com/memorystore/docs/redis/reference/rest/v1/projects.locations.instances#Instance.FIELDS.redis_configs
	RedisConfigs pulumi.StringMapOutput `pulumi:"redisConfigs"`
	// The version of Redis software. If not provided, latest supported
	// version will be used. Currently, the supported values are:
	// - REDIS_5_0 for Redis 5.0 compatibility
	// - REDIS_4_0 for Redis 4.0 compatibility
	// - REDIS_3_2 for Redis 3.2 compatibility
	RedisVersion pulumi.StringOutput `pulumi:"redisVersion"`
	// The name of the Redis region of the instance.
	Region pulumi.StringOutput `pulumi:"region"`
	// The CIDR range of internal addresses that are reserved for this
	// instance. If not provided, the service will choose an unused /29
	// block, for example, 10.0.0.0/29 or 192.168.0.0/29. Ranges must be
	// unique and non-overlapping with existing subnets in an authorized
	// network.
	ReservedIpRange pulumi.StringOutput `pulumi:"reservedIpRange"`
	// List of server CA certificates for the instance.
	ServerCaCerts InstanceServerCaCertArrayOutput `pulumi:"serverCaCerts"`
	// The service tier of the instance. Must be one of these values:
	// - BASIC: standalone instance
	// - STANDARD_HA: highly available primary/replica instances
	//   Default value is `BASIC`.
	//   Possible values are `BASIC` and `STANDARD_HA`.
	Tier pulumi.StringPtrOutput `pulumi:"tier"`
	// The TLS mode of the Redis instance, If not provided, TLS is disabled for the instance.
	// - SERVER_AUTHENTICATION: Client to Server traffic encryption enabled with server authentcation
	//   Default value is `DISABLED`.
	//   Possible values are `SERVER_AUTHENTICATION` and `DISABLED`.
	TransitEncryptionMode pulumi.StringPtrOutput `pulumi:"transitEncryptionMode"`
}

A Google Cloud Redis instance.

To get more information about Instance, see:

* [API documentation](https://cloud.google.com/memorystore/docs/redis/reference/rest/v1/projects.locations.instances) * How-to Guides

## Example Usage ### Redis Instance Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/redis"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := redis.NewInstance(ctx, "cache", &redis.InstanceArgs{
			MemorySizeGb: pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Redis Instance Full

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/redis"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		redis_network, err := compute.LookupNetwork(ctx, &compute.LookupNetworkArgs{
			Name: "redis-test-network",
		}, nil)
		if err != nil {
			return err
		}
		_, err = redis.NewInstance(ctx, "cache", &redis.InstanceArgs{
			Tier:                  pulumi.String("STANDARD_HA"),
			MemorySizeGb:          pulumi.Int(1),
			LocationId:            pulumi.String("us-central1-a"),
			AlternativeLocationId: pulumi.String("us-central1-f"),
			AuthorizedNetwork:     pulumi.String(redis_network.Id),
			RedisVersion:          pulumi.String("REDIS_4_0"),
			DisplayName:           pulumi.String("Test Instance"),
			ReservedIpRange:       pulumi.String("192.168.0.0/29"),
			Labels: pulumi.StringMap{
				"my_key":    pulumi.String("my_val"),
				"other_key": pulumi.String("other_val"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Redis Instance Private Service

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/redis"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/servicenetworking"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		redis_network, err := compute.LookupNetwork(ctx, &compute.LookupNetworkArgs{
			Name: "redis-test-network",
		}, nil)
		if err != nil {
			return err
		}
		serviceRange, err := compute.NewGlobalAddress(ctx, "serviceRange", &compute.GlobalAddressArgs{
			Purpose:      pulumi.String("VPC_PEERING"),
			AddressType:  pulumi.String("INTERNAL"),
			PrefixLength: pulumi.Int(16),
			Network:      pulumi.String(redis_network.Id),
		})
		if err != nil {
			return err
		}
		privateServiceConnection, err := servicenetworking.NewConnection(ctx, "privateServiceConnection", &servicenetworking.ConnectionArgs{
			Network: pulumi.String(redis_network.Id),
			Service: pulumi.String("servicenetworking.googleapis.com"),
			ReservedPeeringRanges: pulumi.StringArray{
				serviceRange.Name,
			},
		})
		if err != nil {
			return err
		}
		_, err = redis.NewInstance(ctx, "cache", &redis.InstanceArgs{
			Tier:                  pulumi.String("STANDARD_HA"),
			MemorySizeGb:          pulumi.Int(1),
			LocationId:            pulumi.String("us-central1-a"),
			AlternativeLocationId: pulumi.String("us-central1-f"),
			AuthorizedNetwork:     pulumi.String(redis_network.Id),
			ConnectMode:           pulumi.String("PRIVATE_SERVICE_ACCESS"),
			RedisVersion:          pulumi.String("REDIS_4_0"),
			DisplayName:           pulumi.String("Test Instance"),
		}, pulumi.DependsOn([]pulumi.Resource{
			privateServiceConnection,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Instance can be imported using any of these accepted formats

```sh

$ pulumi import gcp:redis/instance:Instance default projects/{{project}}/locations/{{region}}/instances/{{name}}

```

```sh

$ pulumi import gcp:redis/instance:Instance default {{project}}/{{region}}/{{name}}

```

```sh

$ pulumi import gcp:redis/instance:Instance default {{region}}/{{name}}

```

```sh

$ pulumi import gcp:redis/instance:Instance default {{name}}

```

func GetInstance

func GetInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *InstanceState, opts ...pulumi.ResourceOption) (*Instance, error)

GetInstance gets an existing Instance resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewInstance

func NewInstance(ctx *pulumi.Context,
	name string, args *InstanceArgs, opts ...pulumi.ResourceOption) (*Instance, error)

NewInstance registers a new resource with the given unique name, arguments, and options.

func (*Instance) ElementType added in v4.4.0

func (*Instance) ElementType() reflect.Type

func (*Instance) ToInstanceOutput added in v4.4.0

func (i *Instance) ToInstanceOutput() InstanceOutput

func (*Instance) ToInstanceOutputWithContext added in v4.4.0

func (i *Instance) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

func (*Instance) ToInstancePtrOutput added in v4.11.1

func (i *Instance) ToInstancePtrOutput() InstancePtrOutput

func (*Instance) ToInstancePtrOutputWithContext added in v4.11.1

func (i *Instance) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput

type InstanceArgs

type InstanceArgs struct {
	// Only applicable to STANDARD_HA tier which protects the instance
	// against zonal failures by provisioning it across two zones.
	// If provided, it must be a different zone from the one provided in
	// [locationId].
	AlternativeLocationId pulumi.StringPtrInput
	// Optional. Indicates whether OSS Redis AUTH is enabled for the
	// instance. If set to "true" AUTH is enabled on the instance.
	// Default value is "false" meaning AUTH is disabled.
	AuthEnabled pulumi.BoolPtrInput
	// The full name of the Google Compute Engine network to which the
	// instance is connected. If left unspecified, the default network
	// will be used.
	AuthorizedNetwork pulumi.StringPtrInput
	// The connection mode of the Redis instance.
	// Default value is `DIRECT_PEERING`.
	// Possible values are `DIRECT_PEERING` and `PRIVATE_SERVICE_ACCESS`.
	ConnectMode pulumi.StringPtrInput
	// An arbitrary and optional user-provided name for the instance.
	DisplayName pulumi.StringPtrInput
	// Resource labels to represent user provided metadata.
	Labels pulumi.StringMapInput
	// The zone where the instance will be provisioned. If not provided,
	// the service will choose a zone for the instance. For STANDARD_HA tier,
	// instances will be created across two zones for protection against
	// zonal failures. If [alternativeLocationId] is also provided, it must
	// be different from [locationId].
	LocationId pulumi.StringPtrInput
	// Redis memory size in GiB.
	MemorySizeGb pulumi.IntInput
	// The ID of the instance or a fully qualified identifier for the instance.
	Name pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// Redis configuration parameters, according to http://redis.io/topics/config.
	// Please check Memorystore documentation for the list of supported parameters:
	// https://cloud.google.com/memorystore/docs/redis/reference/rest/v1/projects.locations.instances#Instance.FIELDS.redis_configs
	RedisConfigs pulumi.StringMapInput
	// The version of Redis software. If not provided, latest supported
	// version will be used. Currently, the supported values are:
	// - REDIS_5_0 for Redis 5.0 compatibility
	// - REDIS_4_0 for Redis 4.0 compatibility
	// - REDIS_3_2 for Redis 3.2 compatibility
	RedisVersion pulumi.StringPtrInput
	// The name of the Redis region of the instance.
	Region pulumi.StringPtrInput
	// The CIDR range of internal addresses that are reserved for this
	// instance. If not provided, the service will choose an unused /29
	// block, for example, 10.0.0.0/29 or 192.168.0.0/29. Ranges must be
	// unique and non-overlapping with existing subnets in an authorized
	// network.
	ReservedIpRange pulumi.StringPtrInput
	// The service tier of the instance. Must be one of these values:
	// - BASIC: standalone instance
	// - STANDARD_HA: highly available primary/replica instances
	//   Default value is `BASIC`.
	//   Possible values are `BASIC` and `STANDARD_HA`.
	Tier pulumi.StringPtrInput
	// The TLS mode of the Redis instance, If not provided, TLS is disabled for the instance.
	// - SERVER_AUTHENTICATION: Client to Server traffic encryption enabled with server authentcation
	//   Default value is `DISABLED`.
	//   Possible values are `SERVER_AUTHENTICATION` and `DISABLED`.
	TransitEncryptionMode pulumi.StringPtrInput
}

The set of arguments for constructing a Instance resource.

func (InstanceArgs) ElementType

func (InstanceArgs) ElementType() reflect.Type

type InstanceArray added in v4.11.1

type InstanceArray []InstanceInput

func (InstanceArray) ElementType added in v4.11.1

func (InstanceArray) ElementType() reflect.Type

func (InstanceArray) ToInstanceArrayOutput added in v4.11.1

func (i InstanceArray) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArray) ToInstanceArrayOutputWithContext added in v4.11.1

func (i InstanceArray) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

type InstanceArrayInput added in v4.11.1

type InstanceArrayInput interface {
	pulumi.Input

	ToInstanceArrayOutput() InstanceArrayOutput
	ToInstanceArrayOutputWithContext(context.Context) InstanceArrayOutput
}

InstanceArrayInput is an input type that accepts InstanceArray and InstanceArrayOutput values. You can construct a concrete instance of `InstanceArrayInput` via:

InstanceArray{ InstanceArgs{...} }

type InstanceArrayOutput added in v4.11.1

type InstanceArrayOutput struct{ *pulumi.OutputState }

func (InstanceArrayOutput) ElementType added in v4.11.1

func (InstanceArrayOutput) ElementType() reflect.Type

func (InstanceArrayOutput) Index added in v4.11.1

func (InstanceArrayOutput) ToInstanceArrayOutput added in v4.11.1

func (o InstanceArrayOutput) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArrayOutput) ToInstanceArrayOutputWithContext added in v4.11.1

func (o InstanceArrayOutput) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

type InstanceInput added in v4.4.0

type InstanceInput interface {
	pulumi.Input

	ToInstanceOutput() InstanceOutput
	ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
}

type InstanceMap added in v4.11.1

type InstanceMap map[string]InstanceInput

func (InstanceMap) ElementType added in v4.11.1

func (InstanceMap) ElementType() reflect.Type

func (InstanceMap) ToInstanceMapOutput added in v4.11.1

func (i InstanceMap) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMap) ToInstanceMapOutputWithContext added in v4.11.1

func (i InstanceMap) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

type InstanceMapInput added in v4.11.1

type InstanceMapInput interface {
	pulumi.Input

	ToInstanceMapOutput() InstanceMapOutput
	ToInstanceMapOutputWithContext(context.Context) InstanceMapOutput
}

InstanceMapInput is an input type that accepts InstanceMap and InstanceMapOutput values. You can construct a concrete instance of `InstanceMapInput` via:

InstanceMap{ "key": InstanceArgs{...} }

type InstanceMapOutput added in v4.11.1

type InstanceMapOutput struct{ *pulumi.OutputState }

func (InstanceMapOutput) ElementType added in v4.11.1

func (InstanceMapOutput) ElementType() reflect.Type

func (InstanceMapOutput) MapIndex added in v4.11.1

func (InstanceMapOutput) ToInstanceMapOutput added in v4.11.1

func (o InstanceMapOutput) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMapOutput) ToInstanceMapOutputWithContext added in v4.11.1

func (o InstanceMapOutput) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

type InstanceOutput added in v4.4.0

type InstanceOutput struct {
	*pulumi.OutputState
}

func (InstanceOutput) ElementType added in v4.4.0

func (InstanceOutput) ElementType() reflect.Type

func (InstanceOutput) ToInstanceOutput added in v4.4.0

func (o InstanceOutput) ToInstanceOutput() InstanceOutput

func (InstanceOutput) ToInstanceOutputWithContext added in v4.4.0

func (o InstanceOutput) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

func (InstanceOutput) ToInstancePtrOutput added in v4.11.1

func (o InstanceOutput) ToInstancePtrOutput() InstancePtrOutput

func (InstanceOutput) ToInstancePtrOutputWithContext added in v4.11.1

func (o InstanceOutput) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput

type InstancePtrInput added in v4.11.1

type InstancePtrInput interface {
	pulumi.Input

	ToInstancePtrOutput() InstancePtrOutput
	ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput
}

type InstancePtrOutput added in v4.11.1

type InstancePtrOutput struct {
	*pulumi.OutputState
}

func (InstancePtrOutput) ElementType added in v4.11.1

func (InstancePtrOutput) ElementType() reflect.Type

func (InstancePtrOutput) ToInstancePtrOutput added in v4.11.1

func (o InstancePtrOutput) ToInstancePtrOutput() InstancePtrOutput

func (InstancePtrOutput) ToInstancePtrOutputWithContext added in v4.11.1

func (o InstancePtrOutput) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput

type InstanceServerCaCert added in v4.13.0

type InstanceServerCaCert struct {
	Cert            *string `pulumi:"cert"`
	CreateTime      *string `pulumi:"createTime"`
	ExpireTime      *string `pulumi:"expireTime"`
	SerialNumber    *string `pulumi:"serialNumber"`
	Sha1Fingerprint *string `pulumi:"sha1Fingerprint"`
}

type InstanceServerCaCertArgs added in v4.13.0

type InstanceServerCaCertArgs struct {
	Cert            pulumi.StringPtrInput `pulumi:"cert"`
	CreateTime      pulumi.StringPtrInput `pulumi:"createTime"`
	ExpireTime      pulumi.StringPtrInput `pulumi:"expireTime"`
	SerialNumber    pulumi.StringPtrInput `pulumi:"serialNumber"`
	Sha1Fingerprint pulumi.StringPtrInput `pulumi:"sha1Fingerprint"`
}

func (InstanceServerCaCertArgs) ElementType added in v4.13.0

func (InstanceServerCaCertArgs) ElementType() reflect.Type

func (InstanceServerCaCertArgs) ToInstanceServerCaCertOutput added in v4.13.0

func (i InstanceServerCaCertArgs) ToInstanceServerCaCertOutput() InstanceServerCaCertOutput

func (InstanceServerCaCertArgs) ToInstanceServerCaCertOutputWithContext added in v4.13.0

func (i InstanceServerCaCertArgs) ToInstanceServerCaCertOutputWithContext(ctx context.Context) InstanceServerCaCertOutput

type InstanceServerCaCertArray added in v4.13.0

type InstanceServerCaCertArray []InstanceServerCaCertInput

func (InstanceServerCaCertArray) ElementType added in v4.13.0

func (InstanceServerCaCertArray) ElementType() reflect.Type

func (InstanceServerCaCertArray) ToInstanceServerCaCertArrayOutput added in v4.13.0

func (i InstanceServerCaCertArray) ToInstanceServerCaCertArrayOutput() InstanceServerCaCertArrayOutput

func (InstanceServerCaCertArray) ToInstanceServerCaCertArrayOutputWithContext added in v4.13.0

func (i InstanceServerCaCertArray) ToInstanceServerCaCertArrayOutputWithContext(ctx context.Context) InstanceServerCaCertArrayOutput

type InstanceServerCaCertArrayInput added in v4.13.0

type InstanceServerCaCertArrayInput interface {
	pulumi.Input

	ToInstanceServerCaCertArrayOutput() InstanceServerCaCertArrayOutput
	ToInstanceServerCaCertArrayOutputWithContext(context.Context) InstanceServerCaCertArrayOutput
}

InstanceServerCaCertArrayInput is an input type that accepts InstanceServerCaCertArray and InstanceServerCaCertArrayOutput values. You can construct a concrete instance of `InstanceServerCaCertArrayInput` via:

InstanceServerCaCertArray{ InstanceServerCaCertArgs{...} }

type InstanceServerCaCertArrayOutput added in v4.13.0

type InstanceServerCaCertArrayOutput struct{ *pulumi.OutputState }

func (InstanceServerCaCertArrayOutput) ElementType added in v4.13.0

func (InstanceServerCaCertArrayOutput) Index added in v4.13.0

func (InstanceServerCaCertArrayOutput) ToInstanceServerCaCertArrayOutput added in v4.13.0

func (o InstanceServerCaCertArrayOutput) ToInstanceServerCaCertArrayOutput() InstanceServerCaCertArrayOutput

func (InstanceServerCaCertArrayOutput) ToInstanceServerCaCertArrayOutputWithContext added in v4.13.0

func (o InstanceServerCaCertArrayOutput) ToInstanceServerCaCertArrayOutputWithContext(ctx context.Context) InstanceServerCaCertArrayOutput

type InstanceServerCaCertInput added in v4.13.0

type InstanceServerCaCertInput interface {
	pulumi.Input

	ToInstanceServerCaCertOutput() InstanceServerCaCertOutput
	ToInstanceServerCaCertOutputWithContext(context.Context) InstanceServerCaCertOutput
}

InstanceServerCaCertInput is an input type that accepts InstanceServerCaCertArgs and InstanceServerCaCertOutput values. You can construct a concrete instance of `InstanceServerCaCertInput` via:

InstanceServerCaCertArgs{...}

type InstanceServerCaCertOutput added in v4.13.0

type InstanceServerCaCertOutput struct{ *pulumi.OutputState }

func (InstanceServerCaCertOutput) Cert added in v4.13.0

func (InstanceServerCaCertOutput) CreateTime added in v4.13.0

func (InstanceServerCaCertOutput) ElementType added in v4.13.0

func (InstanceServerCaCertOutput) ElementType() reflect.Type

func (InstanceServerCaCertOutput) ExpireTime added in v4.13.0

func (InstanceServerCaCertOutput) SerialNumber added in v4.13.0

func (InstanceServerCaCertOutput) Sha1Fingerprint added in v4.13.0

func (InstanceServerCaCertOutput) ToInstanceServerCaCertOutput added in v4.13.0

func (o InstanceServerCaCertOutput) ToInstanceServerCaCertOutput() InstanceServerCaCertOutput

func (InstanceServerCaCertOutput) ToInstanceServerCaCertOutputWithContext added in v4.13.0

func (o InstanceServerCaCertOutput) ToInstanceServerCaCertOutputWithContext(ctx context.Context) InstanceServerCaCertOutput

type InstanceState

type InstanceState struct {
	// Only applicable to STANDARD_HA tier which protects the instance
	// against zonal failures by provisioning it across two zones.
	// If provided, it must be a different zone from the one provided in
	// [locationId].
	AlternativeLocationId pulumi.StringPtrInput
	// Optional. Indicates whether OSS Redis AUTH is enabled for the
	// instance. If set to "true" AUTH is enabled on the instance.
	// Default value is "false" meaning AUTH is disabled.
	AuthEnabled pulumi.BoolPtrInput
	// AUTH String set on the instance. This field will only be populated if authEnabled is true.
	AuthString pulumi.StringPtrInput
	// The full name of the Google Compute Engine network to which the
	// instance is connected. If left unspecified, the default network
	// will be used.
	AuthorizedNetwork pulumi.StringPtrInput
	// The connection mode of the Redis instance.
	// Default value is `DIRECT_PEERING`.
	// Possible values are `DIRECT_PEERING` and `PRIVATE_SERVICE_ACCESS`.
	ConnectMode pulumi.StringPtrInput
	// The time the instance was created in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
	CreateTime pulumi.StringPtrInput
	// The current zone where the Redis endpoint is placed. For Basic Tier instances, this will always be the same as the
	// [locationId] provided by the user at creation time. For Standard Tier instances, this can be either [locationId] or
	// [alternativeLocationId] and can change after a failover event.
	CurrentLocationId pulumi.StringPtrInput
	// An arbitrary and optional user-provided name for the instance.
	DisplayName pulumi.StringPtrInput
	// Hostname or IP address of the exposed Redis endpoint used by clients to connect to the service.
	Host pulumi.StringPtrInput
	// Resource labels to represent user provided metadata.
	Labels pulumi.StringMapInput
	// The zone where the instance will be provisioned. If not provided,
	// the service will choose a zone for the instance. For STANDARD_HA tier,
	// instances will be created across two zones for protection against
	// zonal failures. If [alternativeLocationId] is also provided, it must
	// be different from [locationId].
	LocationId pulumi.StringPtrInput
	// Redis memory size in GiB.
	MemorySizeGb pulumi.IntPtrInput
	// The ID of the instance or a fully qualified identifier for the instance.
	Name pulumi.StringPtrInput
	// Output only. Cloud IAM identity used by import / export operations to transfer data to/from Cloud Storage. Format is
	// "serviceAccount:". The value may change over time for a given instance so should be checked before each import/export
	// operation.
	PersistenceIamIdentity pulumi.StringPtrInput
	// The port number of the exposed Redis endpoint.
	Port pulumi.IntPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// Redis configuration parameters, according to http://redis.io/topics/config.
	// Please check Memorystore documentation for the list of supported parameters:
	// https://cloud.google.com/memorystore/docs/redis/reference/rest/v1/projects.locations.instances#Instance.FIELDS.redis_configs
	RedisConfigs pulumi.StringMapInput
	// The version of Redis software. If not provided, latest supported
	// version will be used. Currently, the supported values are:
	// - REDIS_5_0 for Redis 5.0 compatibility
	// - REDIS_4_0 for Redis 4.0 compatibility
	// - REDIS_3_2 for Redis 3.2 compatibility
	RedisVersion pulumi.StringPtrInput
	// The name of the Redis region of the instance.
	Region pulumi.StringPtrInput
	// The CIDR range of internal addresses that are reserved for this
	// instance. If not provided, the service will choose an unused /29
	// block, for example, 10.0.0.0/29 or 192.168.0.0/29. Ranges must be
	// unique and non-overlapping with existing subnets in an authorized
	// network.
	ReservedIpRange pulumi.StringPtrInput
	// List of server CA certificates for the instance.
	ServerCaCerts InstanceServerCaCertArrayInput
	// The service tier of the instance. Must be one of these values:
	// - BASIC: standalone instance
	// - STANDARD_HA: highly available primary/replica instances
	//   Default value is `BASIC`.
	//   Possible values are `BASIC` and `STANDARD_HA`.
	Tier pulumi.StringPtrInput
	// The TLS mode of the Redis instance, If not provided, TLS is disabled for the instance.
	// - SERVER_AUTHENTICATION: Client to Server traffic encryption enabled with server authentcation
	//   Default value is `DISABLED`.
	//   Possible values are `SERVER_AUTHENTICATION` and `DISABLED`.
	TransitEncryptionMode pulumi.StringPtrInput
}

func (InstanceState) ElementType

func (InstanceState) ElementType() reflect.Type

type LookupInstanceArgs

type LookupInstanceArgs struct {
	// The name of a Redis instance.
	Name string `pulumi:"name"`
	// The project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project *string `pulumi:"project"`
	// The region in which the resource belongs. If it
	// is not provided, the provider region is used.
	Region *string `pulumi:"region"`
}

A collection of arguments for invoking getInstance.

type LookupInstanceResult

type LookupInstanceResult struct {
	AlternativeLocationId string `pulumi:"alternativeLocationId"`
	AuthEnabled           bool   `pulumi:"authEnabled"`
	AuthString            string `pulumi:"authString"`
	AuthorizedNetwork     string `pulumi:"authorizedNetwork"`
	ConnectMode           string `pulumi:"connectMode"`
	CreateTime            string `pulumi:"createTime"`
	CurrentLocationId     string `pulumi:"currentLocationId"`
	DisplayName           string `pulumi:"displayName"`
	Host                  string `pulumi:"host"`
	// The provider-assigned unique ID for this managed resource.
	Id                     string                    `pulumi:"id"`
	Labels                 map[string]string         `pulumi:"labels"`
	LocationId             string                    `pulumi:"locationId"`
	MemorySizeGb           int                       `pulumi:"memorySizeGb"`
	Name                   string                    `pulumi:"name"`
	PersistenceIamIdentity string                    `pulumi:"persistenceIamIdentity"`
	Port                   int                       `pulumi:"port"`
	Project                *string                   `pulumi:"project"`
	RedisConfigs           map[string]string         `pulumi:"redisConfigs"`
	RedisVersion           string                    `pulumi:"redisVersion"`
	Region                 *string                   `pulumi:"region"`
	ReservedIpRange        string                    `pulumi:"reservedIpRange"`
	ServerCaCerts          []GetInstanceServerCaCert `pulumi:"serverCaCerts"`
	Tier                   string                    `pulumi:"tier"`
	TransitEncryptionMode  string                    `pulumi:"transitEncryptionMode"`
}

A collection of values returned by getInstance.

func LookupInstance

func LookupInstance(ctx *pulumi.Context, args *LookupInstanceArgs, opts ...pulumi.InvokeOption) (*LookupInstanceResult, error)

Get info about a Google Cloud Redis instance.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/redis"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		myInstance, err := redis.LookupInstance(ctx, &redis.LookupInstanceArgs{
			Name: "my-redis-instance",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("instanceMemorySizeGb", myInstance.MemorySizeGb)
		ctx.Export("instanceConnectMode", myInstance.ConnectMode)
		ctx.Export("instanceAuthorizedNetwork", myInstance.AuthorizedNetwork)
		return nil
	})
}

```

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL