Decisões
ORG-0019 — Implantação com Kamal e segredos no Bitwarden
- Status: aceita
- Data: 2026-10-18
- Decide: Kamal por aplicação, imagens no ghcr.io e segredos só por referência ao Bitwarden Secrets Manager
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
- Kamal por aplicação, a partir de
deploy/<app>/(Dockerfile,config/deploy.yml,.kamal/secrets). - Imagens no
ghcr.io;kamal-proxycom TLS; healthcheck em/up. - Armazenamentos e backup como accessories, no
deploy.ymlda aplicação dona do schema. - Segredos só por referência:
.kamal/secretsbusca no Bitwarden (kamal secrets fetch --adapter bitwarden-sm) e nunca contém valores. DEPLOYMENT_ENVIRONMENTdeclarado; alias de rede estável para a coleta de métricas.- 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
| Alternativa | Por 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ório | Por 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.