Files
VectorDBDemo/.gitea/workflows/sonar-scan.yml
ShaoHua ba8cd891a8
Some checks failed
SonarQube Code Quality Scan / scan (push) Failing after 21s
trigger sonar scan
2025-12-02 04:29:37 +08:00

56 lines
3.1 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
name: SonarQube Code Quality Scan
on:
push:
branches: [ main, develop ]
pull_request:
branches: [ main ]
jobs:
scan:
runs-on: windowsx64 # 与Runner标签一致或写x64
steps:
# 步骤1拉取仓库代码完整历史
- name: Checkout Code (Manual)
run: |
git clone https://git.we965.cn/learning/VectorDBDemo.git .
git fetch --depth=0
git checkout ${{ github.ref_name }}
# 步骤2配置 Sonar Scanner 路径(必做,替换为你的实际路径)
- name: Add Sonar Scanner to PATH
run: |
$scannerPath = "D:\Paths\sonar-scanner-cli\bin" # 替换为你的 Scanner bin 目录
echo "$scannerPath" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8
# 步骤3安装 .NET SDKC# 项目编译依赖,根据你的项目版本调整)
- name: Setup .NET SDK
uses: actions/setup-dotnet@v4
with:
dotnet-version: 6.0.x # 替换为你的项目对应的 .NET 版本(如 3.1.x、5.0.x、7.0.x
# 步骤4编译 C# 项目(生成 SonarQube 所需的二进制文件和覆盖率报告)
- name: Build .NET Project
run: |
dotnet restore # 还原依赖包
dotnet build --configuration Release # 编译项目Release 模式,确保生成完整二进制文件)
# 步骤5执行 SonarQube 扫描C# 专属配置)
- name: Run SonarQube Scan
run: |
sonar-scanner `
-Dsonar.projectKey=sqp_4bae541a7a6ccfd4ebae43150ce5b8b5c1c34c50 ` # 你的 SonarQube 项目密钥
-Dsonar.sources=./ ` # 代码根目录C# 项目通常无需修改)
-Dsonar.host.url=http://127.0.0.1:9000 ` # SonarQube 地址(非本地需改局域网 IP
-Dsonar.login=${{ secrets.SONAR_TOKEN }} ` # 引用 Gitea Secrets 令牌
-Dsonar.language=csharp ` # 强制指定语言为 C#(避免自动识别错误)
-Dsonar.dotnet.build.directory=./**/bin/Release ` # 指定 .NET 编译输出目录匹配步骤4的 Release 模式)
-Dsonar.exclusions=**/obj/**,**/bin/Debug/** ` # 排除无需扫描的目录编译临时文件、Debug 目录)
-Dsonar.coverage.exclusions=**/Test/**,**/*.Tests.cs # 排除测试代码目录(按需调整)
sonar-scanner `
-Dsonar.projectKey=sqp_4bae541a7a6ccfd4ebae43150ce5b8b5c1c34c50 ` # 你的 SonarQube 项目密钥
-Dsonar.sources=./ ` # 代码根目录C# 项目通常无需修改)
-Dsonar.host.url=http://127.0.0.1:9000 ` # SonarQube 地址(非本地需改局域网 IP
-Dsonar.login=${{ secrets.SONAR_TOKEN }} ` # 引用 Gitea Secrets 令牌
-Dsonar.language=csharp ` # 强制指定语言为 C#(避免自动识别错误)
-Dsonar.dotnet.build.directory=./**/bin/Release ` # 指定 .NET 编译输出目录匹配步骤4的 Release 模式)
-Dsonar.exclusions=**/obj/**,**/bin/Debug/** ` # 排除无需扫描的目录编译临时文件、Debug 目录)
-Dsonar.coverage.exclusions=**/Test/**,**/*.Tests.cs # 排除测试代码目录(按需调整)