activation_policy |
The activation policy for the master instance.Can be either ALWAYS , NEVER or ON_DEMAND . |
string |
"ALWAYS" |
no |
additional_databases |
A list of databases to be created in your cluster |
list(object({ name = string charset = string collation = string })) |
[] |
no |
additional_users |
A list of users to be created in your cluster |
list(object({ name = string password = string })) |
[] |
no |
availability_type |
The availability type for the master instance.This is only used to set up high availability for the PostgreSQL instance. Can be either ZONAL or REGIONAL . |
string |
"ZONAL" |
no |
backup_configuration |
The backup_configuration settings subblock for the database setings |
object({ enabled = bool start_time = string location = string point_in_time_recovery_enabled = bool transaction_log_retention_days = string retained_backups = number retention_unit = string }) |
{ "enabled": false, "location": null, "point_in_time_recovery_enabled": false, "retained_backups": null, "retention_unit": null, "start_time": null, "transaction_log_retention_days": null } |
no |
create_timeout |
The optional timout that is applied to limit long database creates. |
string |
"15m" |
no |
database_flags |
The database flags for the master instance. See more details |
list(object({ name = string value = string })) |
[] |
no |
database_version |
The database version to use |
string |
n/a |
yes |
db_charset |
The charset for the default database |
string |
"" |
no |
db_collation |
The collation for the default database. Example: 'en_US.UTF8' |
string |
"" |
no |
db_name |
The name of the default database to create |
string |
"default" |
no |
delete_timeout |
The optional timout that is applied to limit long database deletes. |
string |
"15m" |
no |
deletion_protection |
Used to block Terraform from deleting a SQL Instance. |
bool |
true |
no |
disk_autoresize |
Configuration to increase storage size. |
bool |
true |
no |
disk_autoresize_limit |
The maximum size to which storage can be auto increased. |
number |
0 |
no |
disk_size |
The disk size for the master instance. |
number |
10 |
no |
disk_type |
The disk type for the master instance. |
string |
"PD_SSD" |
no |
enable_default_db |
Enable or disable the creation of the default database |
bool |
true |
no |
enable_default_user |
Enable or disable the creation of the default user |
bool |
true |
no |
encryption_key_name |
The full path to the encryption key used for the CMEK disk encryption |
string |
null |
no |
iam_user_emails |
A list of IAM users to be created in your cluster |
list(string) |
[] |
no |
insights_config |
The insights_config settings for the database. |
object({ query_string_length = number record_application_tags = bool record_client_address = bool }) |
null |
no |
ip_configuration |
The ip configuration for the master instances. |
object({ authorized_networks = list(map(string)) ipv4_enabled = bool private_network = string require_ssl = bool allocated_ip_range = string }) |
{ "allocated_ip_range": null, "authorized_networks": [], "ipv4_enabled": true, "private_network": null, "require_ssl": null } |
no |
maintenance_window_day |
The day of week (1-7) for the master instance maintenance. |
number |
1 |
no |
maintenance_window_hour |
The hour of day (0-23) maintenance window for the master instance maintenance. |
number |
23 |
no |
maintenance_window_update_track |
The update track of maintenance window for the master instance maintenance.Can be either canary or stable . |
string |
"canary" |
no |
module_depends_on |
List of modules or resources this module depends on. |
list(any) |
[] |
no |
name |
The name of the Cloud SQL resources |
string |
n/a |
yes |
pricing_plan |
The pricing plan for the master instance. |
string |
"PER_USE" |
no |
project_id |
The project ID to manage the Cloud SQL resources |
string |
n/a |
yes |
random_instance_name |
Sets random suffix at the end of the Cloud SQL resource name |
bool |
false |
no |
read_replica_deletion_protection |
Used to block Terraform from deleting replica SQL Instances. |
bool |
false |
no |
read_replica_name_suffix |
The optional suffix to add to the read instance name |
string |
"" |
no |
read_replicas |
List of read replicas to create. Encryption key is required for replica in different region. For replica in same region as master set encryption_key_name = null |
list(object({ name = string tier = string availability_type = string zone = string disk_type = string disk_autoresize = bool disk_autoresize_limit = number disk_size = string user_labels = map(string) database_flags = list(object({ name = string value = string })) ip_configuration = object({ authorized_networks = list(map(string)) ipv4_enabled = bool private_network = string require_ssl = bool allocated_ip_range = string }) encryption_key_name = string })) |
[] |
no |
region |
The region of the Cloud SQL resources |
string |
"us-central1" |
no |
tier |
The tier for the master instance. |
string |
"db-f1-micro" |
no |
update_timeout |
The optional timout that is applied to limit long database updates. |
string |
"15m" |
no |
user_labels |
The key/value labels for the master instances. |
map(string) |
{} |
no |
user_name |
The name of the default user |
string |
"default" |
no |
user_password |
The password for the default user. If not set, a random one will be generated and available in the generated_user_password output variable. |
string |
"" |
no |
zone |
The zone for the master instance, it should be something like: us-central1-a , us-east1-c . |
string |
n/a |
yes |