Skip to content

Recuperação de deploy ​

Quando um deploy falha ou para no meio, o caminho suportado é diagnosticar e corrigir para frente: descobrir em que etapa ele parou, corrigir a causa e aplicar de novo.

O comando finnest rollback foi desativado

Voltar para um estado anterior da infraestrutura não reverte com segurança os recursos que já estão na nuvem. Por isso, finnest rollback sempre responde ROLLBACK_UNSUPPORTED e indica o diagnóstico abaixo.

1. Diagnostique ​

bash
CLOUD=aws ENVIRONMENT=sandbox  # ou: azure, prod
finnest recover deploy --run=latest --cloud="$CLOUD" --environment="$ENVIRONMENT"

O comando só lê as evidências da execução e não altera nada na nuvem. Ele informa a etapa em que o deploy parou, a classificação da falha e o próximo comando seguro. Em vez de latest, você pode informar o identificador de uma execução específica (veja finnest runs).

2. Siga o próximo comando indicado ​

ClassificaçãoPróximo passo
prerequisite, cluster-unreachableCorrija o pré-requisito e rode finnest doctor.
state-drift, program-error, runtime-policyfinnest deploy --preview --skip-bootstrap, depois aplique.
kubernetes-field-conflictfinnest deploy --preview --skip-bootstrap --adopt.
product-authA infraestrutura está no ar. Corrija a credencial ou a configuração e rode finnest smoke.
protected-secret-target-dropConfira o material com finnest secrets list.
protected-resourceSiga a orientação impressa; se não for possível reconciliar, gere o pacote de suporte.
immutable-platform-shapeA mudança exige recriar a plataforma. Revise com finnest destroy --preview e fale com o suporte.
interrupted, unknownGere o pacote de suporte.

3. Aplique a correção ​

Rode a prévia com as mesmas opções de recuperação que o diagnóstico indicou e, se ela estiver correta, aplique trocando --preview por --apply --yes, sem --adopt. Para state-drift, program-error e runtime-policy, mantenha --skip-bootstrap também no apply; sem ela, o deploy volta à etapa de preparação e pode esbarrar na mesma divergência:

bash
CLOUD=aws ENVIRONMENT=sandbox  # ou: azure, prod
finnest deploy --cloud="$CLOUD" --environment="$ENVIRONMENT" --preview --skip-bootstrap
finnest deploy --cloud="$CLOUD" --environment="$ENVIRONMENT" --apply --yes --skip-bootstrap

A opção --adopt só ensaia a adoção na prévia: o deploy recusa --adopt junto com --apply (DEPLOY_ADOPT_PREVIEW_ONLY). Depois de uma prévia com --adopt, aplique só com --skip-bootstrap.

Nos demais casos, siga o comando indicado. Se depois for preciso aplicar de novo, use o deploy normal:

bash
CLOUD=aws ENVIRONMENT=sandbox  # ou: azure, prod
finnest deploy --cloud="$CLOUD" --environment="$ENVIRONMENT" --preview
finnest deploy --cloud="$CLOUD" --environment="$ENVIRONMENT" --apply --yes

Pacote de suporte ​

Antes de apagar qualquer recurso na nuvem ou no armazenamento do estado, gere o pacote de suporte e fale com a Finnest:

bash
finnest support bundle --run=<id-da-execução>

O pacote reúne as evidências redigidas da execução e o diagnóstico local.

Trava de execução na AWS ​

Se uma execução na AWS foi interrompida e deixou a trava do alvo presa, o erro informa o identificador do dono da trava. Depois de confirmar que nenhuma outra execução está em andamento, libere-a:

bash
ENVIRONMENT=sandbox  # ou: prod
finnest recover aws-lock <id-do-dono> execution-stopped --cloud=aws --environment="$ENVIRONMENT" --yes

Ações ainda não disponíveis ​

finnest recover deploy --resume, --rollback, --stop-spend e --adopt sem --preview respondem RECOVER_MUTATION_NOT_ENABLED. A recuperação é sempre feita por um novo deploy.

Finnest Power — plataforma Open Finance Brasil e Open Insurance Brasil. Contato: oi@finnest.com.br