gitlab集成sonar,实现pull request

1. 一般的job设置:

analysis_Win:
  stage: analysis
  before_script:
    - git config --system core.longpaths true
    #用于启用 Git 仓库中文件路径长度大于 260 字符的支持。
  script:
    - SonarScanner.MSBuild.exe begin
      /k:"$SONAR_PROJECT_KEYS"
      /d:sonar.host.url="$SONAR_HOST_URL"
      /d:sonar.branch.name="$CI_COMMIT_REF_NAME -Win"
      /d:sonar.login="$SONAR_TOKEN"
      /v:"$CI_COMMIT_TAG"
      /d:sonar.exclusions=Assets/**/Plugins/**/*
    - MSBuild.exe WinDEMOPATHs_$CI_PIPELINE_IID.sln /t:Rebuild /m
    - SonarScanner.MSBuild.exe end /d:sonar.login="$SONAR_TOKEN"

2. 实现pull request的job设置:

analysis_win:
  stage: analysis
   before_script:
     - git config --system core.longpaths true
  script:
    - SonarScanner.MSBuild.exe begin
      -k:"$SONAR_PROJECT_KEYS"
      -d:sonar.host.url="$SONAR_HOST_URL"
      -d:sonar.login="$SONAR_TOKEN"
      -v:"$CI_COMMIT_TAG"
      -d:sonar.exclusions=Assets/**/Plugins/**/*
      -d:sonar.pullrequest.key=$CI_MERGE_REQUEST_IID
      -d:sonar.pullrequest.branch=$CI_MERGE_REQUEST_SOURCE_BRANCH_NAME
      -d:sonar.pullrequest.base=$CI_MERGE_REQUEST_TARGET_BRANCH_NAME
      -d:sonar.qualitygate.wait=true   
    - MSBuild.exe AndroidDEMOPATHs_$CI_PIPELINE_IID.sln /t:Rebuild /m
    - SonarScanner.MSBuild.exe end /d:sonar.login="$SONAR_TOKEN"

3. 解说:

-  添加三个参数:Pull Request analysis

-  参数 "/d:sonar.branch.name" 与 pull request的三个参数冲突,不能一起使用。

4. 效果:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在GitLab中配置Sonar,需要按照以下步骤进行操作: 1. 首先,确保已经在服务器上成功安装并运行了SonarQube。可以通过访问SonarQube的URL来验证其是否成功运行。 2. 进入GitLab的项目页面,并点击左侧菜单中的“Settings”选项。 3. 在“Settings”页面上,点击“CI/CD”选项卡,并找到“General pipelines settings”部分。 4. 在“General pipelines settings”部分,找到“Secret variables”子选项,并点击“Expand”按钮。 5. 点击“Add variable”按钮,输入以下变量信息: - KeySONAR_TOKEN - Value:SonarQube中的访问令牌,用于连接GitLabSonarQube。 6. 点击“Add variable”按钮以保存配置变量。 7. 返回到GitLab项目页面,并找到代码仓库中的“.gitlab-ci.yml”文件。 8. 编辑该文件,并添加以下配置信息: ```yaml sonarqube: image: sonarsource/sonar-scanner-cli script: - sonar-scanner -Dsonar.login=$SONAR_TOKEN -Dsonar.projectKey=项目标识符 ``` 其中,“项目标识符”需要替换为你在SonarQube中创建的项目标识符。 9. 保存并提交更改。GitLab会自动触发CI/CD流水线,将代码提交到SonarQube进行代码质量分析。 10. 在GitLab的项目页面上,点击左侧菜单中的“CI/CD”选项,可以查看CI/CD流水线的执行情况。 配置完成后,GitLab将会在每次代码推送到仓库时,自动触发SonarQube执行代码质量分析,并将分析结果反馈给GitLab。这样就可以更好地管理和控制代码质量,提高项目的软件开发效率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值