O que é CI/CD?

Atualizado em: agosto de 2026

CI/CD é uma prática que automatiza build, testes e lançamento de código, para que cada mudança vá do commit à produção em pequenos passos. O nome comprime duas ideias — integração contínua (mesclar e verificar constantemente) e entrega contínua (manter cada mudança pronta para lançar) — mais uma ambiguidade famosa: o segundo “D” também pode significar deploy contínuo, em que nada além de um teste falhando separa um commit da produção.

Principais pontos

PerguntaResposta
O que éAutomação que transforma o “dia do release” em um não-evento que acontece o tempo todo
CIMesclar mudanças pequenas diariamente; cada merge dispara build e testes automaticamente
Os dois CDsA entrega mantém uma aprovação humana antes da produção; o deploy a remove
Por que funcionaMudanças pequenas falham pequeno; feedback rápido pega bugs minutos após serem criados
Como se medeAs cinco métricas DORA — e velocidade e estabilidade sobem juntas

Como é um pipeline na prática

A prática inteira cabe em um arquivo de configuração — este é o artefato que toda página de “CI/CD explicado” descreve e quase nenhuma mostra:

# pipeline.yml — a automação que substitui o "dia do deploy"
on: push to main

jobs:
  build:
    steps:
      - checkout
      - run: npm ci && npm run build
  test:
    needs: build
    steps:
      - run: npm test            # unitários + integração, a cada commit
      - run: npm run lint        # análise estática
  deploy:
    needs: test
    approval: manual             # apague esta linha → deploy contínuo
    steps:
      - run: npm run deploy

Minutos depois de aquele último passo rodar, todos os clientes já estão chamando a nova versão do backend — que é exatamente o ponto:

// JavaScript / Node.js — Back4app JS SDK
// Seconds after `b4a deploy`, every client is calling the new version
const version = await Parse.Cloud.run('version');
console.log(`API version: ${version}`); // no pipeline YAML, no runners

CI vs. entrega contínua vs. deploy contínuo

DimensãoIntegração contínuaEntrega contínuaDeploy contínuo
EscopoMerge + build + testes…mais artefatos sempre prontos para release…mais release automático
GatilhoCada commit na mainlineCada build que passaCada build que passa
Gate humanoNenhum (os testes são o gate)Sim — uma aprovação de releaseNenhum
Produção atualizaQuando alguém lançaQuando alguém clicaContinuamente
Melhor paraTodo mundoReleases regulados, lançamentos com data de marketingBackends web, SaaS, suítes de teste de alta confiança
Um pipeline de CI/CDCommits disparam estágios automatizados de build e teste; mudanças aprovadas chegam ao staging e então cruzam um gate de aprovação manual, na entrega contínua, ou nenhum gate, no deploy contínuo, até a produção.

sim — entrega contínua

sem gate — deploy contínuo

Commit

Build

Testes automatizados

Staging

Aprovação manual?

Produção

Commits disparam estágios automatizados de build e teste; mudanças aprovadas chegam ao staging e então cruzam um gate de aprovação manual, na entrega contínua, ou nenhum gate, no deploy contínuo, até a produção.

A linhagem merece uma frase: o artigo canônico de Martin Fowler definiu a CI em 2000, o livro de 2010 Continuous Delivery estendeu a ideia ao processo de release, e o DevOps fez do par sua espinha dorsal de automação. Uma aresta afiada de Fowler ainda corta hoje: rodar um servidor de build contra feature branches de vida longa é “semi-integração” — CI de verdade significa a mainline integrando o trabalho de todo mundo pelo menos uma vez por dia.

