O projeto é identificado por <id> nas configurações de desenvolvimento. Confira se o destino é local ou remoto antes de executar comandos. Na raiz do Core, php cli/c2f.php project:update-all <id> executa oito etapas sequenciais: Core, banco, recursos, arquivos, banco novamente, css:rebuild, minificação JS e publicação de assets. --contents=Não omite a pasta de conteúdo na sincronização. Em projeto SSH marcado local=true, o pipeline autoriza as etapas remotas locais; outro destino remoto exige --confirmar-remoto.
A etapa CSS pode falhar e emitir aviso sem abortar o retorno final do pipeline; confira php cli/c2f.php css:audit --project=<id> e os logs. A publicação de assets também pode avisar e seguir com entrega pelo controlador PHP. Não interprete a mensagem final sozinha como validação de CSS e assets.
php cli/c2f.php project:deploy <id> chama deploy-project-v2.sh, que empacota e envia pela API de projeto. project:recover faz o fluxo inverso para os dados locais. Os comandos de sincronização por etapa estão na CLI de projetos.
Confira que o conteúdo chegou
A mensagem final de sucesso diz que as etapas terminaram, não que a página mudou. Depois de publicar uma alteração de conteúdo, confira três pontos:
-
O dado compilado. O texto novo aparece no
gestor/db/data/PaginasData.jsondo projeto. O arquivo do recurso estar certo não basta. -
O log do banco. Na etapa de validação final, a linha
SYNC_FIM tabela=<tabela> +i ~u =smostra inserções, atualizações e registros sem mudança.~0numa tabela que você alterou pede investigação.SKIP_NO_CHECKSUM_CHANGEsignifica que a tabela nem foi comparada;--tables=<tabela> --force-allno atualizador força a comparação. -
A página no ar. O texto novo na resposta HTTP.
Pós-deploy
O pipeline não cria o agendamento de gestor/cron.php no servidor: configure os ticks conforme a referência cron. O deploy pela API regenera o sitemap.xml inteiro depois do banco; a sincronização por SSH não. Detalhes na biblioteca sitemap. As páginas servidas em produção vêm do banco, como explica recursos.
Se o projeto envia e-mail, configure SMTPS com TLS implícito e porta 465. A biblioteca de comunicação ativa a criptografia mesmo quando EMAIL_SECURE=false; a configuração STARTTLS na porta 587 não funciona nesse fluxo.