@sectester/runner 0.20.0 → 0.20.2
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 +1 -1
- package/src/lib/SecRunner.d.ts +5 -0
- package/src/lib/SecRunner.js +22 -0
- package/src/lib/SecRunner.js.map +1 -1
package/package.json
CHANGED
package/src/lib/SecRunner.d.ts
CHANGED
|
@@ -2,7 +2,9 @@ import { SecScanOptions } from './SecScanOptions';
|
|
|
2
2
|
import { SecScan } from './SecScan';
|
|
3
3
|
import { Configuration, ConfigurationOptions } from '@sectester/core';
|
|
4
4
|
export declare class SecRunner {
|
|
5
|
+
static readonly SHUTDOWN_SIGNALS: readonly string[];
|
|
5
6
|
private readonly configuration;
|
|
7
|
+
private readonly logger;
|
|
6
8
|
private repeater;
|
|
7
9
|
private repeaterFactory;
|
|
8
10
|
private repeatersManager;
|
|
@@ -12,4 +14,7 @@ export declare class SecRunner {
|
|
|
12
14
|
clear(): Promise<void>;
|
|
13
15
|
createScan(options: SecScanOptions): SecScan;
|
|
14
16
|
private initConfiguration;
|
|
17
|
+
private setupShutdown;
|
|
18
|
+
private removeShutdownHandler;
|
|
19
|
+
private readonly beforeShutdownSignalHandler;
|
|
15
20
|
}
|
package/src/lib/SecRunner.js
CHANGED
|
@@ -8,8 +8,17 @@ const scan_1 = require("@sectester/scan");
|
|
|
8
8
|
const reporter_1 = require("@sectester/reporter");
|
|
9
9
|
class SecRunner {
|
|
10
10
|
constructor(config) {
|
|
11
|
+
this.beforeShutdownSignalHandler = async () => {
|
|
12
|
+
try {
|
|
13
|
+
await this.clear();
|
|
14
|
+
}
|
|
15
|
+
catch (e) {
|
|
16
|
+
this.logger.error(e.message);
|
|
17
|
+
}
|
|
18
|
+
};
|
|
11
19
|
this.configuration =
|
|
12
20
|
config instanceof core_1.Configuration ? config : new core_1.Configuration(config);
|
|
21
|
+
this.logger = this.configuration.container.resolve(core_1.Logger);
|
|
13
22
|
}
|
|
14
23
|
get repeaterId() {
|
|
15
24
|
var _a;
|
|
@@ -24,6 +33,7 @@ class SecRunner {
|
|
|
24
33
|
this.configuration.container.resolve(repeater_1.RepeatersManager);
|
|
25
34
|
this.repeaterFactory =
|
|
26
35
|
this.configuration.container.resolve(repeater_1.RepeaterFactory);
|
|
36
|
+
this.setupShutdown();
|
|
27
37
|
this.repeater = await this.repeaterFactory.createRepeater();
|
|
28
38
|
await this.repeater.start();
|
|
29
39
|
}
|
|
@@ -35,6 +45,7 @@ class SecRunner {
|
|
|
35
45
|
}
|
|
36
46
|
}
|
|
37
47
|
finally {
|
|
48
|
+
this.removeShutdownHandler();
|
|
38
49
|
delete this.repeater;
|
|
39
50
|
delete this.repeatersManager;
|
|
40
51
|
delete this.repeaterFactory;
|
|
@@ -55,6 +66,17 @@ class SecRunner {
|
|
|
55
66
|
useClass: reporter_1.PlainTextFormatter
|
|
56
67
|
});
|
|
57
68
|
}
|
|
69
|
+
setupShutdown() {
|
|
70
|
+
SecRunner.SHUTDOWN_SIGNALS.forEach(event => process.once(event, this.beforeShutdownSignalHandler));
|
|
71
|
+
}
|
|
72
|
+
removeShutdownHandler() {
|
|
73
|
+
SecRunner.SHUTDOWN_SIGNALS.forEach(event => process.removeListener(event, this.beforeShutdownSignalHandler));
|
|
74
|
+
}
|
|
58
75
|
}
|
|
59
76
|
exports.SecRunner = SecRunner;
|
|
77
|
+
SecRunner.SHUTDOWN_SIGNALS = [
|
|
78
|
+
'SIGTERM',
|
|
79
|
+
'SIGINT',
|
|
80
|
+
'SIGHUP'
|
|
81
|
+
];
|
|
60
82
|
//# sourceMappingURL=SecRunner.js.map
|
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,
|
|
1
|
+
{"version":3,"file":"SecRunner.js","sourceRoot":"","sources":["../../../../../packages/runner/src/lib/SecRunner.ts"],"names":[],"mappings":"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"}
|