O pipeline, estágio por estágio

  • Fonte. Um commit ou merge dispara tudo. Nunca builds manuais — se não foi disparado, não é CI.
  • Build. Compilar, resolver dependências, produzir o artefato (bundle, imagem de contêiner) que todos os estágios seguintes reutilizam — build uma vez, promova em todo lugar.
  • Teste. Checagens rápidas primeiro: testes unitários e lint a cada commit; testes de integração contra dependências reais em seguida; end-to-end, performance e varreduras de segurança em execuções posteriores ou agendadas. A velocidade do feedback decide a ordem dos estágios.
  • Entrega. O artefato pousa em um ambiente de staging parecido com produção. Na entrega contínua, ele espera ali — pronto para release — por um sim humano.
  • Deploy. Produção. Pipelines maduros fazem deploy gradual — uma fatia canário ou um ambiente blue/green paralelo — para que uma mudança ruim seja um rollback contido, não uma indisponibilidade.

Como medir: as métricas DORA

“Somos bons em entrega?” tem uma resposta padrão: as cinco métricas do programa de pesquisa DORA — frequência de deploy, lead time das mudanças, taxa de falha das mudanças, tempo de recuperação de deploys falhos e taxa de retrabalho de deploy. O achado mais citado da pesquisa é que o clássico trade-off velocidade-versus-estabilidade é falso: os times que mais fazem deploy são também os que menos quebram, porque mudanças pequenas e frequentes são individualmente de baixo risco e rápidas de diagnosticar. Se o seu trabalho no pipeline não move uma das cinco, é encanamento, não progresso.

Casos de uso comuns

  • Backends web e de API — o lar natural do deploy contínuo pleno: alto volume de mudanças, rollback instantâneo, nenhum passo de instalação.
  • Apps mobile — CI mais entrega contínua: o pipeline constrói, testa e prepara cada mudança, enquanto a revisão das lojas torna o empurrão final inerentemente gateado.
  • Times crescendo além de um único deployer — o pipeline substitui a única pessoa que “sabe fazer o release” por um processo que qualquer um executa.
  • Ambientes regulados — o gate de aprovação vira uma feature: automação total até a linha, uma decisão humana auditável sobre ela.
  • Projetos open source — cada pull request construído e testado automaticamente é a CI servindo de porta de entrada do projeto.

Você deveria manter um gate antes da produção? Matriz de decisão

Escolha deploy contínuo quando…Mantenha o gate de entrega quando…
A suíte de testes tem a confiança da produçãoA cobertura de testes ainda está crescendo até merecer essa confiança
Rollback é um comandoRollback é um projeto
Usuários esperam atualizações invisíveis e constantesReleases se alinham a datas de marketing ou de contrato
O produto é um backend web ou SaaSO produto passa pela revisão das lojas de aplicativos
Falhas degradam graciosamente atrás de feature flagsUm release ruim tem consequências regulatórias

O sequenciamento honesto: conquiste o deploy praticando a entrega — automatize tudo até o gate, observe a taxa de falhas e remova o gate quando ele não estiver mais fazendo nada.

Limitações e trade-offs

  • O pipeline é código seu. Runners, YAML, caches, secrets — tudo isso precisa de manutenção, e em certos tamanhos de time o pipeline vira um produto próprio, com plantão próprio.
  • Testes flaky envenenam tudo. Uma suíte que falha aleatoriamente treina as pessoas a clicar em “retry”, o que converte silenciosamente o deploy contínuo de volta em deploy manual com passos extras.
  • Cultura é pré-requisito, não subproduto. Merges pequenos, desenvolvimento na mainline e consertar builds vermelhos imediatamente são hábitos; comprar um pipeline não os instala.
  • Velocidade sem observabilidade é aposta. Fazer deploy o tempo todo só é seguro se você enxerga falhas rápido — monitoramento e alertas fazem parte da prática, não são um adendo.
  • A última milha varia. Bancos de dados, migrações e serviços stateful resistem ao “é só redeployar”; o pipeline precisa de estratégias (migrações expand-contract, feature flags) que nenhum YAML escreve por você.

CI/CD no Back4app

