Skip to content
This repository was archived by the owner on Oct 14, 2020. It is now read-only.

Commit e87b1ea

Browse files
committed
#33 Improve the names of the generated cascading scans
1 parent 80c4dc6 commit e87b1ea

File tree

2 files changed

+11
-5
lines changed

2 files changed

+11
-5
lines changed

hooks/declarative-subsequent-scans/hook.ts

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,10 @@ interface ScanSpec {
4040
parameters: Array<string>;
4141
}
4242

43+
interface ExtendedScanSpec extends ScanSpec {
44+
generatedBy: string;
45+
}
46+
4347
interface HandleArgs {
4448
scan: Scan;
4549
getFindings: () => Array<Finding>;
@@ -51,8 +55,9 @@ export async function handle({ scan, getFindings }: HandleArgs) {
5155

5256
const cascadingScans = getCascadingScans(findings, cascadingRules);
5357

54-
for (const { scanType, parameters } of cascadingScans) {
58+
for (const { scanType, parameters, generatedBy } of cascadingScans) {
5559
await startSubsequentSecureCodeBoxScan({
60+
name: `${scan.metadata.name}-${generatedBy}`,
5661
parentScan: scan,
5762
scanType,
5863
parameters,
@@ -72,8 +77,8 @@ async function getCascadingRules(): Promise<Array<CascadingRules>> {
7277
export function getCascadingScans(
7378
findings: Array<Finding>,
7479
cascadingRules: Array<CascadingRules>
75-
): Array<ScanSpec> {
76-
const cascadingScans: Array<ScanSpec> = [];
80+
): Array<ExtendedScanSpec> {
81+
const cascadingScans: Array<ExtendedScanSpec> = [];
7782

7883
for (const cascadingRule of cascadingRules) {
7984
for (const finding of findings) {
@@ -86,6 +91,7 @@ export function getCascadingScans(
8691
const { scanType, parameters } = cascadingRule.spec.scanSpec;
8792

8893
cascadingScans.push({
94+
generatedBy: cascadingRule.metadata.name,
8995
scanType: Mustache.render(scanType, finding),
9096
parameters: parameters.map((parameter) =>
9197
Mustache.render(parameter, finding)

hooks/declarative-subsequent-scans/scan-helpers.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,16 +7,16 @@ kc.loadFromDefault();
77
const k8sApiCRD = kc.makeApiClient(k8s.CustomObjectsApi);
88

99
async function startSubsequentSecureCodeBoxScan({
10+
name,
1011
parentScan,
1112
scanType,
1213
parameters,
1314
}) {
14-
const name = `${parentScan.metadata.name}-${scanType}`;
1515
const scanDefinition = {
1616
apiVersion: "execution.experimental.securecodebox.io/v1",
1717
kind: "Scan",
1818
metadata: {
19-
name,
19+
generateName: `${name}-`,
2020
labels: {
2121
...parentScan.metadata.labels,
2222
},

0 commit comments

Comments
 (0)