Environments
Development, QA and Production, each with its own database and release version.
Every application has environments in sequence: Development first, then QA and Production. Each environment has:
- its own database connection, PostgreSQL or SQL Server;
- a pinned release version for its definitions;
- its own users and roles, synchronised from the identity service.
Definitions are edited in Development only. Later environments receive them through releases.
Environments
An environment is a stage in an app's path to its users. Every app has at least two, and each has a sequence number that sets the promotion order, so changes move one stage at a time and stages are not skipped. A typical app uses:
| Environment | Used for |
|---|---|
| Development | Where you and your team build and change the app. Publishing an item writes it here. |
| QA (test) | Where a release is checked against realistic data before users see it. |
| Production | Where your customers work. |
The names and number of environments are configured per app. Each environment has its own database connection, so test data never mixes with live records.
Versions of configuration
Configuration you build lives at the development version. When a release is applied, the platform writes a complete snapshot of the app's configuration under the release number: the items you selected come from Development, and everything you did not select is carried over from the previous release. Each environment records which release it is running.
When the platform resolves an item for a request, it looks for the version the environment is running and falls back to the development version only if no released version exists.