O Back4app é uma plataforma open-source de Backend as a Service (BaaS) que combina banco de dados gerenciado, APIs REST e GraphQL geradas automaticamente, autenticação, armazenamento de arquivos e funções serverless com Cloud Code. Seu efeito sobre o CI/CD é subtração no lado da entrega: o Cloud Code faz deploy em um comando de CLI ou direto de um repositório Git, e o backend padrão — banco de dados, autenticação, APIs — nunca aparece no seu pipeline, porque não há nada para buildar ou lançar. O que sobra é a metade que você deveria manter: seus testes, rodando a cada commit, na frente de um passo de deploy que agora tem uma linha só.

Perguntas frequentes

O que significa CI/CD?

Continuous Integration e Continuous Delivery — integração contínua e entrega contínua — com uma ambiguidade embutida que todo praticante deveria conhecer: o "CD" também pode significar deploy contínuo (continuous deployment). A entrega mantém uma aprovação humana antes da produção; o deploy a remove. Quando alguém diz "fazemos CI/CD", a pergunta útil é sempre: qual dos dois CDs?

O que é integração contínua?

A prática de mesclar mudanças pequenas em uma mainline compartilhada com frequência — pelo menos diariamente, na definição canônica — com cada merge disparando build e testes automatizados. O ponto é feedback rápido: problemas de integração aparecem minutos depois de serem criados, e não semanas depois, no aperto de um release.

Qual a diferença entre entrega contínua e deploy contínuo?

Um passo de aprovação manual. Na entrega contínua, toda mudança é automaticamente construída, testada e mantida pronta para release, mas um humano decide quando a produção de fato atualiza. No deploy contínuo não há gate: toda mudança que passa pelo pipeline vai ao ar automaticamente, e só um teste falhando a detém.

O que é um pipeline de CI/CD?

O fluxo automatizado que uma mudança percorre do commit à produção: gatilho no código-fonte, build, testes automatizados, entrega a um ambiente de staging e deploy. Cada estágio precisa passar antes de o próximo rodar, então o pipeline age como um gate de qualidade que toda mudança atravessa do mesmo jeito — sem casos especiais, sem heroísmo de deploy.

O que são as métricas DORA?

O jeito padrão da indústria de medir performance de entrega, vindo do programa de pesquisa DORA: frequência de deploy, lead time das mudanças, taxa de falha das mudanças, tempo de recuperação de deploys falhos e — adicionada mais recentemente — taxa de retrabalho de deploy. O achado mais citado da pesquisa é que velocidade e estabilidade não são um trade-off: os melhores times pontuam alto nas duas.

CI/CD é a mesma coisa que DevOps?

Não — DevOps é a cultura mais ampla de unificar desenvolvimento e operações; CI/CD é sua espinha dorsal de automação. Dá para adotar o ferramental de CI/CD sem a cultura (ajuda menos do que se espera) e pregar a cultura sem a automação (muda menos do que se promete). As práticas se reforçam, mas nomeiam coisas diferentes.

Quais testes rodam em um pipeline de CI/CD?

Em camadas, por velocidade: testes unitários e análise estática rodam a cada commit porque são rápidos; testes de integração verificam componentes contra dependências reais; end-to-end, performance e varreduras de segurança rodam em estágios posteriores ou agendados, porque são lentos. A regra de projeto: quanto mais rápido o feedback, mais cedo o estágio.

Times pequenos precisam de CI/CD?

Precisam mais da prática do que do encanamento. Até um time de duas pessoas se beneficia de testes automatizados a cada mudança e de deploys de um comando — isso já é CI/CD em substância. O que times pequenos devem evitar é operar infraestrutura pesada de pipeline; runners hospedados ou plataformas com deploy embutido reduzem a prática a configuração.

Termos relacionados

Compare com

Leitura adicional

Pronto para construir seu backend?

Comece seu projeto no Back4app em minutos — banco de dados, autenticação, APIs e Cloud Code incluídos. Sem cartão de crédito.

Escrito e revisado por Back4app Engineering, Back4app Engineering · Publicado em 2026-08-24