Add Railiance canary chart template
This commit is contained in:
parent
a23b3327fc
commit
c89d6fad07
6 changed files with 408 additions and 22 deletions
55
docs/canary-helm-template.md
Normal file
55
docs/canary-helm-template.md
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
# Canary Helm Template
|
||||
|
||||
Generated Railiance overlays include a stage-aware Helm chart for Stage 2
|
||||
canaries and Stage 3 stable promotion.
|
||||
|
||||
The chart keeps stable and canary release identities explicit:
|
||||
|
||||
- `railiance.stableRelease` names the current stable release;
|
||||
- `railiance.canaryRelease` names the Stage 2 candidate release;
|
||||
- `railiance.stage` selects the rendered identity, labels, and selectors;
|
||||
- `railiance.previousStable` records rollback context before promotion.
|
||||
|
||||
## Traffic Shape
|
||||
|
||||
The default Stage 2 values use an isolated canary ingress:
|
||||
|
||||
```yaml
|
||||
railiance:
|
||||
stage: canary
|
||||
traffic:
|
||||
mode: isolated
|
||||
|
||||
ingress:
|
||||
enabled: true
|
||||
```
|
||||
|
||||
This creates canary Deployment, Service, and Ingress resources without changing
|
||||
the stable release. For environments that use Traefik weighted routing, set:
|
||||
|
||||
```yaml
|
||||
railiance:
|
||||
traffic:
|
||||
mode: weighted
|
||||
provider: traefik
|
||||
stableWeight: 95
|
||||
canaryWeight: 5
|
||||
```
|
||||
|
||||
The chart then renders a `TraefikService` and `IngressRoute` that split traffic
|
||||
between the stable and canary services. Other ingress controllers can use the
|
||||
same stable/canary values layout with controller-specific annotations or a later
|
||||
provider template.
|
||||
|
||||
## Observability And Safety
|
||||
|
||||
Generated workloads include:
|
||||
|
||||
- Prometheus-compatible scrape annotations on pods and services;
|
||||
- readiness and liveness HTTP probes;
|
||||
- conservative resource requests/limits for single-node clusters;
|
||||
- separate `values/stage2-canary.yaml` and `values/stage3-production.yaml` so
|
||||
canary exposure and stable promotion can be reviewed independently.
|
||||
|
||||
Run `tests/stage2-template.sh` in the overlay repo before any Stage 2 attempt.
|
||||
It verifies the scaffold and runs `helm template` when Helm is available.
|
||||
Loading…
Add table
Add a link
Reference in a new issue