Skip to content

Maintenance Mode

Maintenance mode allows platform administrators to temporarily put the platform in a restricted state during planned upgrades or outages.

Maintenance mode is configured through the Helm chart’s global values:

values.yaml
global:
maintenance:
enabled: false
banner:
message:
variant: "info"
PropertyTypeDefaultDescription
global.maintenance.enabledbooleanfalseWhether maintenance mode is enabled.
global.maintenance.banner.messagestringThe message displayed to users. Leave unset to hide the banner.
global.maintenance.banner.variantstring"info"The severity of the banner. Can be "info", "warning", or "error".

What happens when maintenance mode is enabled

Section titled “What happens when maintenance mode is enabled”

When maintenance mode is enabled, the following actions occur:

Backup workloads are scaled down to zero, to avoid conflicts with maintenance operations. No new workloads can be scheduled while maintenance mode is active.

A Maintenance condition is set on workload resources. This condition is removed once maintenance mode is disabled.

status:
conditions:
- type: Maintenance
status: "True"
reason: MaintenanceEnabled
message: Platform is in maintenance mode
lastTransitionTime: "2026-05-01T12:00:00Z"
observedGeneration: 1

The API returns a 503 Service Unavailable response for all GraphQL and REST endpoints, preventing any operations that require API access.

The console detects the maintenance status at startup and redirects users to a dedicated maintenance page.

Show users a banner before the maintenance window starts, while keeping operations running:

values.yaml
global:
maintenance:
# Operations keep running, banner only
enabled: false
banner:
# Show a warning before maintenance
message: "Upgrade planned on 31/07/2026. Contact @Tom for more info."
variant: "info"

Pause all operations and inform users:

values.yaml
global:
maintenance:
# Enable maintenance mode
enabled: true
banner:
# Inform users during the upgrade
message: "Upgrade is running, we will be back shortly."
variant: "info"

Keep a banner visible after re-enabling operations:

values.yaml
global:
maintenance:
# Banner only
enabled: false
banner:
# Post-maintenance informational banner
message: "Upgrade complete! Contact @Tom if you encounter any problems."
variant: "info"

Signal an active outage with an error-level banner:

values.yaml
global:
maintenance:
# Enable maintenance mode
enabled: true
banner:
# Outage notification
message: "We are experiencing an outage. Our team is investigating."
variant: "error"