No trecho de arquivo .gitlab-ci.yml, utilizado no GitLab CI...

Comentários
Veja os comentários dos nossos alunos
No GitLab CI/CD, as regras definidas em WORKFLOW:RULES: funcionam de forma avaliativa sequencial — ou seja, a primeira regra que for verdadeira define se a pipeline será criada ou não. Não é necessário que todas as regras sejam verdadeiras.
Portanto, a assertiva está Errada.
Introdução a workflow.rules no GitLab CI/CD
Em pipelines do GitLab, o bloco workflow com rules controla se um pipeline será criado antes mesmo de avaliar jobs. Cada entrada em rules é avaliada na ordem e a primeira condição verdadeira determina a criação do pipeline; não é um “E lógico” entre todas as regras.
Resolução
A afirmação está incorreta. No workflow.rules, cada regra é testada em sequência e basta que uma delas seja verdadeira para o pipeline ser criado. Não é necessário que todas as regras sejam simultaneamente verdadeiras. No trecho mostrado, o pipeline será criado se for um evento de merge request, ou se a execução for para um commit marcado como tag, ou se o branch do commit for igual ao branch padrão. Se nenhuma dessas condições for satisfeita, o pipeline não será criado. Esse comportamento evita pipelines em cenários fora dos gatilhos desejados e permite combinar múltiplos casos de disparo sem exigir que ocorram juntos.
Para exigir que as três condições sejam verdadeiras ao mesmo tempo, não se usa múltiplas regras separadas; é preciso condensar a lógica em uma única regra com uma expressão booleana que combine os três predicados. Exemplo prático em uma única regra:
if: $CI_PIPELINE_SOURCE == "merge_request_event" && $CI_COMMIT_TAG && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
Resposta: Errado - Perplexity
Para que estiver estuando GitHub Actions, bom ficar atento a essa estrutura do Workflow. É como o "ON", que serve para disparar os gatilhos que farão a pipeline executar. No caso da questão, foi colocada a condiconal e, da forma como está inscrita, basta uma ser verdadeira para disparar o evento. Para que fossem necessárias as 3 condições, o código deveria "concatenar" as 3 com operadores lógios "E" (&& no caso).
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo