Skip to content

Commit cb1df5b

Browse files
committed
adds severity mapping
1 parent 5727097 commit cb1df5b

1 file changed

Lines changed: 37 additions & 0 deletions

File tree

.github/workflows/opengrep.yaml

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,44 @@ jobs:
2727
run: |
2828
/home/runner/.opengrep/cli/latest/opengrep --config=r/all --sarif-output=opengrep-results.sarif --verbose .
2929
30+
- name: Fix SARIF severity values
31+
run: |
32+
python3 << 'EOF'
33+
import json
34+
35+
# Load SARIF file
36+
with open('opengrep-results.sarif', 'r') as f:
37+
sarif = json.load(f)
38+
39+
# Map text severity to numeric values
40+
severity_map = {
41+
'CRITICAL': '9.0',
42+
'HIGH': '7.0',
43+
'MEDIUM': '5.0',
44+
'LOW': '3.0',
45+
'WARNING': '5.0',
46+
'ERROR': '7.0',
47+
'INFO': '1.0',
48+
'NOTE': '1.0'
49+
}
50+
51+
# Fix security-severity values
52+
for run in sarif.get('runs', []):
53+
for rule in run.get('tool', {}).get('driver', {}).get('rules', []):
54+
if 'properties' in rule and 'security-severity' in rule['properties']:
55+
severity = rule['properties']['security-severity']
56+
if isinstance(severity, str) and severity.upper() in severity_map:
57+
rule['properties']['security-severity'] = severity_map[severity.upper()]
58+
59+
# Save fixed SARIF
60+
with open('opengrep-results.sarif', 'w') as f:
61+
json.dump(sarif, f, indent=2)
62+
63+
print("✓ Fixed SARIF severity values")
64+
EOF
65+
3066
- name: Upload OpenGrep scan results to GitHub Security tab
3167
uses: github/codeql-action/upload-sarif@v3
68+
if: always()
3269
with:
3370
sarif_file: "opengrep-results.sarif"

0 commit comments

Comments
 (0)