Workshops
free
Bootcamp Ansible — Network Automation
Full pipeline automation: GitLab, Terraform, FastAPI orchestrator, Ansible playbooks e GitOps para mudanças de BGP e prefix-list em uma topologia multi-vendor.
32 exercícios6 secções~480min
1Ambiente Cloud com Terraform (Hetzner)
6 exercícios
Ambiente Cloud com Terraform (Hetzner)
6 exercícios
Provisione o servidor de lab na Hetzner Cloud usando Terraform antes de qualquer outra configuração.
1
Escreva o providers.tf para a Hetzner Cloud
easy20pts
2
Declare o Firewall da Hetzner (modules/fw/main.tf)
medium25pts
3
Declare o Servidor Hetzner (modules/server/main.tf)
medium30pts
4
Exporte o IP do servidor (modules/server/output.tf)
easy15pts
5
Execute terraform init e terraform plan
easy20pts
6
Apply e verificar SSH no servidor
medium30pts
2Configuração do GitLab
4 exercícios
Configuração do GitLab
4 exercícios
Deploy e configure uma instância self-hosted do GitLab e registre um runner.
1
Deploy do GitLab com Docker Compose
easy20pts
2
Registre um GitLab Runner
easy20pts
3
Crie o projeto ansible-bootcamp via API
easy20pts
4
Configure variáveis CI/CD no projeto
medium20pts
3Terraform GitLab Provider
4 exercícios
Terraform GitLab Provider
4 exercícios
Declare recursos do GitLab como código usando o provider Terraform para GitLab.
1
Escreva o provider.tf para o GitLab
easy25pts
2
Declare o recurso gitlab_project
medium25pts
3
Declare variáveis CI/CD como gitlab_project_variable
medium25pts
4
Execute terraform apply e verifique no GitLab
hard30pts
4Orquestrador FastAPI
5 exercícios
Orquestrador FastAPI
5 exercícios
Construa a API de webhook que conecta tickets do Frappe aos pipelines do GitLab.
1
Defina o schema Pydantic para o webhook Frappe
medium30pts
2
Implemente o endpoint POST /webhook/frappe
medium30pts
3
Parse da descrição HTML do ticket Frappe
hard35pts
4
Dispare o pipeline GitLab via API
hard35pts
5
Teste o orquestrador end-to-end com curl
medium20pts
5Projeto Ansible
7 exercícios
Projeto Ansible
7 exercícios
Configure inventory, group_vars e os dois playbooks principais (inbound e outbound).
1
Escreva o ansible.cfg
easy20pts
2
Escreva o group_vars/all.yaml
easy20pts
3
Configure o inventory dinâmico do NetBox
medium30pts
4
Escreva o playbook pb_inbound.yaml
hard40pts
5
Escreva a fase de planejamento do pb_outbound.yaml
hard40pts
6
Implemente a detecção de drift
hard40pts
7
Implemente backup, push de config e verificação NAPALM
hard35pts
6Push para o GitLab e Pipeline CI/CD
6 exercícios
Push para o GitLab e Pipeline CI/CD
6 exercícios
Crie o `.gitlab-ci.yml`, faça push do projeto e dispare o pipeline completo.
1
Escreva o .gitlab-ci.yml com 4 stages
medium30pts
2
Adicione o job de ansible-lint no stage validate
easy25pts
3
Configure o trigger token do pipeline
easy20pts
4
Faça push do projeto Ansible para o GitLab
easy20pts
5
Dispare o pipeline e verifique todos os stages
medium30pts
6
Teste end-to-end: ticket → orquestrador → pipeline → rede
hard50pts