mirror of
https://github.com/hohn/sarif-cli.git
synced 2025-12-16 17:23:03 +01:00
Add explicit column ordering to to_csv writes
in interfaces: sarif-pad-aggregates sarif-extract-scans
This commit is contained in:
@@ -16,6 +16,7 @@ import pathlib
|
||||
import sarif_cli.table_joins as tj
|
||||
import sarif_cli.table_joins_CLI as tj_CLI
|
||||
import sarif_cli.scan_tables as st
|
||||
from sarif_cli import columns
|
||||
import sys
|
||||
|
||||
#
|
||||
@@ -253,7 +254,7 @@ p.mkdir(exist_ok=True)
|
||||
|
||||
def write(path, frame):
|
||||
with p.joinpath(path + ".csv").open(mode='wb') as fh:
|
||||
frame.to_csv(fh, index=False, quoting=csv.QUOTE_NONNUMERIC)
|
||||
frame.to_csv(fh, index=False, columns=columns.columns[path] , quoting=csv.QUOTE_NONNUMERIC)
|
||||
|
||||
def _write_dataframes_of(tables_dataclass):
|
||||
for field in dc.fields(tables_dataclass):
|
||||
|
||||
@@ -11,6 +11,7 @@ import random
|
||||
|
||||
from sarif_cli import scan_tables
|
||||
from sarif_cli import table_joins
|
||||
from sarif_cli import columns
|
||||
|
||||
#
|
||||
# Handle arguments
|
||||
@@ -133,4 +134,4 @@ for file_prefix in _extract_scans_tables.keys():
|
||||
frame = (_extract_scans_tables[file_prefix][0]
|
||||
.astype(_table_output_dtypes[file_prefix]))
|
||||
with open(csv_fname, 'w') as fh:
|
||||
frame.to_csv(fh, index=False, quoting=csv.QUOTE_NONNUMERIC)
|
||||
frame.to_csv(fh, index=False, columns=columns.columns[file_prefix], quoting=csv.QUOTE_NONNUMERIC)
|
||||
|
||||
62
sarif_cli/columns.py
Normal file
62
sarif_cli/columns.py
Normal file
@@ -0,0 +1,62 @@
|
||||
columns = {
|
||||
"scans" : [
|
||||
"id",
|
||||
"commit_id",
|
||||
"project_id",
|
||||
"db_create_start",
|
||||
"db_create_stop",
|
||||
"scan_start_date",
|
||||
"scan_stop_date",
|
||||
"tool_name" ,
|
||||
"tool_version" ,
|
||||
"tool_query_commit_id",
|
||||
"sarif_file_name" ,
|
||||
"results_count" ,
|
||||
"rules_count" ,
|
||||
],
|
||||
"results" : [
|
||||
'id',
|
||||
'scan_id',
|
||||
'query_id',
|
||||
'query_kind',
|
||||
'query_precision',
|
||||
'query_severity',
|
||||
'query_tags',
|
||||
'codeFlow_id',
|
||||
'message' ,
|
||||
'message_object' ,
|
||||
'location' ,
|
||||
'source_startLine',
|
||||
'source_startCol',
|
||||
'source_endLine' ,
|
||||
'source_endCol' ,
|
||||
'sink_startLine' ,
|
||||
'sink_startCol',
|
||||
'sink_endLine' ,
|
||||
'sink_endCol' ,
|
||||
'source_object' ,
|
||||
'sink_object'
|
||||
],
|
||||
"projects" : [
|
||||
"id" ,
|
||||
"project_name" ,
|
||||
"creation_date",
|
||||
"repo_url" ,
|
||||
"primary_language" ,
|
||||
"languages_analyzed"
|
||||
],
|
||||
"codeflows" : [
|
||||
"codeflow_id",
|
||||
"codeflow_index",
|
||||
"threadflow_index",
|
||||
"location_index",
|
||||
"endColumn",
|
||||
"endLine",
|
||||
"startColumn",
|
||||
"startLine",
|
||||
"artifact_index",
|
||||
"uri",
|
||||
"uriBaseId",
|
||||
"message"
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user