Questão nº 32
Questão de Tecnologia da Informação · FCC TRT22 2022 (nº 32)
Considere o recorte de um arquivo .gitlab-ci.yml que traz algumas opções de configuração de um pipeline GitLab CI/CD, nas seções que são separadas pelas global keywords.
stages:
- sync
- prepare
- build-images
I:
interruptible: true
timeout: 90m
workflow:
# regras
variables:
# variáveis
II:
- local: .gitlab/ci/*.gitlab-ci.yml
- remote: 'https://gitlab.com/gitlab-org/frontend/-/merge_request_pipelines.yml'
As global keywords I e II correspondem, correta e respectivamente, a
- A`tags` e `directories`
- B`dependencies` e `environment`
- C`dependencies` e `pages`
- D`default` e `include` (alternativa correta)
- E`default` e `directories`
Resposta comentada
Gabarito Alternativa D
As global keywords no GitLab CI/CD são seções especiais no arquivo .gitlab-ci.yml que definem configurações que afetam todo o pipeline ou como outras partes do arquivo são processadas, em vez de serem específicas de um único job (tarefa).
- (A) Incorreta:
tagsé uma palavra-chave de nível de job (tarefa) usada para selecionar runners específicos, não uma global keyword para configurações padrão.directoriesnão é uma global keyword padrão do GitLab CI/CD para inclusão de arquivos. - (B) Incorreta:
dependenciesé uma palavra-chave de nível de job para controlar artefatos entre jobs.environmenté uma palavra-chave de nível de job para definir ambientes de implantação. Nenhuma delas se encaixa nos contextos apresentados. - (C) Incorreta:
dependenciesé uma palavra-chave de nível de job.pagesé um nome de job reservado para o GitLab Pages, não uma global keyword para inclusão de arquivos. - (D) Correta: A seção I contém
interruptibleetimeout, que são configurações comuns que podem ser definidas como padrão para todos os jobs do pipeline. A global keyworddefaulté usada exatamente para isso, definindo valores padrão que os jobs herdam. A seção II contémlocaleremote, que são usados para incluir configurações de outros arquivos.gitlab-ci.yml(seja do repositório local ou de uma URL externa), permitindo modularizar o pipeline. A global keywordincludeé a responsável por essa funcionalidade. - (E) Incorreta: Embora
defaultesteja correto,directoriesnão é uma global keyword padrão do GitLab CI/CD para inclusão de arquivos. A armadilha aqui seria associardirectoriesa caminhos de arquivos, mas a palavra-chave correta para incluir outros arquivos de configuração éinclude.
Fonte: FCC TRT22 2022 Analista Judiciário - Área Apoio Especializado - Especialidade Tecnologia da Informação (Caderno Tipo 1). Reproduzida para fins de estudo.