Questão nº 90

Questão de Engenharia de Software · CEBRASPE SUSEP 2025 (nº 90)

CEBRASPE2025Analista Técnico - Área: Tecnologia da Informação e Ciência de DadosEngenharia de Software
default:
  image: 'ruby:2.4'
  before_script:
    - echo Hello World
variables:
  DOMAIN: example.com
  WEBHOOK_URL: https://my-webhook.example.com
build ruby 1/2:
  stage: build
  inherit:
    default: [image]
    variables: [WEBHOOK_URL]
  script:
    - echo "ruby1"
build ruby 2/2:
  stage: build
  script:
    - echo "ruby2"

Considerando o trecho de código precedente, extraído do arquivo .gitlab-ci.yml, julgue os próximos itens.


Os jobs build ruby 1/2 e build ruby 2/2 são, por padrão, executados em paralelo no GitLab CI, a menos que haja dependências explícitas configuradas entre eles.

Resposta comentada

No GitLab CI, stages (estágios) definem a ordem macro do pipeline: jobs do mesmo stage rodam em paralelo por padrão; jobs de stages diferentes rodam em sequência. Como build ruby 1/2 e build ruby 2/2 estão ambos no stage build, eles disparam juntos — a menos que você use needs: (dependência explícita) ou dependencies: para forçar ordem/ligação entre eles.

  • Correta: Certo. Mesmo stage = execução paralela por padrão; só needs:/dependencies: criam dependência explícita.

Fica de olho: a banca costuma trocar o cenário para jobs em stages diferentes (ex.: um em build, outro em test) e afirmar que rodam em paralelo — aí seria Errado, pois stages distintos rodam em sequência. Outra pegadinha clássica: dizer que inherit: ou variables: criam dependência entre jobs — não criam, só controlam herança de configuração.

Fonte: CEBRASPE SUSEP 2025 Analista Técnico - Área: Tecnologia da Informação e Ciência de Dados. Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho