|
@@ -1,34 +1,2 @@
|
|
|
-#!/usr/bin/env python3
|
|
|
-
|
|
|
-import json
|
|
|
-import sys
|
|
|
-
|
|
|
-# Return whether SARIF file contains error-level results
|
|
|
-def codeql_sarif_contain_error(filename):
|
|
|
- with open(filename, 'r') as f:
|
|
|
- s = json.load(f)
|
|
|
-
|
|
|
- for run in s.get('runs', []):
|
|
|
- rules_metadata = run['tool']['driver']['rules']
|
|
|
- if not rules_metadata:
|
|
|
- rules_metadata = run['tool']['extensions'][0]['rules']
|
|
|
-
|
|
|
- for res in run.get('results', []):
|
|
|
- if 'ruleIndex' in res:
|
|
|
- rule_index = res['ruleIndex']
|
|
|
- elif 'rule' in res and 'index' in res['rule']:
|
|
|
- rule_index = res['rule']['index']
|
|
|
- else:
|
|
|
- continue
|
|
|
- try:
|
|
|
- rule_level = rules_metadata[rule_index]['defaultConfiguration']['level']
|
|
|
- except IndexError as e:
|
|
|
- print(e, rule_index, len(rules_metadata))
|
|
|
- else:
|
|
|
- if rule_level == 'error':
|
|
|
- return True
|
|
|
- return False
|
|
|
-
|
|
|
-if __name__ == "__main__":
|
|
|
- if codeql_sarif_contain_error(sys.argv[1]):
|
|
|
- sys.exit(1)
|
|
|
+# content removed, because it floods my email inbox.
|
|
|
+# see https://github.com/civetweb/civetweb/issues/1231#issuecomment-1967503931
|