runner deploy

Executa o pipeline de deploy completo para uma aplicacao.

Sintaxe

runner deploy --app <path>
runner deploy <project> [--version <version>]

Parametros

Parametro Tipo Obrigatorio Descricao
--app string Sim* Caminho absoluto da app
<project> string Sim* Nome do projeto
--version string Nao Versao especifica para deploy
--instance string Nao Instancia alvo (default: production)
--skip-tests flag Nao Pula testes apos deploy

*Use --app ou <project>, nao ambos.

Exemplos

Deploy Padrao

runner deploy --app /apps/usuario_meu-app

Deploy por Nome

runner deploy meu-app

Deploy de Versao Especifica

runner deploy meu-app --version v1.2.3

Deploy para Staging

runner deploy meu-app --instance staging

Deploy sem Testes

runner deploy meu-app --skip-tests

Pipeline de Deploy

O comando executa as seguintes etapas:

  1. Prepare

    • Verifica configuracao (.deploy.yml)
    • Extrai versao do projeto
    • Cria diretorio de versao
  2. Artifacts

    • Copia artefatos para diretorio de versao
    • Limpa workdir (remove arquivos desnecessarios)
  3. Environment

    • Processa templates de ambiente
    • Gera .env e .secrets
  4. Test (Blue-Green)

    • Sobe container de teste
    • Executa health check
    • Executa testes de seguranca
    • Executa Playwright (se configurado)
  5. Promote

    • Atualiza symlink current
    • Gera Traefik dynamic config
    • Roteia trafego para nova versao
  6. Cleanup

    • Remove containers de teste
    • Remove versoes antigas
  7. Notify

    • Envia notificacao (Telegram/Discord)

Comportamento

Rollback Automatico

Se qualquer etapa falhar, o Runner:

  1. Para container de teste
  2. Remove diretorio de versao
  3. Restaura versao anterior
  4. Envia notificacao de falha

Health Check

O health check verifica:

  • Container iniciou
  • Endpoint /health retorna 200
  • Container esta healthy

Timeout padrao: 120 segundos

Notificacoes

Mensagens enviadas:

  • Deploy iniciado - Ao comecar
  • Deploy concluido - Ao finalizar com sucesso
  • Deploy falhou - Em caso de erro
  • Rollback executado - Se fez rollback

Exit Codes

Codigo Significado
0 Sucesso
1 Erro generico
2 Config invalida
3 Health check falhou
4 Testes falharam
5 Rollback executado

Logs

# Ver historico
runner logs history --app /apps/meu-app

# Ver log do ultimo deploy
runner logs tail --app /apps/meu-app

Estrutura Apos Deploy

/apps/meu-app/
├── .deploy.yml
├── .env
├── .secrets
└── src/
    └── production/
        ├── v1.0.0/
        ├── v1.0.1/
        └── current -> v1.0.1
By Borlot.com.br on 12/02/2026