Questão nº 28
Questão de Tecnologia da Informação · FCC TRT19 2022 (nº 28)
Em relação ao deploy de aplicações da Plataforma Digital do Poder Judiciário PDPJ-Br, a estrutura do projeto, independentemente da linguagem de programação em que for escrito, deve possuir a seguinte estrutura mínima:
```
projeto
├── Dockerfile
├── I
└── kubernetes/
├── base/
│ ├── base.yml
│ └── kustomization.yml
└── overlays/
├── eks-hml-01/
│ ├── configmaps.yml
│ ├── II
│ └── kustomization.yml
└── eks-prd-01/
├── configmaps.yml
├── ingress.yml
└── kustomization.yml
```
Considerando que:
I. Arquivo yaml que define os passos da pipeline de build e deploy automáticos; e
II. Arquivo de configuração do ingress da aplicação. Necessário apenas para aquelas aplicações que necessitem de URL própria exposta na Internet.
I e II correspondem, correta e respectivamente, a
- A`.gitlab-ci.yml` e `ingress.yml` (alternativa correta)
- B`.docker.yml` e `ingressconfig.yml`
- C`.gitlab-cicd.yml` e `ingress-settings.yml`
- D`.docker-ci.yml` e `settings-ingress.yml`
- E`.gitlab-cd.yml` e `ingress-config.yml`
Resposta comentada
Gabarito Alternativa A
Uma pipeline CI/CD é um conjunto de etapas automatizadas para construir, testar e implantar software, garantindo entregas rápidas e confiáveis. Um Kubernetes Ingress é um objeto que gerencia o acesso externo a serviços dentro de um cluster Kubernetes, permitindo que requisições HTTP/S cheguem à aplicação correta.
- (A) Correta: O arquivo
.gitlab-ci.ymlé o nome padrão e amplamente reconhecido para definir as etapas de uma pipeline de Integração Contínua (CI) e Entrega/Implantação Contínua (CD) no GitLab. Jáingress.ymlé o nome comum e padrão para um arquivo que define um recurso Ingress no Kubernetes, que é usado para expor serviços HTTP/S externamente. - (B) Incorreta:
.docker.ymlnão é um nome padrão para pipelines CI/CD (o comum para orquestração Docker édocker-compose.yml).ingressconfig.ymlnão é o nome padrão para um Ingress do Kubernetes. - (C) Incorreta:
.gitlab-cicd.ymlnão é o nome padrão para o arquivo de pipeline do GitLab (o correto é.gitlab-ci.yml).ingress-settings.ymlnão é o nome padrão para um Ingress do Kubernetes. Armadilha da banca: Esta alternativa é tentadora porque.gitlab-cicd.ymltenta ser mais explícito sobre "CI/CD", mas o padrão da ferramenta é simplesmente.gitlab-ci.yml. Da mesma forma,ingress-settings.ymlsoa como um arquivo de configuração, mas o nome padrão e mais conciso éingress.yml. A banca explora a tendência de se usar nomes mais descritivos, em vez dos nomes técnicos padronizados. - (D) Incorreta:
.docker-ci.ymlnão é um nome padrão para pipelines CI/CD.settings-ingress.ymlnão é o nome padrão para um Ingress do Kubernetes. - (E) Incorreta:
.gitlab-cd.ymlnão é o nome padrão para o arquivo de pipeline do GitLab (o correto é.gitlab-ci.yml).ingress-config.ymlnão é o nome padrão para um Ingress do Kubernetes.
Fonte: FCC TRT19 2022 Técnico Judiciário - Área Apoio Especializado - Especialidade Tecnologia da Informação (Caderno Tipo 001). Reproduzida para fins de estudo.