Skip to content

feat(frontend): implantar analise sonarqube no frontend (#938) - #953

Open
AlisonAndrade123 wants to merge 1 commit into
devfrom
feature/938-analise-sonarqube-frontend
Open

AlisonAndrade123 wants to merge 1 commit into
devfrom
feature/938-analise-sonarqube-frontend

Conversation

@AlisonAndrade123

Copy link
Copy Markdown
Collaborator

O que foi feito

  • Criado o arquivo apps/apae/sonar-project.properties com as configurações do scanner para o frontend (sonar.projectKey=apae-geral-frontend, sonar.sources=src, exclusões de node_modules, .next, public e next-env.d.ts, e encoding UTF-8).
  • Adicionado .scannerwork/ ao apps/apae/.gitignore para não versionar arquivos temporários da análise.
  • Criado o script de automação .scripts/sonar-scan-frontend.sh que valida a presença obrigatória da variável SONAR_TOKEN, aponta por padrão para a porta 9500 (SONAR_HOST_URL) e executa a imagem oficial sonarsource/sonar-scanner-cli:11 em container Docker isolado montando apps/apae em /usr/src.

Issue relacionada

Closes #938

Como testar

  1. Certifique-se de que o servidor SonarQube está rodando na porta 9500 (via docker compose -f docker-compose.sonar.yml up -d ou docker start apae-sonarqube).

  2. Testar a validação de token ausente (o script deve interromper com mensagem de erro clara):

    .scripts/sonar-scan-frontend.sh
    
  3. Executar a análise completa passando a variável SONAR_TOKEN:

    SONAR_TOKEN=<SEU_TOKEN> .scripts/sonar-scan-frontend.sh
    
  4. Validar que a análise termina com EXECUTION SUCCESS e acessar o painel do projeto em:

    http://localhost:9500/dashboard?id=apae-geral-frontend.
    

Checklist

  • apps/apae/sonar-project.properties criado com propriedades exigidas e exclusões corretas
  • .scripts/sonar-scan-frontend.sh criado, com permissão de execução, rodando a análise de ponta a ponta
  • O script valida obrigatoriedade do SONAR_TOKEN com mensagem amigável
  • Imagem presa por tag explícita (sonarsource/sonar-scanner-cli:11)
  • .scannerwork/ adicionado em apps/apae/.gitignore
  • Nenhum arquivo fora de apps/apae/ e .scripts/ foi alterado
  • Nenhum arquivo de apps/apae/src foi modificado
  • Nenhuma credencial ou token foi versionado

Evidências

1. Baseline da Primeira Análise (Código Geral)

  • Linhas de Código: ~25k linhas totais (4.1k linhas de lógica a cobrir em 266 arquivos fonte)
  • Segurança (Security): 0 questões abertas (Rating A)
  • Confiabilidade (Reliability - Bugs): 31 questões abertas (Rating D)
  • Manutenibilidade (Maintainability - Code Smells): 227 questões abertas (Rating A)
  • Pontos de Acesso de Segurança (Security Hotspots): 3 aguardando revisão (Rating E)
  • Cobertura (Coverage): 0.0% (Baseline honesto sem runner de testes configurado no módulo)
  • Duplicações: 4.8% (em 25k linhas)

2. Versões Utilizadas

  • Imagem Docker do Scanner: sonarsource/sonar-scanner-cli:11
  • Imagem Docker do Servidor: sonarqube:10.7-community

3. Log de Execução Limpa

image

4. Painel do SonarQube

image

@AlisonAndrade123 AlisonAndrade123 added this to the 2026.2 - Sprint 3 milestone Sep 11, 2026
@AlisonAndrade123 AlisonAndrade123 self-assigned this Sep 11, 2026
@AlisonAndrade123 AlisonAndrade123 added QA Lista de tarefas para análise de qualidade 5 Complexidade 5 labels Sep 11, 2026
@coderabbitai

coderabbitai Bot commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Advanced

Run ID: 11efc025-6fb4-46bb-90a8-2068a3c9416e

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Comment thread .scripts/sonar-scan-frontend.sh
@AlisonAndrade123
AlisonAndrade123 force-pushed the feature/938-analise-sonarqube-frontend branch from 77591a3 to 0b23e95 Compare September 16, 2026 13:34
@AlisonAndrade123

Copy link
Copy Markdown
Collaborator Author

Olá @JerfesonGregorio!

Modifiquei a branch target para a dev, realizei o rebase para limpar o histórico (ficando apenas os 3 arquivos da issue alterados) e registrei a documentação completa com o passo a passo de execução e o baseline nos comentários da Issue #938.

Solicito nova revisão. Obrigado!

@JerfesonGregorio JerfesonGregorio left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

5 Complexidade 5 QA Lista de tarefas para análise de qualidade

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implantar análise SonarQube no frontend do APAE geral

2 participants