问题描述
我在Mac上通过docker安装了声纳扫描仪
({https://hub.docker.com/r/sonarsource/sonar-scanner-cli),我收到错误消息“您必须为'UnkNown'定义以下必需属性:sonar.projectKey”。
我已经执行以下操作:
1:在JS项目的根目录中添加一个sonar-scanner.properties文件
Text::make(__('Package'),'size')
->default(function(){
//need to load value of current model resource "size" to inform user
})
->readonly(),Number::make(__('Amount'),'amount')
->sortable()
->min(1) // -> i need to change this based on "size" form model resource
->max(9999)
->step(1) // -> i need to change this based on "size" form model resource
->updateRules('nullable')
->rules('required','number')
->help(__('in kilograms')),
2已安装docker和扫描器
这是我的docker命令
docker run --rm -e SONAR_HOST_URL =“ https://sonarqube.comp.com/” -e SONAR.PROJECTKEY =“ my-app” -v“ / git / franchises” sonarsource / sonar-scanner-cli
请让我知道如何正确传递信息。
谢谢
解决方法
将SonarQube Server作为Docker映像运行:
-
\$ docker pull sonarqube:7.9.4-community
-
\$ docker run -d --name sonarqube -e SONAR_ES_BOOTSTRAP_CHECKS_DISABLE=true -p 9000:9000 sonarqube:7.9.4-community
- 登录到http:// localhost:9000(登录名= admin,密码= admin)
- (确保-sonarqube服务器正在localhost:9000上运行)
以Docker映像运行SonarScanner:
-
\$ docker pull newtmitch/sonar-scanner:4-alpine
- 转到项目的根目录
- \ $ docker run -it -v $ {pwd):/ usr / src --link sonarqube:7.9.4-community newtmitch / sonar-scanner:4-alpine
-D sonar.host.url = http:// sonarqube:9000
-D sonar.scm.provider = git
-D sonar.projectBaseDir =。/ src
-D sonar.sources =。
-D sonar.projectName ='测试项目' - (注意:以上我假设您的源代码位于src文件夹内,否则请进行相应更改)
- 转到http:// localhost:9000现在,您将看到一个新项目-“ Test-Project”,它已完全分析了您从根目录运行的源代码。
- 文档click
使用“ sonarqube-scanner”软件包(替代SonarScanner,特定于js / ts语言):
-
\$ npm i -D sonarqube-scanner
-
在package.json中添加一个新脚本:
"sonar": "node sonar-project.js"
-
在您的根目录中添加文件: sonar-project.js
-
在sonar-project.js中复制以下代码:
const sonarqubeScanner = require('sonarqube-scanner'); sonarqubeScanner({ serverUrl: 'http://localhost:9000',options: { 'sonar.sources': 'src','sonar.tests': 'src','sonar.inclusions': 'src/**/*.ts',// Entry point of your code 'sonar.test.inclusions': 'src/**/*.spec.ts,src/**/*.spec.jsx',},() => { console.log('Error Occurred while scanning'); });
-
\$ npm run sonar
-
文档click