sonarqube
SKILL.md
sonarqube
SonarQube analiza el código Python en busca de code smells, complejidad ciclomática elevada, duplicación de código y coverage insuficiente. El Quality Gate bloquea merges que degradan la calidad del código.
When to use
Implementar en la segunda iteración del proyecto, cuando ya hay tests y un pipeline CI/CD básico funcionando. SonarQube es complementario a ruff/mypy — detecta problemas de diseño que el linting no ve.
Instructions
- Arrancar SonarQube con Docker:
sonarqube: image: sonarqube:community ports: ["9000:9000"] volumes: - sonar_data:/opt/sonarqube/data - sonar_extensions:/opt/sonarqube/extensions - Crear proyecto
kyc-systemen la UI de SonarQube, obtener token. - Instalar scanner:
pip install sonar-scannero usar la acción de GitHub. - Configurar
sonar-project.properties:sonar.projectKey=kyc-system sonar.sources=backend/ sonar.tests=backend/tests/ sonar.python.coverage.reportPaths=coverage.xml sonar.python.version=3.11 - En CI:
sonar-scanner -Dsonar.host.url=http://sonarqube:9000 -Dsonar.token=$SONAR_TOKEN - Configurar Quality Gate: fallar si coverage < 80%, duplicación > 3%, o hay issues bloqueantes nuevos.
Notes
- SonarQube Community es gratuito y self-hosted. Para análisis de PRs individuales se necesita Developer Edition.
- Los code smells más relevantes para este proyecto: métodos con demasiados parámetros (señal de necesidad de refactoring), complejidad cognitiva > 15 en funciones de decisión.
Weekly Installs
1
Repository
davidcastagnetoa/skillsFirst Seen
10 days ago
Security Audits
Installed on
mcpjam1
claude-code1
replit1
junie1
windsurf1
zencoder1