Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
161 changes: 78 additions & 83 deletions metadata.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ spec:
version: 11.1.0
actuationTool:
flavor: Terraform
version: ">= 0.13"
version: ">= 1.3"
description: {}
content:
subBlueprints:
Expand All @@ -48,41 +48,81 @@ spec:
location: examples/redis-cluster
interfaces:
variables:
- name: alternative_location_id
description: The alternative zone where the instance will be provisioned.
- name: region
description: The GCP region to use.
varType: string
- name: auth_enabled
description: Indicates whether OSS Redis AUTH is enabled for the instance. If set to true AUTH is enabled on the instance.
- name: project
description: The ID of the project in which the resource belongs to.
varType: string
required: true
- name: enable_apis
description: Flag for enabling redis.googleapis.com in your project
varType: bool
defaultValue: false
defaultValue: true
- name: name
description: The ID of the instance or a fully qualified identifier for the instance.
varType: string
required: true
- name: authorized_network
description: The full name of the Google Compute Engine network to which the instance is connected. If left unspecified, the default network will be used.
varType: string
connections:
- source:
source: github.com/terraform-google-modules/terraform-google-network//modules/vpc
version: v9.1.0
spec:
outputExpr: network_name
- name: connect_mode
description: The connection mode of the Redis instance. Can be either DIRECT_PEERING or PRIVATE_SERVICE_ACCESS. The default connect mode if not provided is DIRECT_PEERING.
- source:
source: github.com/terraform-google-modules/terraform-google-network//modules/vpc
version: v9.1.0
spec:
outputExpr: network_name
- name: tier
description: The service tier of the instance. https://cloud.google.com/memorystore/docs/redis/reference/rest/v1/projects.locations.instances#Tier
varType: string
- name: customer_managed_key
description: Default encryption key to apply to the Redis instance. Defaults to null (Google-managed).
defaultValue: STANDARD_HA
- name: memory_size_gb
description: Redis memory size in GiB. Defaulted to 1 GiB
varType: number
defaultValue: 1
- name: replica_count
description: The number of replicas. can
varType: number
- name: read_replicas_mode
description: "Read replicas mode. https://cloud.google.com/memorystore/docs/redis/reference/rest/v1/projects.locations.instances#readreplicasmode "
varType: string
defaultValue: READ_REPLICAS_DISABLED
- name: location_id
description: 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].
varType: string
- name: alternative_location_id
description: The alternative zone where the instance will be provisioned.
varType: string
- name: redis_version
description: The version of Redis software.
varType: string
- name: redis_configs
description: The Redis configuration parameters. See [more details](https://cloud.google.com/memorystore/docs/redis/reference/rest/v1/projects.locations.instances#Instance.FIELDS.redis_configs)
varType: map(any)
defaultValue: {}
- name: display_name
description: An arbitrary and optional user-provided name for the instance.
varType: string
- name: enable_apis
description: Flag for enabling redis.googleapis.com in your project
varType: bool
defaultValue: true
- name: reserved_ip_range
description: The CIDR range of internal addresses that are reserved for this instance.
varType: string
- name: secondary_ip_range
description: Optional. Additional IP range for node placement. Required when enabling read replicas on an existing instance.
varType: string
- name: connect_mode
description: The connection mode of the Redis instance. Can be either DIRECT_PEERING or PRIVATE_SERVICE_ACCESS. The default connect mode if not provided is DIRECT_PEERING.
varType: string
- name: labels
description: The resource labels to represent user provided metadata.
varType: map(string)
- name: location_id
description: 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].
- name: auth_enabled
description: Indicates whether OSS Redis AUTH is enabled for the instance. If set to true AUTH is enabled on the instance.
varType: bool
defaultValue: false
- name: transit_encryption_mode
description: The TLS mode of the Redis instance, If not provided, TLS is enabled for the instance.
varType: string
defaultValue: SERVER_AUTHENTICATION
- name: maintenance_policy
description: The maintenance policy for an instance.
varType: |-
Expand All @@ -95,56 +135,16 @@ spec:
nanos = number
})
})
- name: memory_size_gb
description: Redis memory size in GiB. Defaulted to 1 GiB
varType: number
defaultValue: 1
- name: name
description: The ID of the instance or a fully qualified identifier for the instance.
- name: customer_managed_key
description: Default encryption key to apply to the Redis instance. Defaults to null (Google-managed).
varType: string
required: true
- name: persistence_config
description: The Redis persistence configuration parameters. https://cloud.google.com/memorystore/docs/redis/reference/rest/v1/projects.locations.instances#persistenceconfig
varType: |-
object({
persistence_mode = string
rdb_snapshot_period = string
})
- name: project
description: The ID of the project in which the resource belongs to.
varType: string
required: true
- name: read_replicas_mode
description: "Read replicas mode. https://cloud.google.com/memorystore/docs/redis/reference/rest/v1/projects.locations.instances#readreplicasmode "
varType: string
defaultValue: READ_REPLICAS_DISABLED
- name: redis_configs
description: The Redis configuration parameters. See [more details](https://cloud.google.com/memorystore/docs/redis/reference/rest/v1/projects.locations.instances#Instance.FIELDS.redis_configs)
varType: map(any)
defaultValue: {}
- name: redis_version
description: The version of Redis software.
varType: string
- name: region
description: The GCP region to use.
varType: string
- name: replica_count
description: The number of replicas. can
varType: number
- name: reserved_ip_range
description: The CIDR range of internal addresses that are reserved for this instance.
varType: string
- name: secondary_ip_range
description: Optional. Additional IP range for node placement. Required when enabling read replicas on an existing instance.
varType: string
- name: tier
description: The service tier of the instance. https://cloud.google.com/memorystore/docs/redis/reference/rest/v1/projects.locations.instances#Tier
varType: string
defaultValue: STANDARD_HA
- name: transit_encryption_mode
description: The TLS mode of the Redis instance, If not provided, TLS is enabled for the instance.
varType: string
defaultValue: SERVER_AUTHENTICATION
outputs:
- name: auth_string
description: AUTH String set on the instance. This field will only be populated if auth_enabled is true.
Expand All @@ -154,13 +154,10 @@ spec:
type: string
- name: env_vars
description: Exported environment variables
type: [
"object",
{
"REDIS_HOST": "string",
"REDIS_PORT": "number"
}
]
type:
- object
- REDIS_HOST: string
REDIS_PORT: number
- name: host
description: The IP address of the instance.
type: string
Expand All @@ -181,19 +178,14 @@ spec:
type: string
- name: server_ca_certs
description: List of server CA certificates for the instance
type: [
"list",
[
"object",
{
"cert": "string",
"create_time": "string",
"expire_time": "string",
"serial_number": "string",
"sha1_fingerprint": "string"
}
]
]
type:
- list
- - object
- cert: string
create_time: string
expire_time: string
serial_number: string
sha1_fingerprint: string
requirements:
roles:
- level: Project
Expand All @@ -207,3 +199,6 @@ spec:
- serviceconsumermanagement.googleapis.com
- networkconnectivity.googleapis.com
- compute.googleapis.com
providerVersions:
- source: hashicorp/google
version: ">= 4.74.0, < 7"