Skip to content

Commit 194b40c

Browse files
committed
Remove severity columns if not needed
1 parent e55b906 commit 194b40c

File tree

3 files changed

+28
-47
lines changed

3 files changed

+28
-47
lines changed

dist/index.js

Lines changed: 11 additions & 23 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/index.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/summary.ts

Lines changed: 16 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ export async function generateSummary(opts: ActionInputs, data: Report, filters?
1515
core.summary.addHeading(`Scan Results for ${opts.overridePullString || opts.imageTag}`);
1616

1717
addVulnTableToSummary(filteredData, filters?.minSeverity);
18-
addVulnsByLayerTableToSummary(filteredData);
18+
addVulnsByLayerTableToSummary(filteredData, filters?.minSeverity);
1919

2020
if (!opts.standalone) {
2121
addReportToSummary(data);
@@ -24,6 +24,8 @@ export async function generateSummary(opts: ActionInputs, data: Report, filters?
2424
await core.summary.write({ overwrite: true });
2525
}
2626

27+
const SEVERITY_ORDER: Severity[] = ["critical", "high", "medium", "low", "negligible"];
28+
2729
const SEVERITY_LABELS: Record<Severity, string> = {
2830
critical: "🟣 Critical",
2931
high: "🔴 High",
@@ -65,10 +67,7 @@ function addVulnTableToSummary(
6567
minSeverity?: Severity
6668
) {
6769
const pkgs = data.result.packages;
68-
// Lista completa de severidades en orden, de mayor a menor
69-
const SEVERITY_ORDER: Severity[] = ["critical", "high", "medium", "low", "negligible"];
7070

71-
// Solo mostramos las severidades >= minSeverity
7271
const visibleSeverities = SEVERITY_ORDER.filter(sev =>
7372
!minSeverity || isSeverityGte(sev, minSeverity)
7473
);
@@ -92,11 +91,15 @@ function addVulnTableToSummary(
9291
]);
9392
}
9493

95-
function addVulnsByLayerTableToSummary(data: Report) {
94+
function addVulnsByLayerTableToSummary(data: Report, minSeverity?: Severity) {
9695
if (!Array.isArray(data.result.layers) || data.result.layers.length === 0) {
9796
return;
9897
}
9998

99+
const visibleSeverities = SEVERITY_ORDER.filter(sev =>
100+
!minSeverity || isSeverityGte(sev, minSeverity)
101+
);
102+
100103
core.summary.addHeading(`Package vulnerabilities per layer`, 2);
101104

102105
let packagesPerLayer: { [key: string]: Package[] } = {};
@@ -138,32 +141,22 @@ function addVulnsByLayerTableToSummary(data: Report) {
138141
{ data: 'Type', header: true },
139142
{ data: 'Version', header: true },
140143
{ data: 'Suggested fix', header: true },
141-
{ data: '🟣 Critical', header: true },
142-
{ data: '🔴 High', header: true },
143-
{ data: '🟠 Medium', header: true },
144-
{ data: '🟡 Low', header: true },
145-
{ data: '⚪ Negligible', header: true },
144+
...visibleSeverities.map(s => ({ data: SEVERITY_LABELS[s], header: true })),
146145
{ data: 'Exploit', header: true },
147146
],
148147
...orderedPackagesBySeverity.map(layerPackage => {
149-
let criticalVulns = layerPackage.vulns?.filter(vuln => vuln.severity.value.toLowerCase() == 'critical').length ?? 0;
150-
let highVulns = layerPackage.vulns?.filter(vuln => vuln.severity.value.toLowerCase() == 'high').length ?? 0;
151-
let mediumVulns = layerPackage.vulns?.filter(vuln => vuln.severity.value.toLowerCase() == 'medium').length ?? 0;
152-
let lowVulns = layerPackage.vulns?.filter(vuln => vuln.severity.value.toLowerCase() == 'low').length ?? 0;
153-
let negligibleVulns = layerPackage.vulns?.filter(vuln => vuln.severity.value.toLowerCase() == 'negligible').length ?? 0;
154-
let exploits = layerPackage.vulns?.filter(vuln => vuln.exploitable).length ?? 0;
155148
return [
156149
{ data: layerPackage.name },
157150
{ data: layerPackage.type },
158151
{ data: layerPackage.version },
159152
{ data: layerPackage.suggestedFix || "" },
160-
{ data: criticalVulns.toString() },
161-
{ data: highVulns.toString() },
162-
{ data: mediumVulns.toString() },
163-
{ data: lowVulns.toString() },
164-
{ data: negligibleVulns.toString() },
165-
{ data: exploits.toString() },
166-
]
153+
...visibleSeverities.map(s =>
154+
`${
155+
layerPackage.vulns?.filter(vuln => vuln.severity.value.toLowerCase() === s).length ?? 0
156+
}`
157+
),
158+
`${layerPackage.vulns?.filter(vuln => vuln.exploitable).length ?? 0}`,
159+
];
167160
})
168161
]);
169162
});

0 commit comments

Comments
 (0)