checkId: check.release.active plugin: stellaops.doctor.release severity: warn tags: [release, pipeline, active, monitoring]
Active Release Health
This Doctor check watches the releases currently moving through the Stella Ops promotion pipeline and flags any that are stuck, failed, or waiting too long on an approval. It is aimed at operators and release managers who need to know — without opening the console — whether in-flight deployments are progressing or quietly wedged.
What It Checks
Queries the Release Orchestrator’s authoritative read models at /api/v1/release-orchestrator/deployments?statuses=pending,running,paused,rolling_back and /api/v1/release-orchestrator/approvals?statuses=pending:
- Stuck releases: warn if a pending, running, paused, or rolling-back deployment has been active for more than 1 hour, fail after 4 hours.
- Failed releases: failed targets on an active deployment trigger an immediate fail.
- Pending approvals: warn if an approval has been pending for more than 4 hours, fail after 24 hours.
Evidence collected: active_release_count, stuck_release_count, failed_release_count, pending_approval_count, oldest_active_release_age_minutes, stuck_releases, failed_releases, approval_pending_releases.
The check requires ReleaseOrchestrator:Url or Release:Orchestrator:Url to be configured.
Why It Matters
Active releases represent in-flight changes moving through the promotion pipeline. A stuck release blocks the target environment from receiving updates and can hold locks that prevent other releases. Failed releases indicate broken deployment workflows that need immediate attention. Stale approvals delay time-sensitive deployments and can indicate that approvers are unaware of pending requests or that notification delivery has failed.
Common Causes
- Release workflow step failed (script error, timeout, integration failure)
- Approval bottleneck – approvers not notified or unavailable
- Target environment became unreachable during deployment
- Resource contention between concurrent releases
- Release taking longer than expected due to large artifact size
- Environment slow to respond to health probes after deployment
How to Fix
Docker Compose
# Inspect a failed or stuck deployment
stella deployment show <deployment-id>
# View deployment execution logs
stella deployment logs <deployment-id>
# Check Release Orchestrator service health
docker compose -f docker-compose.stella-ops.yml logs --tail 200 orchestrator
# Approve a pending approval after reviewing it in the Console
stella release approve <approval-id>
Bare Metal / systemd
# Check Release Orchestrator service
sudo systemctl status stellaops-orchestrator
# Inspect the stuck deployment
stella deployment show <deployment-id>
# View deployment logs
stella deployment logs <deployment-id>
# Action a pending approval after reviewing it in the Console
stella release approve <approval-id>
Kubernetes / Helm
# Check orchestrator pod status
kubectl get pods -l app=stellaops-orchestrator
# View orchestrator logs
kubectl logs -l app=stellaops-orchestrator --tail=200
# Inspect stuck deployment
kubectl exec -it <orchestrator-pod> -- stella deployment show <deployment-id>
Verification
stella doctor run --check check.release.active
Related Checks
check.release.environment.readiness– environment issues cause releases to get stuckcheck.release.promotion.gates– misconfigured gates can block releases indefinitelycheck.release.environment.matches-approved– detects deployed-estate drift after release completion
