Pular para o conteúdo
murad.guide

Aplicações Web

Capítulo 19

CI local e entrega

3 min de leitura 461 palavras 1 gravura

Neste capítulo você vai rodar um script de verificação local antes de zipar o estudo. O projeto-fio é o Ateliê Boa Viagem, ateliê digital fictício em Boa Viagem, Recife.

Seu ponto de partida

Use o exemplo 19-ci-local do pacote anexo e copie inicio/ para uma pasta de prática fora do original. A raiz do exemplo é a referência completa desta etapa.

Use servidor só em 127.0.0.1 quando o README do exemplo pedir HTTP local. Abrir ou testar não publica nada.

Como praticar

Leia → copie ou digite → mude uma coisa → preveja → salve → recarregue → confira. Restaure cada experiência antes da próxima. Faça as atividades antes de abrir as respostas comentadas.

Mapa visual de CI local e entrega

Script de checagem

Um arquivo verificar.ps1 ou verificar.sh roda testes e confere se o servidor responde em 127.0.0.1. Isso é a ideia de CI: repetir a mesma checagem.

Faça na sua cópia

Confira o trecho no contexto do exemplo antes de mudar.

node --test
node -e "fetch('http://127.0.0.1:8782/saude').then(r=>r.json()).then(console.log)"

Mude uma coisa e preveja

Quebre um teste de propósito e veja o script falhar.

Anote o que espera observar antes de salvar e recarregar.

Recarregue e confira

A verificação para no erro. Restaure.

Se não acontecer

Suba o servidor numa segunda janela antes do fetch.

O que não entra no zip

node_modules, .env com segredos, .trabalho e dados pessoais ficam fora. Essencial: código, README e instruções.

Faça na sua cópia

Confira o trecho no contexto do exemplo antes de mudar.

essencial ≠ cache ≠ segredo

Mude uma coisa e preveja

Liste três itens que você excluiria.

Anote o que espera observar antes de salvar e recarregar.

Recarregue e confira

Sua lista inclui pelo menos node_modules e .env.

Se não acontecer

Revise o README do volume.

CI na nuvem é opcional

GitHub Actions e afins podem repetir o script. Não são obrigatórios para concluir este módulo. Domine o local primeiro.

Faça na sua cópia

Confira o trecho no contexto do exemplo antes de mudar.

local → opcional remoto

Mude uma coisa e preveja

Documente no bloco de notas a ordem: testar, conferir, zipar.

Anote o que espera observar antes de salvar e recarregar.

Recarregue e confira

Você tem um checklist pessoal.

Se não acontecer

Não publique o Ateliê com dados reais.

Atividades

Atividade 1

O que significa CI neste volume?

Atividade 2

Cite dois itens fora do zip.

Atividade 3

CI remoto é obrigatório?

Respostas comentadas

Resposta da atividade 1

Repetir verificações automaticamente (aqui, via script local).

Resposta da atividade 2

node_modules e .env / .trabalho.

Resposta da atividade 3

Não.

O arquivo completo

Referência do exemplo 19-ci-local, reproduzida aqui para que você possa conferir sem sair da página.

server.js

require('http').createServer((q,s)=>{s.end(JSON.stringify({ok:true}))}).listen(8782,'127.0.0.1');

verificar.ps1

node --test
if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
Write-Host 'Testes OK. Suba server.js numa janela e consulte / se quiser.'