Cloud One
Fundamentos de nuvem, com AWS, Google Cloud, Azure e DigitalOcean
CI/CD One
Integração e entrega contínuas, com GitHub Actions, GitLab CI, CircleCI e Jenkins
Integração e entrega contínuas do zero, dentro de uma empresa de cinco pessoas em Belém que faz o aplicativo de passagens de barco dos rios do Pará: um deploy feito à mão, de um notebook, na sexta de mais vendas do veraneio, que derrubou o aplicativo por duas horas e quarenta e cinco minutos e não tinha como voltar atrás. Primeiro os fundamentos — anatomia de um pipeline, build reproduzível, testes, qualidade automática, artefatos, segredos e velocidade —, depois o mesmo pipeline montado, de verdade, em quatro ferramentas: GitHub Actions, GitLab CI, CircleCI e Jenkins. Por fim, a entrega: estratégias de deploy, migrações de banco, voltar em cinco minutos, o aplicativo nas lojas e a segurança da cadeia.
R$ 12,90
R$ 24,00
Promoção
Atenção: o idioma desta edição é português.
Edição Brasil
Menos teoria vazia.
Mais código que funciona.
Nada de exemplo solto com foo e bar.
Todo trecho pertence ao mesmo projeto, que cresce capítulo a capítulo —
e os erros aparecem como aparecem na sua tela, para serem lidos linha por linha.
name: apion: push: branches: [main]jobs: test: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - run: pytest
gh run list --workflow=api.yml --limit 1completed success api main 38s
Um sistema só, do primeiro arquivo ao deploy
README.md
O aplicativo das passagens de barco do Pará, do deploy à mão ao pipeline.
Integração e entrega contínuas, com GitHub Actions, GitLab CI, CircleCI e Jenkins.
- Um projeto só: o aplicativo das passagens de barco do Pará, do deploy à mão ao pipeline
- Fundamentos que valem em qualquer ferramenta: build, testes, artefatos, segredos, velocidade
- O mesmo pipeline em GitHub Actions, GitLab CI, CircleCI e Jenkins, lado a lado
- Deploy sem parar, migrações de banco, voltar em cinco minutos e o app nas lojas
- Segurança da cadeia de suprimentos e as métricas que dizem se a entrega melhorou
Leia uma prévia gratuita de CI/CD One
Esta amostra contém os primeiros capítulos. O PDF completo continua protegido para compradores.
34 capítulos em 10 partes
Abra uma parte para ver os capítulos — e a frase que abre cada um.
parte 01 A sexta do veraneioUm deploy feito de um notebook na noite de mais vendas do ano, duas horas e quarenta e cinco minutos fora do ar, e o que integrar e entregar continuamente quer dizer. 3 cap.
-
01
A sexta do veraneioUm relatório de duas páginas, um caderno com vinte e três passos, um notebook que tinha o que o repositório não tinha — e as cinco perguntas que ninguém conseguiu responder às dez da noite.
-
02
O que é CI e CDTrês semanas de branch que levaram dois dias para juntar, a diferença entre entregar e implantar, e os quatro números que dizem se uma equipe entrega bem — medidos, pela primeira vez, numa planilha da Maré Digital.
-
03
O caderno do WendelVinte e três passos escritos à mão, sete que sumiram ao serem lidos com atenção, um script que faz o resto igual toda vez — e uma pasta de versões que transforma voltar atrás num comando.
parte 02 Fundamentos do pipelineGatilhos, jobs e runners; o build que dá o mesmo resultado em qualquer máquina; testes, qualidade automática, artefatos, segredos, ambientes e um pipeline que responde em minutos. 7 cap.
-
04
Anatomia de um pipelineUm push que acorda uma máquina em outro continente, cinco jobs que correm ao mesmo tempo, um código de saída que decide tudo — e as palavras que as quatro ferramentas usam para dizer as mesmas coisas.
-
05
Build reproduzívelUma terça-feira em que o pipeline quebrou sem que ninguém tivesse mexido em nada, uma lista de dependências sem versões, um arquivo de trava com quarenta e uma linhas — e uma imagem de container que é igual em toda parte.
-
06
Testes no pipelineUma pirâmide desenhada de cabeça para baixo, um banco de dados que nasce e morre a cada job, um relatório que diz qual teste falhou sem abrir o log — e catorze celulares que continuaram tendo trabalho.
-
07
Qualidade automáticaQuarenta comentários de revisão sobre espaços e aspas, uma ferramenta que os resolve em um segundo, uma regra que impede o push direto no main — e o dia em que ela barrou quem tinha as chaves da casa.
-
08
Artefatos e versõesUma imagem construída uma vez e promovida três, uma etiqueta que mentia sobre o que guardava, um número de versão com três partes que dizem coisas diferentes — e uma rota de uma linha que responde à primeira pergunta da Dona Graça.
-
09
Segredos e ambientesTrês ambientes que deviam ser parecidos e não eram, uma senha que o log escondeu e o base64 entregou, uma aprovação obrigatória antes da produção — e uma chave que deixou de existir porque deixou de ser necessária.
-
10
Cache e velocidadeCatorze minutos de pipeline, nove deles instalando as mesmas coisas, uma chave de cache feita do hash de um arquivo, testes divididos em quatro máquinas — e a regra de que o cache pode acelerar, mas nunca decidir.
parte 03 GitHub ActionsWorkflows ao lado do código: eventos, jobs, matrizes, ambientes com aprovação, ações reutilizáveis — e o piloto da Maré Digital. 4 cap.
-
11
Conhecendo o GitHub ActionsUm diretório escondido no repositório, trinta e poucos tipos de evento, expressões entre chaves duplas, máquinas que nascem e morrem a cada job — e um terminal que mostra o pipeline sem abrir o navegador.
-
12
Workflows de verdadeUm token que podia tudo e passou a poder quase nada, um job que entrega ao seguinte o digest da imagem, um relatório que sobe mesmo quando os testes falham, dois deploys que não podem acontecer ao mesmo tempo — e um botão com um campo para escrever a versão.
-
13
Ações reutilizáveis e runnersDoze linhas repetidas em quatro jobs, uma ação própria que as substitui, uma etiqueta de versão que pode ser movida por quem não devia — e um Mac mini aposentado que voltou ao trabalho numa prateleira do sobrado.
-
14
O piloto no GitHub ActionsSete etapas escritas numa folha antes de qualquer YAML, um script de vinte linhas que implanta pelo digest, um teste de fumaça que confere o commit, um servidor de cada vez — e a primeira linha de uma planilha que ainda ia ter quatro.
parte 04 GitLab CIEstágios, regras e runners, num arquivo só na raiz do projeto, e o mesmo pipeline posto para rodar do outro lado. 2 cap.
-
15
Conhecendo o GitLab CIUm arquivo só na raiz do projeto, estágios que andam em fila, cada job dentro da imagem que escolher, regras no lugar de filtros — e uma plataforma que faz, sozinha, o que a Maré Digital fazia com três.
-
16
O piloto no GitLab CIUm espelho que copia o repositório a cada push, um Docker rodando dentro de outro Docker, um arquivo de variáveis que leva o digest de um job para o outro — e um pipeline que funcionava muito bem na casa errada.
parte 05 CircleCIExecutores, orbs, contextos e classes de recurso: o serviço que nasceu só para isso, e o piloto que terminou mais rápido. 2 cap.
-
17
Conhecendo o CircleCIUm serviço que só faz pipelines e faz isso desde 2011, executores de quatro tamanhos cobrados em créditos, pacotes de configuração chamados orbs, testes divididos pelo tempo que levaram ontem — e um build que falhou e deixou a porta aberta para alguém entrar.
-
18
O piloto no CircleCIComandos e executores declarados uma vez, testes em quatro cópias que terminam juntas, um token de longa duração que voltou pela porta dos fundos — e o pipeline mais rápido da planilha.
parte 06 JenkinsO veterano que roda em qualquer lugar, com um plugin para tudo: controlador, agentes, Jenkinsfile e bibliotecas compartilhadas. 3 cap.
-
19
Conhecendo o JenkinsUm servidor que a Maré Digital teve em 2012 e esqueceu, um mordomo de gravata no logotipo, mil e oitocentos plugins, uma senha inicial escondida num arquivo — e a diferença entre usar um serviço e ser dono de um.
-
20
JenkinsfileUm pipeline escrito numa linguagem que não é YAML, chaves no lugar de indentação, um bloco que roda aconteça o que acontecer, uma pergunta que espera uma pessoa responder — e uma biblioteca que faz quarenta linhas virarem uma.
-
21
O piloto no JenkinsDuas máquinas alugadas, uma imagem do controlador com trinta e oito plugins de versão fixa, um aplicativo do GitHub que devolve os checks, um aviso de segurança no meio da semana — e vinte e duas horas na coluna de montagem.
parte 07 Entrega contínuaEstratégias de deploy, trocar de versão sem derrubar ninguém, mudar o banco sem quebrar a versão anterior, voltar em cinco minutos, o aplicativo nas lojas e um pouco de GitOps. 6 cap.
-
22
Estratégias de deployDesligar e ligar, trocar um de cada vez, ter duas cópias e virar a chave, mandar um pouco do tráfego para a versão nova e olhar — e a ideia que separa colocar o código no ar de mostrar a mudança para as pessoas.
-
23
Deploy sem pararDuas cores em cada servidor, um arquivo de três linhas que diz ao nginx qual delas atende, um recarregamento que não derruba ninguém, cinquenta mil pedidos durante a troca — e nenhum erro.
-
24
Migrações de bancoUma coluna que precisava mudar de nome sem que nenhuma versão quebrasse, quatro deploys para uma mudança que parecia de uma linha, um índice que travou a tabela de passagens por quarenta segundos — e a palavra que faltava no comando.
-
25
Voltar em cinco minutosQuatro jeitos de desfazer uma mudança, do mais rápido ao mais demorado, um botão que pede só a versão, o que nenhum botão desfaz — e um cronômetro de cozinha na mão da Dona Graça, às três da manhã.
-
26
O app nas lojasUm aplicativo que precisa ser assinado antes de existir, uma ferramenta que fala com as duas lojas, um revisor do outro lado do mundo que leva dois dias para responder — e milhares de celulares com a versão de março que ninguém pode desinstalar.
-
27
GitOps e KubernetesUm pipeline que deixa de empurrar e passa a pedir, um repositório que descreve como a produção deve estar, um agente dentro do cluster que corrige qualquer diferença — e a conclusão de que a Maré Digital ainda não precisava disso.
parte 08 A segurança da cadeiaO que o pipeline verifica no código e nas dependências, e como provar que o que está em produção é o que saiu do repositório. 2 cap.
-
28
Segurança no pipelineCento e quarenta e três alertas no primeiro dia, uma biblioteca de imagens com uma falha conhecida desde fevereiro, uma senha barrada antes de sair do notebook — e a diferença entre um pipeline que acusa e um que ajuda.
-
29
A cadeia de suprimentosAtaques que não miram o sistema, mas o caminho até ele; uma lista de tudo o que vai dentro da imagem; uma assinatura sem chave nenhuma; um servidor que recusa o que não sabe de onde veio — e o evento do GitHub com o nome mais perigoso.
parte 09 Operar o pipelineMedir a entrega, domar testes instáveis e pipelines lentos, e comparar as quatro ferramentas sem paixão. 3 cap.
-
30
Medir a entregaOs quatro números de janeiro medidos de novo em junho, uma API que já guardava cada implantação, um painel na parede que ninguém precisou explicar — e a lei que diz o que acontece com toda métrica que vira meta.
-
31
Testes instáveis e pipelines lentosUm teste que só falhava depois das nove da noite, um botão de rodar de novo apertado sem ler o erro, uma quarentena com prazo de validade — e o pipeline tratado como um produto, com dono e orçamento de minutos.
-
32
Comparar sem paixãoQuatro linhas de planilha, sete critérios com pesos combinados antes de ver as notas, uma conta que mudaria se o código mudasse de casa — e uma decisão escrita para ser relida em 2028.
parte 10 O veraneio de 2027Julho com deploys pequenos todos os dias, e a sexta de mais vendas do ano, outra vez. 2 cap.
-
33
Preparar o veraneioUm calendário de julho com janelas de deploy, uma escala de plantão presa na geladeira, três falhas provocadas de propósito numa tarde de quarta — e a descoberta de que congelar tudo seria o jeito mais arriscado de passar o mês.
-
34
Sexta, 9 de julhoSeis da tarde, cinco pessoas e um painel na parede. Sete e cinco, o mesmo minuto do ano anterior, um alarme. Oito e vinte, um defeito que precisa de código. Nove e quarenta: nada — e o que o Wendel escreveu na última página do caderno.
Outros livros da série
Cloud One
Fundamentos de nuvem, com AWS, Google Cloud, Azure e DigitalOcean
Docker One
Da minha máquina à produção, sem mistério
Git One
Versionar, voltar atrás e trabalhar em equipe sem medo
Linux One
Terminal, shell e as ferramentas que todo dev usa todo dia
SQL One
Perguntas certas para bancos de verdade
O que leitores dizem sobre CI/CD One
Carregando avaliações deste livro…
Ver todas as avaliações deste livro →Este livro também entra em um combo
O combo reúne livros já publicados e sai num único pagamento.
Combo
Entrega Contínua
CICD + Git + Jenkins + Actions para automatizar suas entregas
- Separados
R$ 26,80- O combo −15%
- R$ 22,78
CI/CD One
Integração e entrega contínuas, com GitHub Actions, GitLab CI, CircleCI e Jenkins. O projeto começa a rodar no primeiro capítulo — e não para mais.
Atenção: o idioma desta edição é português.