007
007

Reputation: 161

Error while execute npm run sonarqube-scanner-node command

Error while execute npm run sonarqube-scanner-node command in cmd

E:...>npm run sonarqube-scanner-node

[17:04:46] Executing sonarqube-scanner ...
node_modules\sonarqube-scanner-node\dist\sonar-scanner-3.0.3.778\bin\sonar-scann
er.bat
child_process.js:504
throw err;
^

Error: spawnSync ...\git\zara-cargo-mobile\node_modules\sonarqube
-scanner-node\dist\sonar-scanner-3.0.3.778\bin\sonar-scanner.bat ENOENT
at exports._errnoException (util.js:1018:11)
at spawnSync (child_process.js:459:20)
at execFileSync (child_process.js:496:13)
at Object. (...\git\zara-cargo-mobile\node_modules
\sonarqube-scanner-node\src\index.js:18:1)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
at Module.runMain (module.js:604:10)

npm ERR! Windows_NT 6.1.7601
npm ERR! argv "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\
node_modules\npm\bin\npm-cli.js" "run" "sonarqube"
npm ERR! node v6.11.0
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE

I also Test sonarqube-scanner-node in Browser from https://www.npmjs.com/package/sonarqube-scanner-node . It also not working.

Error Stack Trace Viewer
Error: spawnSync /app/available_modules/1500637668000/sonarqube-scanner-node/dist/sonar-scanner-3.0.3.778/bin/sonar-scanner ENOENT
at util._errnoException in core util.js — line 1022
at child_process.spawnSync in core child_process.js — line 461
at child_process.execFileSync in core child_process.js — line 498
in sonarqube-scanner-node/src/index.js — line 18
node.js startup…

Please help me to solve this problem.

Upvotes: 1

Views: 13199

Answers (2)

ricelq
ricelq

Reputation: 1

// .env

SONAR_TOKEN: '3332a46a695b3dd98a030e9022d3bfd93'

// package.json:

"scripts": {
  "myscript1": "node myscript-cmd --cmd_name=script1",
  "myscript2": "node myscript-cmd --cmd_name=script2"
},

// myscript-cmd.js (placed at the root of your project directory)

// accessing the value of 'cmd_var' passed as a command-line argument
const args = process.argv.slice(2); 
const argMap = args.reduce((acc, arg) => {
  const [key, value] = arg.split("=");
  acc[key] = value;
  return acc;
}, {});

const cmdVarValue = argMap["--cmd_name"];

if (cmdVarValue === "script1") {
  require("dotenv").config();
  const execSync = require("child_process").execSync;

  // execute the command...
  execSync(`sonar-scanner -Dsonar.token=${process.env.SONAR_TOKEN}`, {
    stdio: [0, 1, 2],
  });
} else if(cmdVarValue === 'script2'){
}

// dont forget to add the sonar-scanner path to the environment variables

C:\sonarqube\sonar-scanner-5.0.1.3006-windows\bin

Upvotes: 0

007
007

Reputation: 161

I used sonar-scanner package and follow link https://www.npmjs.com/package/sonar-scanner.

I passed full path of sonar-scanner.bat(Show in correct code section) in package.json and run successfully.

Incorrect Code: (As shown in Document)

{
  "scripts": {
    "sonar-scanner": "node_modules/sonar-scanner/bin/sonar-scanner"
  }
}

Correct Code:

 {
      "scripts": {
        "sonar-scanner": "node_modules/sonar-scanner/bin/sonar-scanner.bat"
      }
    }

Upvotes: 1

Related Questions