`runner deploy-all`
Deploy de todas as aplicações registradas no runner, em ordem de dependência (depends_on). Equivalente a runner deploy --all, mas exposto como subcommand top-level para orquestradores externos (CCS, MCP, scripts) chamarem sem precisar de flag knowledge.
Disponível desde v2.22.8.
Sintaxe
runner deploy-all [--force] [--verbose] [--json]| Flag | Default | Descrição |
|---|---|---|
-f, --force |
false |
Força redeploy mesmo se a versão já está rodando |
-V, --verbose |
false |
Logs detalhados |
--json |
false |
Output JSON |
Ordem de deploy
Topological sort por depends_on no .deploy.yml de cada app. Se app B depende de A:
- A é deployada primeiro
- Espera A ficar healthy (per
depends_on.condition) - B começa
- Se A falhar, B (e qualquer dependente) é skippada
Apps sem depends_on: são deployadas em ordem alfabética.
Exemplos
# Deploy padrão de todas as apps
runner deploy-all
# Forçar redeploy (mesmo versão já rodando)
runner deploy-all --force
# JSON pra CCS / orquestrador
runner deploy-all --jsonOutput JSON
{
"action": "deploy_all",
"success": true,
"deployed": 3,
"failed": 0,
"timestamp": "2026-05-15T..."
}deployed = apps que atualizaram (versão mudou ou --force).
failed = apps cujo deploy falhou. success é false se failed > 0.
Diferença vs `runner fetch --deploy`
| Aspecto | deploy-all |
fetch --deploy |
|---|---|---|
| Quando usar | Operador / dashboard pedindo deploy | Cron job automático |
| Order | Topological (depends_on) | Pelo timestamp de fetch |
| Force | Sim (--force) |
Não — só deploya se mudou |
| Output | JSON conciso (success/counts) | Detalhado por app |
Use deploy-all quando você QUER forçar/garantir que tudo esteja na última versão.
Use fetch --deploy no cron pra deploy automático passivo.
Quem chama isso
- CCS dashboard: action
runner_deploy_all - MCP: tool
runner_deploy_all - Scripts de bootstrap:
runner deploy-all --force --json | jq .
Veja também
- `runner deploy` — deploy de UMA app
- `runner fetch` — fetch + opcional deploy
- `runner status` — verificar quem deployou
By Borlot.com.br on 15/05/2026