Feature teams
Get a database without a ticket
Add a postgres entry to your joomiz.yaml. Joomiz asks the provisioner your platform team registered to create the database. Your application gets the password as a reference, not as text.
With Joomiz
-
Declare the database
Add a managed resource of type
postgresto an environment. The schema of the type lists the settings you may write: flavor, version, storage-gb and multi-az.joomiz.yaml # A database that Joomiz creates and owns for this service. managed-resources: - id: shop-db type: postgres spec: flavor: cf-plan-small version: "16" storage-gb: 20 multi-az: false -
Reference the password
In the
envsetting of your deployment, write a reference to thepasswordoutput of the database. The file never holds the password.joomiz.yaml env: # A reference, not a password. ... DB_PASSWORD: "${{managed-resources.shop-db.outputs.password}}" -
Preview the change
joomiz planchanges nothing. It lists the database first. The password shows as(known after apply), because the database does not exist yet.$ joomiz plan --environment test managed-resource/postgres: succeeded — Planned 1 change ... shop-db (created): succeeded — Would create 'shop-db' ... deployment/cloud-foundry-app: succeeded — Planned 1 change ... shop-test-deployment (updated): succeeded — Would update ... env.DB_PASSWORD: (known after apply) -
Apply the change
joomiz applyasks the provisioner to create the database. Your application receives the address of the secret, not the secret itself.$ joomiz apply --environment test managed-resource/postgres: succeeded — Applied 1 change ... shop-db (created): succeeded — Created 'shop-db' ... apply succeeded (plan 791d8513-..., apply 5970e5ee-...)
What you get
- A database from one reviewed change to a file, not from a ticket queue.
- A password that never appears in the file, the plan or the apply output.
- The same request for the next environment, written in the same file.
The rules that still hold
- The catalog schema sets the allowed settings. For example,
storage-gbmust be from 1 to 65536. - You act only for your own team. Other teams' applications are refused.
- Only one apply runs at a time for each application and environment.
Read more in the docs
Related use cases
Talk to us
Tell us about your platform and the services your teams ship.