@sectester/runner 0.33.3 → 0.35.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +3 -3
- package/src/lib/SecRunner.js +13 -1
- package/src/lib/SecRunner.js.map +1 -1
- package/src/lib/SecScan.d.ts +3 -2
- package/src/lib/SecScan.js +4 -1
- package/src/lib/SecScan.js.map +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sectester/runner",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.35.0",
|
|
4
4
|
"description": "Run scanning for vulnerabilities just from your unit tests on CI phase.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"@sectester/reporter": ">=0.16.0 <1.0.0",
|
|
43
43
|
"@sectester/scan": ">=0.16.0 <1.0.0"
|
|
44
44
|
},
|
|
45
|
+
"types": "./src/index.d.ts",
|
|
45
46
|
"main": "./src/index.js",
|
|
46
|
-
"type": "commonjs"
|
|
47
|
-
"types": "./src/index.d.ts"
|
|
47
|
+
"type": "commonjs"
|
|
48
48
|
}
|
package/src/lib/SecRunner.js
CHANGED
|
@@ -58,13 +58,25 @@ class SecRunner {
|
|
|
58
58
|
return new SecScan_1.SecScan({
|
|
59
59
|
...options,
|
|
60
60
|
repeaterId: this.repeater.repeaterId
|
|
61
|
-
}, this.configuration.container.resolve(scan_1.ScanFactory), this.configuration.container.resolve(reporter_1.Formatter));
|
|
61
|
+
}, this.configuration.container.resolve(scan_1.ScanFactory), this.configuration.container.resolve(reporter_1.Formatter), this.configuration.container.resolve(reporter_1.Reporter));
|
|
62
62
|
}
|
|
63
63
|
async initConfiguration(configuration) {
|
|
64
64
|
await configuration.loadCredentials();
|
|
65
65
|
configuration.container.register(reporter_1.Formatter, {
|
|
66
66
|
useClass: reporter_1.PlainTextFormatter
|
|
67
67
|
});
|
|
68
|
+
if (process.env.GITHUB_ACTIONS === 'true') {
|
|
69
|
+
if (process.env.PR_COMMIT_SHA) {
|
|
70
|
+
configuration.container.register(reporter_1.Reporter, {
|
|
71
|
+
useClass: reporter_1.GitHubCheckRunReporter
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
configuration.container.register(reporter_1.Reporter, {
|
|
77
|
+
useClass: reporter_1.StdReporter
|
|
78
|
+
});
|
|
79
|
+
}
|
|
68
80
|
}
|
|
69
81
|
setupShutdown() {
|
|
70
82
|
SecRunner.SHUTDOWN_SIGNALS.forEach(event => process.once(event, this.beforeShutdownSignalHandler));
|
package/src/lib/SecRunner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SecRunner.js","sourceRoot":"","sources":["../../../../../packages/runner/src/lib/SecRunner.ts"],"names":[],"mappings":";;;AACA,uCAAoC;AACpC,0CAA8E;AAC9E,kDAI6B;AAC7B,0CAA8C;AAC9C,
|
|
1
|
+
{"version":3,"file":"SecRunner.js","sourceRoot":"","sources":["../../../../../packages/runner/src/lib/SecRunner.ts"],"names":[],"mappings":"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"}
|
package/src/lib/SecScan.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Formatter } from '@sectester/reporter';
|
|
1
|
+
import { Formatter, Reporter } from '@sectester/reporter';
|
|
2
2
|
import { ScanFactory, ScanSettingsOptions, Severity, TargetOptions } from '@sectester/scan';
|
|
3
3
|
export interface FunctionScanOptions<T> {
|
|
4
4
|
inputSample: T;
|
|
@@ -8,9 +8,10 @@ export declare class SecScan {
|
|
|
8
8
|
private readonly settings;
|
|
9
9
|
private readonly scanFactory;
|
|
10
10
|
private readonly formatter;
|
|
11
|
+
private readonly reporter?;
|
|
11
12
|
private _threshold;
|
|
12
13
|
private _timeout;
|
|
13
|
-
constructor(settings: Omit<ScanSettingsOptions, 'target'>, scanFactory: ScanFactory, formatter: Formatter);
|
|
14
|
+
constructor(settings: Omit<ScanSettingsOptions, 'target'>, scanFactory: ScanFactory, formatter: Formatter, reporter?: Reporter | undefined);
|
|
14
15
|
run<T>(options: TargetOptions | FunctionScanOptions<T>): Promise<void>;
|
|
15
16
|
threshold(severity: Severity): SecScan;
|
|
16
17
|
timeout(value: number): SecScan;
|
package/src/lib/SecScan.js
CHANGED
|
@@ -5,14 +5,16 @@ const FunctionScanTarget_1 = require("./FunctionScanTarget");
|
|
|
5
5
|
const IssueFound_1 = require("./IssueFound");
|
|
6
6
|
const scan_1 = require("@sectester/scan");
|
|
7
7
|
class SecScan {
|
|
8
|
-
constructor(settings, scanFactory, formatter) {
|
|
8
|
+
constructor(settings, scanFactory, formatter, reporter) {
|
|
9
9
|
this.settings = settings;
|
|
10
10
|
this.scanFactory = scanFactory;
|
|
11
11
|
this.formatter = formatter;
|
|
12
|
+
this.reporter = reporter;
|
|
12
13
|
this._threshold = scan_1.Severity.LOW;
|
|
13
14
|
this._timeout = 600000;
|
|
14
15
|
}
|
|
15
16
|
async run(options) {
|
|
17
|
+
var _a;
|
|
16
18
|
let functionScanTarget;
|
|
17
19
|
let targetOptions;
|
|
18
20
|
if (this.isFunctionScanOptions(options)) {
|
|
@@ -43,6 +45,7 @@ class SecScan {
|
|
|
43
45
|
finally {
|
|
44
46
|
await scan.stop();
|
|
45
47
|
await (functionScanTarget === null || functionScanTarget === void 0 ? void 0 : functionScanTarget.stop());
|
|
48
|
+
await ((_a = this.reporter) === null || _a === void 0 ? void 0 : _a.report(scan));
|
|
46
49
|
}
|
|
47
50
|
}
|
|
48
51
|
threshold(severity) {
|
package/src/lib/SecScan.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SecScan.js","sourceRoot":"","sources":["../../../../../packages/runner/src/lib/SecScan.ts"],"names":[],"mappings":";;;AAAA,6DAA0D;AAC1D,6CAA0C;AAE1C,0CAQyB;AAOzB,MAAa,OAAO;IAIlB,YACmB,QAA6C,EAC7C,WAAwB,EACxB,SAAoB;
|
|
1
|
+
{"version":3,"file":"SecScan.js","sourceRoot":"","sources":["../../../../../packages/runner/src/lib/SecScan.ts"],"names":[],"mappings":"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"}
|