Java 使用Jenkinsfile和maven对pullRequest的代码进行声纳分析
目前在我的项目中,组织存储库上的每个请求都是由Java 使用Jenkinsfile和maven对pullRequest的代码进行声纳分析,java,maven,github,jenkins,sonar-runner,Java,Maven,Github,Jenkins,Sonar Runner,目前在我的项目中,组织存储库上的每个请求都是由Jenkins自动生成的,如Jenkins文件中指定的那样。 构建结束时,将在send byJenkins中向github发送一条消息,其中包含此项目的构建状态 我想向pull请求的对话发送一个声纳分析,但仅针对已被pull请求更新的文件/代码 悬赏信息: 它需要使用一个Jenkins文件(请在您的回复中添加完整的Jenkins文件) 结果应该只出现在github的pullRequest页面中,用于pullRequest更新的代码 您的mvn so
Jenkins
自动生成的,如Jenkins文件中指定的那样。
构建结束时,将在send byJenkins
中向github发送一条消息,其中包含此项目的构建状态
我想向pull请求的对话发送一个声纳
分析,但仅针对已被pull请求更新的文件/代码
悬赏信息:
- 它需要使用一个Jenkins文件(请在您的回复中添加完整的Jenkins文件)
- 结果应该只出现在github的pullRequest页面中,用于pullRequest更新的代码
<sonar.gitlab.project_id>${gitlab.project_id}</sonar.gitlab.project_id>
<sonar.gitlab.unique_issue_per_inline>true</sonar.gitlab.unique_issue_per_inline>
<sonar.gitlab.user_token>GITLAB_USER_TOKEN</sonar.gitlab.user_token>
<sonar.gitlab.url>${git.hostname.url}</sonar.gitlab.url>
谢谢,但我只是没有将身份验证选项添加到示例脚本中。我搜索了一个完整的工作文件来响应我的需要。所以你的脚本中有身份验证,你只是没有把它放在你的问题中?脚本是否将任何内容推送到GitHub?这可能适用于SonarQube 6.7和PR插件。我相信SonarQube 7.x的工作原理稍有不同(而且是更好的文档记录+付费功能)
<sonar.gitlab.project_id>${gitlab.project_id}</sonar.gitlab.project_id>
<sonar.gitlab.unique_issue_per_inline>true</sonar.gitlab.unique_issue_per_inline>
<sonar.gitlab.user_token>GITLAB_USER_TOKEN</sonar.gitlab.user_token>
<sonar.gitlab.url>${git.hostname.url}</sonar.gitlab.url>
-Dsonar.analysis.mode=preview \
-Dsonar.github.pullRequest=$PULL_REQUEST_ID \
-Dsonar.github.repository=myOrganisation/myProject \
-Dsonar.github.oauth=$GITHUB_ACCESS_TOKEN \
-Dsonar.host.url=https://server/sonarqube \
-Dsonar.login=$SONARQUBE_ACCESS_TOKEN