Variables & Configuration

Shared variables, instance variables, references, and environment snapshots

Variables & Configuration

Parslinks has two levels of configuration, both managed in the catalog:

Shared (project) variables

Defined once on the project and available to services that reference them. Use these for values shared across your stack: third-party API keys, feature flags, endpoints of sibling services.

Instance variables

Set per instance (service × environment). This is where environment-specific values live — the production instance points at the production database, the preview instance at a preview one.

Values are encrypted at rest and injected into every replica of that instance.

References

A variable can reference another variable instead of holding a literal:

  • An instance variable referencing a shared project variable
  • References to outputs of resource services (e.g. the connection string of a managed Postgres service in the same project)

References are resolved when the deployment's environment snapshot is taken — see below.

Environment snapshots

When a deployment reaches READY it freezes an environment snapshot: the exact set of variable values that deployment runs with. Because deployments are immutable, changing a variable never alters a running release — it takes effect on the next deploy.

This is what makes rollbacks truly complete: rolling back restores not just the old code but also the old variable values.

Precedence

  1. Instance variables (most specific)
  2. Referenced shared variables
  3. Platform-injected defaults (e.g. PORT)

Secrets handling

Variable values write-once in the dashboard UI: they're stored encrypted and never displayed back in full after saving. Rotate by overwriting with a new value and redeploying the instances that use it.