CI/CD Tooling für das BeagleBone Black Projekt.
| Datei | Beschreibung |
|---|---|
collect_results.py |
Sammelt Go- und pytest-Testergebnisse → test_results.json |
generate_reports.py |
Erstellt HTML-Dashboard und PDF-Report aus Requirements + Testergebnissen |
generate_arch.py |
Generiert Architektur-Diagramme und Drone-CI-Pipeline-YAML |
report.sh |
Orchestriert den vollständigen Report-Lauf lokal |
build_adoc.sh |
Baut AsciiDoc-Dokumentation |
trend_summary.py |
Aktualisiert Trend-Daten für Dashboards |
req_tracing_summary.py |
Erzeugt Requirements-Traceability-Zusammenfassung |
junit_to_sonar_generic.py |
Konvertiert JUnit XML → Sonar Generic Test Format |
shellcheck_to_sarif.py |
Konvertiert shellcheck JSON → SARIF |
c_coverage.sh |
C Code Coverage mit gcov/lcov → .info-Datei für SonarQube |
bausteinsicht |
Bausteinsicht-Diagramm-Generator (Binary) |
pip install pytest
pytest tests/ -v- name: Build c-lib with coverage
run: make -C c-lib coverage CC=gcc
- name: Run C tests
run: make -C c-lib test
- uses: paulefl/beaglebone-tooling/.github/actions/c-coverage@main
with:
source-dir: c-lib/
output-file: reports/c-coverage.info
filter-patterns: '/usr/*' # optional, das ist der DefaultDanach in sonar-project.properties:
sonar.c.lcov.reportPaths=reports/c-coverage.infoDas Tooling wird via GitHub Releases eingebunden:
- gh release download --repo paulefl/beaglebone-tooling --pattern "tooling-v*.tar.gz"
- tar xf tooling-v*.tar.gzDas Projekt nutzt SonarQube für kontinuierliches Quality-Tracking. Jeder CI-Lauf erzeugt automatisch einen Snapshot (Coverage, Bugs, Technical Debt, Quality Gate).
→ Vollständige Dokumentation: docs/sonarqube-trend.md
git tag v1.0.0
git push origin v1.0.0