Back to changelog
AppsSecrets·

App configuration files, validated in your editor

Commit a .datablock/app.yaml, link your stored secrets and variables from it, and fill the deploy wizard in with one click. The format is now published as a JSON Schema your editor can check as you type.

A .datablock/app.yaml in your repository describes how your app is built and run — the source directory, build and start commands, ports, instance size, and environment variables. When you select the repository in the deploy wizard, the file is read and offered as a one-click fill of the form. This release makes it a format you can rely on.

Your editor now checks the file

The format is published as a JSON Schema at https://cosmoner.com/schemas/app.schema.json. Point your editor at it and you get completion for every field, a description on hover, and an error on a mistyped key — before you commit anything.

Add one comment to the top of the file:

# yaml-language-server: $schema=https://cosmoner.com/schemas/app.schema.json
services:
  - name: api

Environment variables can now point at entries you already store with us, by name:

envs:
  - key: API_URL
    from_variable: PUBLIC_API_URL
  - key: DATABASE_URL
    from_secret: DATABASE_URL

A linked secret's value stays in the vault. It is not written into the file, not shown in the wizard, and not returned by the API — it is read when your app deploys, and the link keeps working after you rotate the secret. A new top-level environment field says which environment the names are resolved against.

If a name has no matching entry in your project, the wizard tells you which one is missing rather than deploying without it.

Committing a secret value is now refused outright: a variable that sets both a value and secret: true fails validation, and nothing from the file is applied.

Nothing is filled in without you

Selecting a repository used to apply the file to the form straight away, which could overwrite settings you had just typed. Now the wizard says the file was detected and offers Fill in from file — you decide, and every setting stays editable afterwards.

See App Configuration Files for the full reference.