67 lines
No EOL
2.1 KiB
Markdown
67 lines
No EOL
2.1 KiB
Markdown
# Module for creating Postgres Flex Instance with Databases and Users
|
|
|
|
## Example
|
|
|
|
```main.tf
|
|
|
|
# Postgres Flex Instance
|
|
module "postgres-flex" {
|
|
source = "git::https://commerce-platform.git.onstackit.cloud/commerce-platform-public/terraform-modules//postgres?ref=main
|
|
stackit_project_id = local.stackit_project_id
|
|
postgres_instance_name = "example-db"
|
|
postgres_instance_replicas = 1
|
|
postgres_instance_storage = {
|
|
class = "premium-perf2-stackit"
|
|
size = 5
|
|
}
|
|
|
|
postgres_instance_flavor = {
|
|
cpu = 2
|
|
ram = 4
|
|
}
|
|
|
|
postgres_instance_acl = [
|
|
"193.148.160.0/19",
|
|
"45.129.40.0/21"
|
|
]
|
|
|
|
postgres_instance_backup_schedule = "00 02 * * *"
|
|
postgres_instance_version = "17"
|
|
postgres_instance_region = "eu01"
|
|
|
|
postgres_databases = [
|
|
{
|
|
db_name = "database-a"
|
|
user_name = "user-a"
|
|
user_roles = ["createdb", "login"]
|
|
},
|
|
{
|
|
db_name = "database-b"
|
|
user_name = "user-b"
|
|
user_roles = ["createdb", "login"]
|
|
},
|
|
]
|
|
}
|
|
|
|
# safe credentials
|
|
module "postgres-credentials-sm-a" {
|
|
source = "git::https://commerce-platform.git.onstackit.cloud/commerce-platform-public/terraform-modules//create-secret?ref=main"
|
|
secret_manager_instance_id = local.secret_manager_instance_id
|
|
secret_manager_username = var.secret_manager_username
|
|
secret_manager_password = var.secret_manager_password
|
|
|
|
secrets_path = "service-a/postgres"
|
|
secret_data = module.postgres-flex.postgres_credentials["user-a"]
|
|
}
|
|
|
|
module "postgres-credentials-sm-b" {
|
|
source = "git::https://commerce-platform.git.onstackit.cloud/commerce-platform-public/terraform-modules//create-secret?ref=main"
|
|
secret_manager_instance_id = local.secret_manager_instance_id
|
|
secret_manager_username = var.secret_manager_username
|
|
secret_manager_password = var.secret_manager_password
|
|
|
|
secrets_path = "service-b/postgres"
|
|
secret_data = module.postgres-flex.postgres_credentials["user-b"]
|
|
}
|
|
|
|
``` |