Overriding scope workflows
Agent-backed scopes come with flexible defaults, but sometimes you'll want to change how a scope behaves—without rewriting it from scratch.
Overrides let you extend or adjust what a scope does by plugging in custom logic, parameters, or workflow changes. They’re ideal for cases where the base scope gets you almost there, but not quite.
Why use overrides?
Use an override when you want to
- tweak deployment behavior without editing the base scope
- inject organization-specific logic (e.g. tags, tolerations, domain generation)
- reuse a base scope like
k8s
, but with your own configuration or steps
Two types of overrides
Configuration overrides
These change runtime values by adding a values.yaml
to your override repo.
Use these when you want to:
- Add labels or annotations
- Swap out a manifest template
- Enable features like IRSA, logging, or backups
Behavior overrides
These change how workflows run. You can skip, replace, or add steps to scope actions like create
or deploy
.
Use these when you want to:
- Remove a step like DNS setup
- Add custom scripts based on platform
- Replace domain generation or workload logic
Full example
Check out our hands-on case where we:
- Disable networking
- Use a scheduled task (
CronJob
) template - Add retry and logging logic
Setting up your override environment
Before applying overrides, you'll need to:
- Choose a base scope to extend
- Store your overrides in a Git repo
- Install the nullplatform agent
- Set up a notification channel with override support