Deploy por imagem e Git

Deploy por imagem

zenifra project image set --project <project-id> --image ghcr.io/zenifra/app:1.2.0

Prefira sempre uma tag de versão fixa em vez de latest.

Deploy por Git

Projetos podem usar uma origem Git de um provedor suportado (GitHub ou Forgejo). Uma pessoa proprietária da organização cria a conexão no Console; a CLI lista e usa conexões existentes e nunca solicita nem exibe credenciais do provedor.

Confira provedores, runtimes e conexões, resolva o repositório pelo caminho e liste as branches:

zenifra git providers
zenifra git runtimes
zenifra git connections
zenifra git repositories resolve --connection <connection-id> --path equipe/aplicacao
zenifra git branches --connection <connection-id> --repository <repository-id>

O ID retornado por resolve pertence àquela conexão. Use os IDs em config.source e config.build ao criar o projeto (veja examples/http-git-project.json):

zenifra create project --name api-web --plan basic --payment-mode hourly --config @examples/http-git-project.json

Consulte e altere a origem e o modo de deploy do projeto:

zenifra project source --project <project-id>
zenifra project source branches --project <project-id>
zenifra project source deploy-settings set --project <project-id> --mode branch
zenifra project source deploy-settings set --project <project-id> --mode tag --tag-pattern "v*"
zenifra project source deploy-settings set --project <project-id> --mode release --tag-pattern "v*" --include-prereleases true

Os modos são manual, branch, tag e release. tag e release exigem --tag-pattern (curingas * e ?); --include-prereleases só vale em release e o padrão é false. Evite alterar a origem ao mesmo tempo pelo Console ou por outro cliente.

Projetos com configuração GitHub legada continuam usando zenifra project github e zenifra project github deploy-settings set, com os mesmos modos.

Disparar e acompanhar builds

zenifra deploy --project <project-id> --branch main
zenifra deploy watch --project <project-id> --build <build-id>
zenifra builds --project <project-id>
zenifra builds logs --project <project-id> --build <build-id> --follow
zenifra deployments --project <project-id>

zenifra deploy dispara o build/deploy Git e retorna um build_id. deploy watch acompanha o status e imprime os logs incrementais até o estado final, útil em pipelines. Diferença entre os logs:

  • zenifra project logs: aplicação em execução
  • zenifra builds logs: pipeline de build Git
  • zenifra deploy watch: status + logs de um build específico

Última atualização em

Nessa página