bulk-run-nsp
Small library that will find all directories in a rootPath with a package.json
file and will run nsp (Node Security Project) on it.
Why?
I had a lot of old projects that I didn't worked for a while and I was running out of free space on my disk. I ran a command that would delete all the node_modules
folders in a given rootPath and I "instantly" gained 20GB of free disk.
After that I thought I should have a better way to deal with this and started creating a electron application to manage my workspace, and created a few of core modules to support it, such as:
How it works?
This module uses query-paths to recursively find all the folders with a package.json file. Then it runs nsp
and returns the json format from nsp in a object with the following structure:
{
"isVulnerable": true,
"projectPath": "/users/username/project",
"results": []
}
Being the array results the output of the json
formatter of nsp module.
If you pass showLog
config as true, then you'll get a command line output in a table like structure, just as the one default formatter from nsp
.
Usage
const bulkRunNsp = require('bulk-run-nsp');
const bulk = bulkRunNsp({ rootPath: '/Users/username/dev', showLog: true });
bulk.on('data', (report) => {
console.log('report received for: ', report.projectPath);
});
bulk.on('error', (report) => {
console.log('error received: ', report.error, ' for: ', report.projectPath);
});
bulk.on('end', () => {
console.log('end');
});