Skip to content

Releases & Deployments ​

A release is a versioned bundle of code and configuration that the Console ships to instances. Releases are the only mechanism the Console uses to change what is running on instances — there are no out-of-band updates.

Release types ​

TypeWhat it isVersioning
FeatureA planned change that updates one or more services to new Docker images.Semantic version. You pick patch / minor / major when creating.
HotfixA critical fix that bypasses the normal queue. Hotfixes auto-deploy and pause pending feature releases on the same line.Always a patch bump, regardless of input.
ConfigEnvironment-variable changes only. No service image changes.Auto-incrementing counter (Config #1, #2, …).

A Config release will be rejected if the preview shows no environment delta against the last deployed state — there is nothing to ship.

Anatomy of a release ​

A release contains:

  • A set of services with target Docker images (for Feature and Hotfix).
  • The environment variables in effect, captured as a snapshot. Changes since the last release are computed as create / update / delete deltas.
  • A release notes rich-text document (required for Feature and Hotfix, optional for Config). These are what customers see in the Changelog.
  • The initiator, created time, deployed time, and completed time.

The pipeline ​

The pipeline is configured globally on the Release Configuration page. It defines:

  • Stages — an ordered sequence (Stage 01, Stage 02, …). Each stage groups one or more environments.
  • Parallel environments — environments in the same stage deploy together.
  • Managed services — the services the pipeline operates on. Services not listed are ignored.
  • Approval mode — Disabled, All Instance SPOCs, or Any Instance SPOC.
  • DevOps trigger — optional extra gate that requires an explicit trigger after approval.
  • SLA thresholds — reminder, escalation, and stalled times (days for normal releases, hours for hotfixes).
  • Escalation contacts — who gets paged if a release sits too long.

Release lifecycle ​

draft ──▶ in_progress ──▶ completed
                  │
                  ├──▶ paused ──▶ in_progress
                  │
                  ├──▶ failed ─┐
                  │            ├──▶ archived
                  ├──▶ rolled_back ─┤
                  │            │
                  └──▶ cancelled ──┘
  • Draft. Created but not yet deployed. The author can review and click Deploy when ready.
  • In Progress. Flowing through stages. Stages may show as pending, deploying, awaiting_approval, awaiting_trigger, deployed, failed, skipped, or rolled_back.
  • Paused. Awaiting human action — either an approval, a trigger, or a manual hold.
  • Completed. All stages succeeded.
  • Failed / Rolled Back / Cancelled. Terminal states. The release can be archived to keep the list clean.
  • Archived. Hidden from the default Releases view. Within 30 days of archival the release can be unarchived; after that, per-service configuration, environment-version pins, and logs are permanently purged.

Release pipeline in actionRelease pipeline in action

Stages, approvals, and triggers ​

For each stage, the Console shows which environments and instances are involved, and surfaces the action you need to take:

  • Approve — if the stage is in awaiting_approval and you are a SPOC for any of the affected instances.
  • Trigger — if the stage is in awaiting_trigger (DevOps gate enabled) and you have permission.
  • Retry / Skip / Rollback — per-instance actions in the Instance Deployments section.

Approvals are recorded with the SPOC's identity and a timestamp. Triggers and rollbacks are recorded the same way. The full activity log on the release detail page is the source of truth.

What customers see ​

Customers do not see the pipeline. They see the Changelog — a curated list of completed releases with their release notes, grouped by month. Config releases without notes are excluded. Customers reach the changelog from the Customer Portal sidebar ("What's New").