Application/DB
| Field |
Value |
| Purpose |
Defines database application configuration — engine, authentication, databases to create |
| Repo |
AmadlaOrg/Entities/Application/DB |
| Entity URI |
amadla.org/entity/application/db@v1.0.0 |
| Parent type |
Application |
Schema
Application/DB describes database requirements:
- Database engine (postgresql, mysql, mariadb, mongodb, redis, sqlite)
- Engine version
- Listening port and data directory
- Max connections
- Authentication method and admin credentials (password via doorman secret)
- Databases to create (name, owner, encoding)
- Engine-specific config overrides
Example
_type: amadla.org/entity/application/db@v1.0.0
_body:
engine: postgresql
version: "16"
port: 5432
data_dir: /var/lib/postgresql/16/main
max_connections: 200
authentication:
method: scram-sha-256
admin_user: postgres
admin_password_secret: db/postgres/admin-password
databases:
- name: my_app
owner: app_user
encoding: UTF8
- name: my_app_test
owner: app_user
config:
shared_buffers: "256MB"
work_mem: "16MB"
max_wal_size: "1GB"
Consumers
| Tool |
How It Uses Application/DB |
| lay |
Installs and configures the database engine |
| doorman |
Resolves admin_password_secret |
| weaver |
Generates database configuration files |
| judge-application |
Validates database is installed and running correctly |
Sub-types
| Sub-type |
Purpose |
| DB/RDBMS |
Relational-specific: migrations, replication, backup, connection pooling |