Começar
Aparência

Vale na hora e fica lembrada neste navegador.

Decisões

ORG-0019 — Implantação com Kamal e segredos no Bitwarden

Contexto

A plataforma da Hibex roda as aplicações em VPS com Kamal e guarda segredos no Bitwarden Secrets Manager. Cada stack precisa implantar do mesmo jeito, sem segredo no repositório.

Decisão

  1. Kamal por aplicação, a partir de deploy/<app>/ (Dockerfile, config/deploy.yml, .kamal/secrets).
  2. Imagens no ghcr.io; kamal-proxy com TLS; healthcheck em /up.
  3. Armazenamentos e backup como accessories, no deploy.yml da aplicação dona do schema.
  4. Segredos só por referência: .kamal/secrets busca no Bitwarden (kamal secrets fetch --adapter bitwarden-sm) e nunca contém valores.
  5. DEPLOYMENT_ENVIRONMENT declarado; alias de rede estável para a coleta de métricas.
  6. Quem implanta é o mantenedor (ORG-0007). Hosts, prefixos de segredos e donos dos accessories ficam numa ADR da stack (a ADR-0007 pré-escrita).

Alternativas consideradas

AlternativaPor que não
Orquestrador (Kubernetes)Por que não: custo de operação acima do tamanho da plataforma
Segredos em variável no CI ou em arquivo cifrado no repositórioPor que não: outro lugar para guardar e rotacionar; risco de vazar no histórico

Consequências

  • O repositório pode ser lido por qualquer pessoa sem expor segredo.
  • Implantar exige acesso do mantenedor ao Bitwarden e à VPS.

Mais

O detalhe está na documentação da arquitetura.