问题描述
我正在尝试整合Jenkins和Sonarqube。我在jenkins中使用Sonarqube-Scanner插件。构建作业时,出现以下错误:-
- 无法获取Node.js版本。不会分析CSS文件。
- 无法获取Node.js版本。不会分析任何TypeScript文件。您可以使用“ sonar.exclusions”属性从分析中排除TypeScript文件。
关于为什么会这样的任何想法?我尝试通过一个简单的NodeJs项目运行相同的工作,并且工作正常。
任何帮助将不胜感激,谢谢!
解决方法
要在Angular Project
上进行声纳扫描,您需要先安装打字稿。因此,我们需要安装nodejs> = 8并安装npm。在How to install nodejs and npm in Jenkins.和How to integrate sonarqube in Jenkins
示例管道:
pipeline {
agent any
tools {nodejs "node_v10"}
stages {
stage('Git Pull') {
steps {
echo 'Code Checkout'
}
}
stage('Install Typescript') {
steps {
sh 'npm install typescript'
}
}
stage('Code scan Sonarqube') {
steps {
script {
def scannerHome = tool 'sonarqube';
withSonarQubeEnv("sonarqube-container") {
sh """${tool("sonarqube")}/bin/sonar-scanner \
-Dsonar.projectKey=test-node-js \
-Dsonar.sources=. \
-Dsonar.projectName=test-node-js \
-Dsonar.projectVersion=1.0 """
}
}
}
}
}
请根据需要更改或包括其他一些声纳分析参数。
的更多信息