Pular para o conteúdo principal

Questão de Engenharia de Software — DevOps, IaC, Integração Contínua e Entrega Contínua — CESPE / CEBRASPE 2024

Engenharia de SoftwareDevOps, IaC, Integração Contínua e Entrega Contínua
Código
ce403892
Banca
CESPE / CEBRASPE
Órgão
STJ
Ano
2024
Cargo
AJ

Julgue o próximos item, relativos a H2, Keycloak, Webhooks, Git, CD (continuous delivery) e CI (continuous integration).

 

CD (continuous delivery) e CI (continuous integration) são práticas afetas ao DevOps: a primeira realiza a implantação automática no repositório da solução após o build; e a segunda realiza implantação automática no ambiente de produção a cada release.

  1. CCerto
  2. EErrado
Revelar gabarito e comentário

GabaritoE — Errado

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

CI e CD: conceitos e a pegadinha da banca

Gabarito: Errado (E). O item inverte os conceitos: a Integração Contínua (CI) é que realiza a integração automática do código no repositório após o build, enquanto a Entrega Contínua (CD) prepara o software para implantação, mas não o implanta automaticamente em produção — isso é a Implantação Contínua (Continuous Deployment). A banca trocou os papéis das duas práticas, e é exatamente essa inversão que torna o item incorreto.

Para entender por que o item está errado, é preciso dominar a diferença entre três práticas que costumam ser confundidas: Integração Contínua (CI), Entrega Contínua (Continuous Delivery) e Implantação Contínua (Continuous Deployment). A CI é a prática de integrar o código dos desenvolvedores em um repositório central com frequência, executando builds e testes automatizados a cada integração. O objetivo é detectar erros cedo e garantir que o código sempre esteja em um estado saudável. Já a CD (Continuous Delivery) vai um passo além: após a CI, o software é automaticamente preparado e disponibilizado em um repositório de artefatos, pronto para ser implantado em produção — mas essa implantação depende de uma aprovação humana. Por fim, a Implantação Contínua (Continuous Deployment) automatiza completamente o processo, implantando cada alteração aprovada nos testes diretamente em produção, sem intervenção humana.

A pegadinha da questão está em atribuir à CD a implantação automática no repositório e à CI a implantação automática em produção. Na verdade, a CI é que automatiza a integração no repositório, e a implantação automática em produção é característica da Implantação Contínua, não da Entrega Contínua. O item mistura os três conceitos, criando uma definição que não corresponde a nenhuma das práticas.

Para fixar, veja a comparação:

Prática

O que faz

Implantação em produção

CI (Integração Contínua)

Integra código no repositório central, com build e testes automatizados

Não

CD (Entrega Contínua)

Prepara o software e o disponibiliza em um repositório, pronto para implantar

Não (exige aprovação humana)

Continuous Deployment

Implanta automaticamente em produção, sem intervenção humana

Sim, automática

A banca explora exatamente a confusão entre essas siglas. O candidato que memoriza apenas "CI/CD" sem distinguir os conceitos tende a aceitar a afirmação como correta, mas a definição apresentada está invertida. Guarde a fronteira: CI integra no repositório; CD entrega pronto, mas não implanta; Continuous Deployment implanta automaticamente.

CI/CD
  • 1CI (Integração Contínua)
    • Integra código no repositório
    • Build e testes automatizados
    • Não implanta em produção
  • 2CD (Entrega Contínua)
    • Prepara e disponibiliza artefato
    • Implantação exige aprovação humana
  • 3Continuous Deployment
    • Implantação automática em produção
    • Sem intervenção humana
LEVEL · soulevel.com.br

Item — ❌ Errado

O item afirma que "CD (continuous delivery) realiza a implantação automática no repositório da solução após o build; e CI realiza implantação automática no ambiente de produção a cada release". Há dois erros claros:

  1. CD não realiza implantação automática no repositório: a Entrega Contínua automatiza a preparação e a disponibilização do software em um repositório de artefatos, mas a implantação em produção não é automática — ela exige aprovação humana. A implantação automática em produção é característica da Implantação Contínua (Continuous Deployment).

  2. CI não realiza implantação automática em produção: a Integração Contínua automatiza a integração do código no repositório central, com build e testes, mas não implanta em produção. A implantação em produção é uma etapa posterior, que pode ser feita por CD (com aprovação) ou por Continuous Deployment (automaticamente).

Portanto, o item está errado porque inverte os papéis das práticas e atribui a cada uma uma função que não lhe corresponde.

Gabarito: Errado (E).

Link permanente: /questoes/ce403892