Questão nº 133
Questão de Engenharia de Software · CEBRASPE TCU 25 AUFC 2025 (nº 133)
Em relação a GitHub Actions, Grafana e DevSecOps, julgue os itens subsecutivos.
O seguinte trecho do arquivo de workflow do GitHub Actions faz que o workflow seja acionado em duas situações distintas: quando uma nova etiqueta é criada no repositório e quando ocorre um push especificamente para a branch main.
01 on:
02 label:
03 types:
04 - created
05 page_build:
06 types:
07 - main
Resposta comentada
O GitHub Actions usa eventos (como push, pull_request, label, page_build) para disparar workflows. Cada evento tem seus próprios tipos (ex.: created, deleted). A pegadinha aqui é misturar eventos com tipos de outros eventos, e usar types para especificar uma branch (o que não existe).
- Correta: Errado. O trecho mistura eventos e tipos de forma inválida:
labelé um evento, maspage_buildé outro evento (não um tipo delabel), etypesnão serve para filtrar branch (isso é feito combranches).
No trecho, o erro está em "page_build: types: - main" — page_build é um evento separado (disparado quando o GitHub Pages é construído), e types para page_build não aceita main (que é nome de branch, não um tipo de evento). Além disso, o evento label com types: [created] está correto, mas o segundo bloco está totalmente inválido.
Como ficaria certo: Para acionar em duas situações distintas (etiqueta criada e push para main), o correto seria:
on:
label:
types: [created]
push:
branches: [main]
Fonte: CEBRASPE TCU 25 AUFC 2025 Auditor Federal de Controle Externo - Área de Controle Externo / Orientação: Auditoria de Tecnologia da Informação. Reproduzida para fins de estudo.