`runner state`

O Runner mantem uma cadeia de backup rotativa com integridade verificada para o state file de cada app, em .backups/{app}/{UTC}-{sha12}.yml. Esses subcomandos expoem a cadeia para intervencao manual depois de corrupcao de disco, incidente de ENOSPC, ou qualquer situacao em que o state primario precise ser recuperado.

Resolve a issue #32.

Sintaxe

runner state backup <app>
runner state restore <app>
runner state restore --all
runner state list-backups <app>

Subcomandos

Subcomando O que faz
backup Forca um snapshot do state atual na cadeia. Idempotente por sha — rodar duas vezes sem mudanca nao cria entrada nova
restore Restaura o backup integro mais recente sobre o primario
list-backups Lista a cadeia (mais recente primeiro), com o veredito de integridade de cada entrada

`restore`: o modo importa

Invocacao Comportamento
runner state restore <app> Force: restaura mesmo se o primario parece ok
runner state restore --all Seguro e idempotente: so restaura apps cujo primario esta corrompido ou ausente

Use --all em recovery de servidor — ele nao toca no que esta saudavel. Use a forma explicita quando voce sabe que o primario esta errado apesar de parsear.

Falha explicitamente quando nao ha backup valido. Nunca retorna sucesso sem ter restaurado de fato.

O que "integridade" significa

Cada entrada da cadeia so conta como integra quando as duas condicoes valem:

  1. O sha embutido no nome bate com o conteudo
  2. O conteudo parseia como AppState

Um arquivo que parseia mas teve o sha alterado nao e integro — e vice-versa.

runner state list-backups myapp
runner state list-backups myapp --json
runner state list-backups doesnotexist --json   # → {"app":…,"backups":[],"count":0}

App inexistente devolve lista vazia com count: 0, nao erro — o contrato e estavel para quem consome via JSON.

Flags

Flag Descricao
--all So em restore: varre todas as apps, restaurando apenas as corrompidas
-o, --output human | json | yaml
--json Output em JSON
--insecure Bypass dos guards de seguranca

`state` vs `config-backups`

Comando Faz backup do que
state O state file: versao corrente, instance, historico de deploy
`config-backups` Manifesto (.deploy.yml) + secrets + state, como snapshot unico

Ver tambem

By Borlot.com.br on 19/08/2026