@@ -39,10 +39,11 @@ def print_scan_results(
3939
4040 for local_scan_result in local_scan_results :
4141 for document_detections in local_scan_result .document_detections :
42- self ._print_document_detections (
43- document_detections , local_scan_result .scan_id , local_scan_result .report_url
44- )
42+ self ._print_document_detections (document_detections , local_scan_result .scan_id )
4543
44+ report_urls = [scan_result .report_url for scan_result in local_scan_results if scan_result .report_url ]
45+
46+ self ._print_report_urls (report_urls , self .context .obj .get ('aggregation_report_url' ))
4647 if not errors :
4748 return
4849
@@ -55,27 +56,21 @@ def print_scan_results(
5556 click .echo (f'- { scan_id } : ' , nl = False )
5657 self .print_error (error )
5758
58- def _print_document_detections (
59- self , document_detections : DocumentDetections , scan_id : str , report_url : Optional [str ]
60- ) -> None :
59+ def _print_document_detections (self , document_detections : DocumentDetections , scan_id : str ) -> None :
6160 document = document_detections .document
6261 lines_to_display = self ._get_lines_to_display_count ()
6362 for detection in document_detections .detections :
64- self ._print_detection_summary (detection , document .path , scan_id , report_url )
63+ self ._print_detection_summary (detection , document .path , scan_id )
6564 self ._print_detection_code_segment (detection , document , lines_to_display )
6665
67- def _print_detection_summary (
68- self , detection : Detection , document_path : str , scan_id : str , report_url : Optional [str ]
69- ) -> None :
66+ def _print_detection_summary (self , detection : Detection , document_path : str , scan_id : str ) -> None :
7067 detection_name = detection .type if self .scan_type == SECRET_SCAN_TYPE else detection .message
7168 detection_name_styled = click .style (detection_name , fg = 'bright_red' , bold = True )
7269
7370 detection_sha = detection .detection_details .get ('sha512' )
7471 detection_sha_message = f'\n Secret SHA: { detection_sha } ' if detection_sha else ''
7572
7673 scan_id_message = f'\n Scan ID: { scan_id } '
77- report_url_message = f'\n Report URL: { report_url } ' if report_url else ''
78-
7974 detection_commit_id = detection .detection_details .get ('commit_id' )
8075 detection_commit_id_message = f'\n Commit SHA: { detection_commit_id } ' if detection_commit_id else ''
8176
@@ -88,7 +83,6 @@ def _print_detection_summary(
8883 f'(rule ID: { detection .detection_rule_id } ) in file: { click .format_filename (document_path )} '
8984 f'{ detection_sha_message } '
9085 f'{ scan_id_message } '
91- f'{ report_url_message } '
9286 f'{ detection_commit_id_message } '
9387 f'{ company_guidelines_message } '
9488 f' ⛔'
@@ -101,6 +95,18 @@ def _print_detection_code_segment(self, detection: Detection, document: Document
10195
10296 self ._print_detection_from_file (detection , document , code_segment_size )
10397
98+ @staticmethod
99+ def _print_report_urls (report_urls : List [str ], aggregation_report_url : Optional [str ] = None ) -> None :
100+ if not report_urls and not aggregation_report_url :
101+ return
102+ if aggregation_report_url :
103+ click .echo (f'Report URL: { aggregation_report_url } ' )
104+ return
105+
106+ click .echo ('Report URLs:' )
107+ for report_url in report_urls :
108+ click .echo (f'- { report_url } ' )
109+
104110 @staticmethod
105111 def _get_code_segment_start_line (detection_line : int , code_segment_size : int ) -> int :
106112 start_line = detection_line - math .ceil (code_segment_size / 2 )
0 commit comments