@jitesoft/audit-for-gitlab
Version:
Minimal application to convert npm audit report into gitlab-ci vulnerability report format.
53 lines (51 loc) • 1.79 kB
JavaScript
;
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js/object/define-property");
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
_Object$defineProperty(exports, "__esModule", {
value: true
});
exports.version = exports.audit = void 0;
var _promise = _interopRequireDefault(require("@babel/runtime-corejs3/core-js/promise"));
var _child_process = require("child_process");
var _os = require("os");
var _Util = require("./Util.js");
/**
* Run npm-version via a child_process exec call.
*
* @return {Promise<object>}
*/
const version = async () => {
await (0, _Util.logger)(_Util.LogLevels.debug, 'Fetching npm version.');
return new _promise.default((resolve, reject) => {
(0, _child_process.exec)('npm version --json', {
maxBuffer: Math.round((0, _os.freemem)() * 0.85)
}, async (e, stdout, stderr) => {
if (stderr) {
await (0, _Util.logger)(_Util.LogLevels.error, stderr);
}
await (0, _Util.logger)(_Util.LogLevels.debug, 'Version fetch done.');
return resolve(JSON.parse(stdout));
});
});
};
/**
* Run npm-audit via a child_process exec call.
*
* @return {Promise<object>}
*/
exports.version = version;
const audit = async () => {
await (0, _Util.logger)(_Util.LogLevels.debug, 'Running audit.');
return new _promise.default((resolve, reject) => {
(0, _child_process.exec)('npm audit --json', {
maxBuffer: Math.round((0, _os.freemem)() * 0.85)
}, async (e, stdout, stderr) => {
if (stderr) {
await (0, _Util.logger)(_Util.LogLevels.error, stderr);
}
await (0, _Util.logger)(_Util.LogLevels.debug, 'Audit done.');
return resolve(JSON.parse(stdout));
});
});
};
exports.audit = audit;