You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Aluno: Pablo Augusto Ramos Sobral RA: 6325076 Nota Final:1,2 / 1,5
Tabela de Critérios
Critério
Peso
Status
Pontuação
Infraestrutura funcional
25%
⚠️ Parcial
0,20
Arquitetura Multi-AZ
10%
✅ Completo
0,10
Security Groups
15%
✅ Completo
0,15
User Data + EC2
10%
❌ Faltando
0,00
Tags e organização
10%
✅ Completo
0,10
Evidências
5%
❌ Ausentes
0,00
README com diagrama
5%
✅ Presente
0,05
AWS Academy
20%
⏳ Pendente
—
TOTAL (sem Academy)
80%
—
1,2
Pontos Fortes ✅
VPC + Subnets Multi-AZ bem estruturadas: 4 subnets em 2 AZs com CIDR correto (10.0.0.0/16), DNS habilitado, map_public_ip_on_launch configurado adequadamente nas públicas.
Internet Gateway + Route Tables configurados corretamente: IGW anexado, route table pública com rota 0.0.0.0/0 → IGW, associações corretas nas duas subnets públicas.
Security Groups com menor privilégio: SG da API permite SSH e porta 3000 de 0.0.0.0/0; SG do banco restringe porta 5432 apenas à VPC (10.0.0.0/16). Egress totalmente permissivo em ambos.
Tagging consistente: Todos os recursos possuem tags Name, Project, Environment, ManagedBy e Owner conforme requisitado.
Organização de código: Separação em arquivos temáticos (main.tf, variables.tf, outputs.tf, ec2.tf, iam.tf, security_groups.tf), .gitignore adequado.
Problema: Não cria role/profile próprios com AmazonS3ReadOnlyAccess como exigido. Apenas referencia a role existente do Academy.
Requisito: "IAM Role com permissão AmazonS3ReadOnlyAccess" — deveria ser criada, não apenas referenciada.
Solução: Criar role/policy/profile específicas no Terraform com a permissão S3.
6. Entrega.md incorreta
Encontrado: Arquivo menciona "Aula 03" e "Terraform + IAM Completo", não Aula 04 VPC+EC2.
Esperado:entrega.md conforme template do TF, com link para portfolio, checkboxes de evidências preenchidas.
Impacto: Não há registro claro de entrega da Aula 04.
Resumo Executivo
O código demonstra compreensão sólida de networking AWS (VPC, subnets Multi-AZ, IGW, route tables, SGs), mas não é executável como está porque:
Falta arquivo user_data.sh → EC2 não inicia aplicação
Falta chave SSH pública versionada → terraform apply bloqueia
Falta evidências de funcionamento → impossível validar
IAM não implementado conforme spec → apenas reutiliza lab role
O README está bem estruturado, mas o código tem gaps críticos de entregabilidade.
Parecer para o PR
## ⚠️ Revisão do Pull Request — Aula 04: VPC + EC2 Multi-AZ### Status: **AGUARDANDO AJUSTES**
Parabéns pelo trabalho estruturado! A infraestrutura de networking está bem projetada com Multi-AZ, security groups com menor privilégio e tags consistentes. Porém, há **bloqueadores críticos** que impedem aprovação:
### 🔴 Bloqueadores Críticos1.**Arquivo `user_data.sh` ausente**- A referência em `ec2.tf` aponta para arquivo que não existe no repositório
- Sem este arquivo, `terraform apply` falha
-**Ação:** Crie `aula-04/user_data.sh` com os passos de instalação do Node.js, Git, clone da API e start da aplicação
2.**Chave SSH não versionada**-`ec2.tf` tenta carregar `technova-key.pub` (correto por segurança)
- Quem clonar não conseguirá executar sem gerar a chave
-**Ação:** Adicione no README passo-a-passo para gerar a chave (ex: `ssh-keygen -f technova-key`)
3.**Evidências de funcionamento faltando**- Nenhum `terraform-plan-output.txt`, `evidencia-api.json` ou `evidencia-ssh.txt`-**Ação:** Execute `terraform plan` e capture outputs, execute `curl` na API, teste SSH com User Data funcionando
4.**Arquivo `entrega.md` incorreto**- Atual menciona "Aula 03 Terraform + IAM"
-**Ação:** Atualize para Aula 04, inclua checkboxes de evidências preenchidas conforme template
5.**IAM Role não criada conforme especificação**- Código apenas referencia `LabRole` e `LabInstanceProfile` do Academy
- Requisito: criar role com `AmazonS3ReadOnlyAccess`-**Ação:** Implemente em `iam.tf` a criação da role, policy attachment e instance profile
6.**Arquivo `providers.tf` ausente**- Recomendação: separar bloco `terraform` e `provider` em arquivo dedicado para melhor manutenção
### 🟡 Melhorias Sugeridas- Adicione comentários explicando as decisões Multi-AZ no README
- Considere usar variáveis para os CIDRs das subnets (maior reutilização)
- No README, crie tabela descrevendo cada recurso criado
### ✅ Pontos Fortes- ✓ Networking Multi-AZ bem estruturado
- ✓ Security Groups com menor privilégio
- ✓ Tagging consistente em todos os recursos
- ✓ Organização clara de código (arquivos temáticos)
- ✓ Outputs completos
### 📋 Próximos Passos1. Crie `user_data.sh` com instalação da API
2. Atualize README com instruções de geração de chave SSH
3. Execute `terraform plan` → `terraform apply` com sucesso
4. Capture evidências (curl, SSH, outputs)
5. Atualize `entrega.md` conforme template
6. Implemente IAM role própria com S3ReadOnly
7. Faça push com todos os ajustes e commente neste PR
**Após os ajustes, será possível avaliar a execução no AWS Academy para validar a nota final.**
Fico disponível para dúvidas!
Observação Final
A nota de 1,2/1,5 (80% dos critérios verificáveis) reflete código estruturado, mas não-executável. Uma vez corrigidos os bloqueadores (user_data.sh, evidências, IAM, entrega.md), a nota subirá para 1,5/1,5. O componente AWS Academy (20%) será avaliado pelo professor após funcionamento comprovado.
Avaliacao automatica gerada por GitHub Actions. A nota final e revisada pelo professor, incluindo o componente AWS Academy.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Entrega do Trabalho de Fixação — Aula 04: Terraform VPC + EC2 Multi-AZ.
Aluno: Pablo Augusto Ramos Sobral
RA: 6325076
Portfólio:
https://github.com/Pablao02/unifaat-devops-portfolio