How we work
Our way of operating the platform is designed so that you can trust it:
nothing changes in your environment without being logged, reviewed, and
reversible.
Declarative, versioned configuration
We don't manage your environments by hand. We describe the desired state of
each environment (what runs, with what configuration, with what resources) in
a version-controlled repository, and the platform takes care of converging
automatically toward that state.
This means that:
- Every change is logged: who made it, when, and why.
- Every change is reviewable before it's applied.
- Every change is reversible: going back to a previous state means going
back to a previous version of the configuration.
- There's no "ghost configuration": the real state of the environment is
continuously compared against the declared state, and any drift is
detected.
Why it matters to you
On a manually operated platform, undocumented changes are the leading
cause of incidents and the nightmare of any audit. By working in a
declarative, versioned way, traceability is total and recovery from a
faulty change is immediate.
Infrastructure as code
The infrastructure itself (networks, capacity, environments) is also defined
as code. Provisioning a new environment or rebuilding an existing one is a
repeatable and auditable process, not a sequence of manual steps that
could vary from one time to the next.
Principle of least privilege
People and systems only have the permissions strictly necessary for their
function. Administrative access is restricted, strongly authenticated, and
logged. See Access control.
Separation of duties
Platform operation is separated from your application's development, and
test environments are separated from production. A change goes through the
appropriate stages before reaching your production environment.