Presença
Registro de presença na sessão com o código informado pelo instrutor.
coleta fechada
Remoto ao vivo · 8 h · 13/04/2027 a 15/04/2027 · Instrutor: Gustavo Costa
| Sessão | Data | Horário | Módulos |
|---|---|---|---|
| s1 | 13/04/2027 | 09:00–11:00 | Plataforma GitLab: organização, visibilidade e papéis; Planejamento com itens de trabalho, labels, milestones e boards |
| s2 | 13/04/2027 | 11:00–13:00 | Gestão de portfólio: épicos, roadmaps, iterações e pesos; Repositório Git na plataforma GitLab: branches, tags e proteção |
| s3 | 15/04/2027 | 09:00–11:00 | Merge requests e revisão de código; Fundamentos de pipelines GitLab CI/CD |
| s4 | 15/04/2027 | 11:00–13:00 | Container registry e package registry; Varreduras de segurança no pipeline: SAST, segredos, dependências, contêiner e IaC |
Registro de presença na sessão com o código informado pelo instrutor.
coleta fechada
Questionário antes do primeiro módulo (mede o conhecimento inicial).
coleta fechada
O mesmo questionário ao final da turma (mede a evolução).
coleta fechada
Pesquisa anônima sobre a turma, o instrutor e os laboratórios.
coleta fechada
| Tópico | Tier | Fonte |
|---|---|---|
| Grupos, subgrupos (até 20 níveis de aninhamento) e projetos | Free | documentação |
| Visibilidade private, internal e public; visibilidade do projeto igual ou mais restritiva que a do grupo pai | Free | documentação |
| Visibilidade internal disponível apenas em GitLab Self-Managed e GitLab Dedicated | Free | documentação |
| Papéis padrão (Minimal Access, Guest, Planner, Reporter, Developer, Maintainer, Owner) e prevalência do papel mais alto na herança | Free | documentação |
| Papel Security Manager (beta desde 18.11) | Free | documentação |
| Membros de projeto e de grupo, membros herdados e diretos | Free | documentação |
Pré-requisitos: Plataforma GitLab: organização, visibilidade e papéis
| Tópico | Tier | Fonte |
|---|---|---|
| Tipos de itens de trabalho: issue, epic, task, objetivos e resultados-chave, casos de teste | Free | documentação |
| Lista unificada Plan > Work items (disponível de forma geral desde 18.10) | Free | documentação |
| Labels; scoped labels com sintaxe chave::valor mutuamente exclusivas | Premium | documentação |
| Milestones e percentual concluído | Free | documentação |
| Gráficos burndown e burnup de milestone | Premium | documentação |
| Issue boards e múltiplos boards | Free | documentação |
| Boards configuráveis (milestone, labels, responsável, peso, iteração) e listas por responsável | Premium | documentação |
Pré-requisitos: Planejamento com itens de trabalho, labels, milestones e boards
| Tópico | Tier | Fonte |
|---|---|---|
| Épicos e hierarquia de itens de trabalho | Premium | documentação |
| Épicos filhos (épico pai de outros épicos) | Ultimate | documentação |
| Roadmap (linha do tempo de épicos e milestones) | Premium | documentação |
| Iterações e cadências de iteração | Premium | documentação |
| Peso de itens de trabalho (inclui épicos desde 18.11) | Premium | documentação |
Pré-requisitos: Plataforma GitLab: organização, visibilidade e papéis
| Tópico | Tier | Fonte |
|---|---|---|
| Branch padrão protegida por padrão; regras em Settings > Repository > Branch rules | Free | documentação |
| Allowed to merge, Allowed to push and merge (inclusive No one), Allowed to force push, regras com curinga | Free | documentação |
| Branches protegidas no nível de grupo; grupos e usuários individuais nas listas de permissão | Premium | documentação |
| Tags protegidas: controle de criação e bloqueio de atualização e exclusão | Free | documentação |
| Push rules (pre-receive hooks): expressões RE2 até 511 caracteres, mensagem de commit, autor, commits assinados | Premium | documentação |
| Branches: criação, comparação e exclusão | Free | documentação |
Pré-requisitos: Repositório Git na plataforma GitLab: branches, tags e proteção
| Tópico | Tier | Fonte |
|---|---|---|
| Padrão de fechamento (Closes, Fixes, Resolves, Implements) em commit ou descrição do MR | Free | documentação |
| Métodos de merge: merge commit, merge commit com histórico semilinear, fast-forward; squash | Free | documentação |
| Auto-merge e verificação Pipelines must succeed | Free | documentação |
| Aprovações opcionais no Free (papel Developer ou superior) | Free | documentação |
| Regras de aprovação obrigatórias e aprovações em nível de grupo e instância | Premium | documentação |
| Code Owners: arquivo CODEOWNERS (raiz, docs/ ou .gitlab/) e aprovação obrigatória em branch protegida | Premium | documentação |
| Configurações de aprovação: impedir aprovação pelo autor (padrão), por quem adicionou commits, remover aprovações em novos commits | Premium | documentação |
Pré-requisitos: Repositório Git na plataforma GitLab: branches, tags e proteção
| Tópico | Tier | Fonte |
|---|---|---|
| Estrutura do .gitlab-ci.yml: palavras-chave globais (default, include, stages, variables, workflow) e de job | Free | documentação |
| Stages padrão (.pre, build, test, deploy, .post); job sem stage vai para test | Free | documentação |
| Jobs, script, before_script, after_script, image, jobs ocultos iniciados por ponto | Free | documentação |
| when (on_success padrão, on_failure, always, manual, delayed, never) e allow_failure | Free | documentação |
| Pipeline editor e validação de configuração (CI Lint) | Free | documentação |
| Tipos e estados de pipeline | Free | documentação |
Pré-requisitos: ci-variaveis-artefatos
| Tópico | Tier | Fonte |
|---|---|---|
| Nome de imagem <registry>/<namespace>/<projeto>[/caminho] com até dois níveis adicionais | Free | documentação |
| Autenticação no pipeline com CI_REGISTRY_USER/CI_REGISTRY_PASSWORD ou CI_JOB_TOKEN | Free | documentação |
| Política de limpeza (name_regex e name_regex_keep) | Free | documentação |
| Package registry: formatos (Maven, npm, NuGet, PyPI, Terraform, entre outros) | Free | documentação |
| Pacotes genéricos: PUT /projects/:id/packages/generic/:nome/:versão/:arquivo | Free | documentação |
Pré-requisitos: Fundamentos de pipelines GitLab CI/CD
| Tópico | Tier | Fonte |
|---|---|---|
| SAST com analisadores open source, relatório JSON; exige stage test e runner Linux com executor Docker ou Kubernetes | Free | documentação |
| GitLab Advanced SAST e resultados de SAST no merge request | Ultimate | documentação |
| Detecção de segredos no pipeline (template Jobs/Secret-Detection.gitlab-ci.yml) | Free | documentação |
| Secret push protection (GA 17.5): bloqueio do push, [skip secret push protection], push option secret_push_protection.skip_all, evento de auditoria | Ultimate | documentação |
| Dependency scanning por SBOM CycloneDX (GA 19.0; template Jobs/Dependency-Scanning.v2.gitlab-ci.yml); Gemnasium depreciado em 17.9 | Ultimate | documentação |
| Container scanning com Trivy (template Jobs/Container-Scanning.gitlab-ci.yml, variável CS_IMAGE) | Free | documentação |
| Varredura de IaC com KICS (template Jobs/SAST-IaC.gitlab-ci.yml) | Free | documentação |
Cada aluno recebe um subgrupo com os projetos dos exercícios; a correção é automática, pela API da plataforma GitLab.
| Exercício | Título | Objetivo | Tier | Duração |
|---|---|---|---|---|
| lab-plataforma-01 | Estruturar grupo, subgrupo e projeto com papéis | Criar a hierarquia de um time e atribuir papéis padrão a membros. | Free | 40 min |
| lab-planejamento-01 | Milestone, labels, board e tasks | Organizar um incremento de trabalho em milestone e board por label. | Free | 40 min |
| lab-repositorio-01 | Proteger a branch main e as tags de release | Configurar branch protegida sem push direto e tags protegidas por curinga. | Free | 30 min |
| lab-mr-01 | Fluxo issue, branch, merge request e merge | Fechar uma issue automaticamente pelo merge de um merge request com revisão registrada. | Free | 30 min |
| lab-ci-01 | Primeiro pipeline com stages e jobs | Criar .gitlab-ci.yml com build e teste e executar o pipeline em main. | Free | 45 min |
| lab-seg-01 | Habilitar SAST, detecção de segredos, container scanning e IaC scanning | Adicionar varreduras de segurança ao pipeline com os templates CI/CD. | Free | 50 min |