All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- hardcoded
log_min_duration_statement
from database_flags
- ability to override
database_flags
andenable_query_insights
on read replica basis
default_dbname_override
parameter allowing to override default database name
name_override
parameter allowing to define final instance namepassword_special
paramater allowing to create Cloud SQL users password without special characters
provision_kubernetes_resources
variable, which, when set to false, allows us to provision instance without Kubernetes resources. This is useful, for example, when provisioning Postgres to project with Cloud Run.
- secondary location preference variable for HA instance
- disk autoresize parameters
- custom service account name parameter
- kubernetes service name parameter
- read replica ip address output
- transaction log retention limit
- user labels to the cloud sql instance
- unused providers definition
- Add
deletion_protection
input variable
- Remove of
enable_local_access
due to usage of (GoCloud
)[https://registry.terraform.io/providers/cyrilgdn/postgresql/latest/docs#gocloud]
- Add connection name to output
- CloudSQL query insights configuration for read replicas
- Read replica must have ZONAL availability zone
- Parameterize hardcoded variables
- Point-in-time recovery configuration
- User suffix appended after automatically generated suffix
- Remove
load_config_file
parameter fromkubernetes
provider - this allows its upgrade to version 2 - Bump
kubernetes
provider version in example
- CloudSQL query insights configuration
- Change README usage description
- Cluster master username, password
- Cluster master auth token
- Required Terraform version bumped to 0.13
- Changed
google_project_service
to do not disable the service on destroy
- Parameter
authorized_networks
allows to add auth-networks on read replicas.
- Add input variable
database_flags
to enable Cloud SQL flags
- Array parameter
read_replicas
allows creation of CloudSQL read replicas. - Parameter
db_version
to specify version of Postgres deployed
- Set example GKE
cluster_name
parameter topostgresql-cluster-test
, so it does not collide with other clusters in project - Set example Postgres instance parameter
sqlproxy_dependencies
tofalse
, because we are no longer using SQLProxy for internal connections - Set example Postgres instance parameter
public_ip
totrue
, soauthorized_networks
parameter is applicable
- Remove providers locking - this should be done in main module in infrastructure repo from now on.
- Add locking to
example/main.tf
- Remove executable permissions from
example/spinup_testing.sh
- it should never be run directly, but must be used withsource
cmd
- Upgrade random provider lock to
~> 2.3.0
- Add parameter
sqlproxy_dependencies
which controls if we create SQLProxy dependencies - GCP IAM SA, Kubernetes secret and Kubernetes Service
- Fix Kubernetes Service copypaste fail - Postgres uses port 5432
- Add authorized networks as a module parameter to allow external public connections
- Add public ip to enable access to psql for external terraform provider
- Add a k8s service named
cloudsql
ifvar.private_ip
is set totrue
targeting the private IP address of Cloud SQL instance. Prefer this setting if your use-case allows that instead of the Cloud SQL proxy.
- Add pre-commit hooks for automatic documentation
- Add description on outputs and variables
- Add example on how to use the module
- Upgrade Google GA provider lock to
~> 3.19.0
. Note: this upgrade should need upgrade of other TF modules to satisfy same version ofgoogle
provider. For compatible versions, see: https://redmine.ack.ee/issues/43227#note-11
- Upgrade Kubernetes provider version lock to
~> 1.11.0
, to maintain compatibility with terraform-gke-vpc module
- trim account name to 30 characters
- fix SA name
- set maximum lenght of sql proxy account name to 30 characters
- fix vault config
- add required
vault_secret_path
parameter - lock google provider
- log slow queries
- improve service account name
- remove random suffix from service account name
- remove unused name parameter
- upgrade to Terraform 0.12
- fix postgres database name
- initial release