
terraform-aws-arc-postgresql-mgmt¶
Module:
sourcefuse/arc-postgresql-mgmt/awsRegistry: https://registry.terraform.io/modules/sourcefuse/arc-postgresql-mgmt/aws
Category: Database / Management
Source: https://github.com/sourcefuse/terraform-aws-arc-postgresql-mgmt
Overview¶
Manages PostgreSQL databases, roles, schemas, and grants on an existing RDS or Aurora PostgreSQL instance using the PostgreSQL Terraform provider.
What It Does¶
- Database creation on existing PostgreSQL server
- Role and user management with password rotation
- Schema creation and ownership
- Fine-grained privilege grants
- Secrets Manager integration for credentials
Usage¶
required_providers {
postgresql = {
version = "~> 1.21"
source = "cyrilgdn/postgresql"
}
aws = {
version = "~> 5.0"
source = "hashicorp/aws"
}
}
Quickstart¶
Required Inputs¶
| Name | Type | Description |
|---|---|---|
db_host |
string |
PostgreSQL host endpoint |
db_port |
number |
PostgreSQL port |
db_username |
string |
Admin username |
db_password |
string |
Admin password |
| ## Key Outputs |
| Name | Description |
|---|---|
database_names |
List of created database names |
role_names |
List of created role names |
| ## Full Variable & Output Reference |
The complete inputs/outputs reference is auto-generated below.
Requirements¶
| Name | Version |
|---|---|
| terraform | ~> 1.3, < 2.0.0 |
| aws | ~> 5.0, < 6.0 |
| postgresql | ~> 1.21 |
Providers¶
| Name | Version |
|---|---|
| aws | 5.28.0 |
| postgresql | 1.21.0 |
Modules¶
No modules.
Resources¶
| Name | Type |
|---|---|
| aws_ssm_parameter.this | resource |
| postgresql_database.pg_db | resource |
| postgresql_default_privileges.pg_default_privileges | resource |
| postgresql_role.pg_role | resource |
| postgresql_schema.pg_schema | resource |
Inputs¶
| Name | Description | Type | Default | Required |
|---|---|---|---|---|
| pg_roles | A map of objects where each key-value pair represents a PostgreSQL role | map(object({ |
n/a | yes |
| pg_ssm_parameters | postgresql SSM parameters | map(object({ |
n/a | yes |
| postgresql_database | A map where each key-value pair represents a PostgreSQL database configuration | map(object({ |
n/a | yes |
| postgresql_default_privileges | configuration block for postgresql default privileges | map(object({ |
n/a | yes |
| postgresql_schema | configuration block for postgresql schema | map(object({ |
n/a | yes |
Outputs¶
| Name | Description |
|---|---|
| arn | ARN of the parameter |
Development¶
Prerequisites¶
Configurations¶
- Configure pre-commit hooks
Git commits¶
while Contributing or doing git commit please specify the breaking change in your commit message whether its major,minor or patch
For Example
Tests¶
- Tests are available in
testdirectory - Configure the dependencies
- Now execute the test
Contributing¶
See CONTRIBUTING.md for commit conventions and development setup.
Authors¶
This project is authored by:
- SourceFuse ARC Team