Funcionalidade tsuru - BrunodosSantosVaz/big-bang GitHub Wiki
Alvo Tsuru existente
Funcionalidade BB-F-044 · requisito RF-BB-044 · versão documentada 2.0.1 · código 9c73feb3e357a1216011eaf64bf4b5d944827087.
Finalidade
Entregar sistemas em apps existentes do Tsuru sem criar outro servidor e com imagem imutável e saúde por ambiente.
Atores
Pessoa responsável pelo projeto, IA com posse confirmada e automações explicitamente autorizadas.
Pré-condições
Repositório e raiz corretos, versão instalada e configuração compatível. Para operações de escrita, exige-se autorização vigente, branch adequada e acesso ao recurso envolvido; consultas não conferem permissão adicional.
Fluxo principal
Ler alvo, app e token do ambiente; importar imagem pelo digest; executar migração conforme contrato de inicialização e validar saúde; em rollback consultar release anterior e aplicar seu digest.
Validações
Apps, plataforma Node e volume persistente são pré-provisionados; token não aparece em logs; staging e produção têm apps e rotas distintos.
Alternativas e erros
App inválido, digest mutável, API recusada ou migração incompleta falha; o adaptador não instala infraestrutura de modo implícito.
Permissões
Leitura usa permissões mínimas do repositório. Operações locais respeitam a posse e worktree; escrita no GitHub exige acesso explícito. Esta funcionalidade não concede novas permissões a visitantes nem substitui decisões exigidas pelo fluxo.
Resultados
Resultado esperado: Entregar sistemas em apps existentes do Tsuru sem criar outro servidor e com imagem imutável e saúde por ambiente. O retorno e os arquivos afetados são conferidos pelos cenários rastreados abaixo; falha impede considerar a operação concluída.
Referência da implementação
Os símbolos abaixo compõem o inventário real do módulo, incluindo auxiliares internos; não representam APIs públicas independentes.
alvo.sh
tsuru.py
| Símbolo | Linha |
|---|---|
DeployError |
16 |
NoRedirect |
20 |
API |
25 |
image_ref |
91 |
job_units |
103 |
execute |
111 |
main |
172 |
redirect_request |
21 |
__init__ |
26 |
send |
37 |
json |
53 |
verify_event |
62 |
deploy |
77 |
Cenários e rastreabilidade
.bigbang/tests/test_tsuru_scripts.py:test_staging_failure_does_not_publish_or_scan.bigbang/tests/test_tsuru_scripts.py:test_staging_success_keeps_migration_publication_health_scanner_order.bigbang/tests/test_tsuru_scripts.py:test_rollback_reimports_release_without_migration.bigbang/tests/test_tsuru_scripts.py:test_health_failure_is_bounded
Requisitos · Matriz de rastreabilidade · Referência CLI