Achados de validação do manifesto
POST /v1/templates/validate (e vertra template validate) nunca cria nada e sempre responde com uma lista de achados. Cada achado tem um path (por exemplo services.app.ram.recommended), um code e uma mensagem. Quando você cria um template com um manifesto inválido, a chamada falha com TEMPLATE_MANIFEST_INVALID e a mesma lista em details.issues. A lista de campos está no schema do manifesto; esta página cobre os achados.
Um achado com o código
private_network_unavailable é um aviso, não um erro: uma ligação do template não está disponível pelos endereços públicos, então o template fica fora da galeria pública.
Erros de deploy e de atualização
Estes são retornados porPOST /v1/templates/{template_id}/deploy, pelo deploy de link de compartilhamento e pelas rotas de atualização. A maioria é verificada antes do 202, então nenhum job existe; as falhas durante o job chegam no campo error do job com a step que falhou, e as mudanças são desfeitas.
Outros códigos podem aparecer dentro do
error de um job quando uma etapa falha, como BUILD_FAILED, BUILD_TIMEOUT, IMAGE_NOT_READY, IMAGE_BUILDER_UNAVAILABLE, BLOB_NAMESPACE_SUSPENDED, PLAN_RESTRICTED_FEATURE e STACK_BLOB_PREFIX_TAKEN. A mensagem é sempre uma frase fixa e nunca traz a saída do seu app nem valores das suas variáveis.
Etapas de um job
Um job lista só as etapas que se aplicam a ele, nesta ordem:validate, snapshot (atualizações), network, databases, blob, images, apps, variables, certificates, start, healthcheck, outputs. Um job que falhou acrescenta rollback. A step no erro diz onde olhar: uma falha em healthcheck significa que o app iniciou mas nunca ficou saudável, então confira os logs do app; uma falha em images é sobre a imagem ou suas vagas; uma falha em databases é sobre o limite ou a memória dos bancos de dados.
Motivos de bloqueio de atualização
Templates fechados e rollback
Templates privados e links de compartilhamento
Veja Receber um link e Criar templates.
Stacks
Veja Stacks.