ci(sonarqube): add non-blocking SonarQube analysis on push to main #13

Merged
whitlocktech merged 1 commits from ci/sonarqube-analysis into main 2026-07-21 04:15:15 +00:00
Member

Adds SonarQube static analysis to the link repo, mirroring the setup already in website/.

What

  • sonar-project.properties — project key runic-gateway-link, sources sidecar/src, excludes target/ + lockfiles. Rust tests are inline #[cfg(test)], so no separate sonar.tests path. Commented-out Clippy-report hook for later enrichment.
  • .gitea/workflows/sonarqube.ymlSonarQube workflow on push to main (+ workflow_dispatch). Full-history checkout + sonarsource/sonarqube-scan-action@v4.

Notes

  • Non-blocking by design: runs after merge, never on PRs — it only feeds the dashboard, complementing release.yml.
  • Source-based scan: no Rust toolchain / build in the workflow, keeping it lightweight like website's.
  • One-time setup required in Gitea (Repo → Settings → Actions): secret SONAR_TOKEN + variable SONAR_HOST_URL. The SonarQube project runic-gateway-link must also be created server-side.
  • Documented org-wide in docs/ci/SONARQUBE.md (RunicGateway/docs#, separate PR).

AI-assisted: authored with Claude Code (Anthropic). Commit trailer records Co-Authored-By: Claude.

🤖 Generated with Claude Code

Adds SonarQube static analysis to the link repo, mirroring the setup already in `website/`. ## What - `sonar-project.properties` — project key `runic-gateway-link`, sources `sidecar/src`, excludes `target/` + lockfiles. Rust tests are inline `#[cfg(test)]`, so no separate `sonar.tests` path. Commented-out Clippy-report hook for later enrichment. - `.gitea/workflows/sonarqube.yml` — `SonarQube` workflow on push to `main` (+ `workflow_dispatch`). Full-history checkout + `sonarsource/sonarqube-scan-action@v4`. ## Notes - **Non-blocking by design:** runs after merge, never on PRs — it only feeds the dashboard, complementing `release.yml`. - **Source-based scan:** no Rust toolchain / build in the workflow, keeping it lightweight like website's. - **One-time setup required** in Gitea (Repo → Settings → Actions): secret `SONAR_TOKEN` + variable `SONAR_HOST_URL`. The SonarQube project `runic-gateway-link` must also be created server-side. - Documented org-wide in `docs/ci/SONARQUBE.md` (RunicGateway/docs#, separate PR). AI-assisted: authored with Claude Code (Anthropic). Commit trailer records `Co-Authored-By: Claude`. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
wtclaude added 1 commit 2026-07-21 04:14:15 +00:00
Mirrors the website repo's setup: a source-based scan of sidecar/src that
reports to the self-hosted SonarQube server after merge, never gating PRs.

Co-Authored-By: Claude <noreply@anthropic.com>
whitlocktech approved these changes 2026-07-21 04:15:09 +00:00
whitlocktech merged commit 21b9920f80 into main 2026-07-21 04:15:15 +00:00
whitlocktech deleted branch ci/sonarqube-analysis 2026-07-21 04:15:16 +00:00
Sign in to join this conversation.
No Reviewers
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: RunicGateway/link#13
No description provided.