Skip to content

Commit 825b5a3

Browse files
authored
CM-31407 - Add new fields to scan parameters (#198)
1 parent 19b3227 commit 825b5a3

File tree

1 file changed

+15
-8
lines changed

1 file changed

+15
-8
lines changed

cycode/cli/commands/scan/code_scanner.py

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -140,11 +140,13 @@ def _get_scan_documents_thread_func(
140140
severity_threshold = context.obj['severity_threshold']
141141
command_scan_type = context.info_name
142142

143+
scan_parameters['aggregation_id'] = str(_generate_unique_id())
144+
143145
def _scan_batch_thread_func(batch: List[Document]) -> Tuple[str, CliError, LocalScanResult]:
144146
local_scan_result = error = error_message = None
145147
detections_count = relevant_detections_count = zip_file_size = 0
146148

147-
scan_id = str(_get_scan_id())
149+
scan_id = str(_generate_unique_id())
148150
scan_completed = False
149151

150152
try:
@@ -269,6 +271,9 @@ def scan_documents(
269271
is_commit_range: bool = False,
270272
scan_parameters: Optional[dict] = None,
271273
) -> None:
274+
if not scan_parameters:
275+
scan_parameters = get_default_scan_parameters(context)
276+
272277
progress_bar = context.obj['progress_bar']
273278

274279
if not documents_to_scan:
@@ -309,7 +314,7 @@ def scan_commit_range_documents(
309314

310315
local_scan_result = error_message = None
311316
scan_completed = False
312-
scan_id = str(_get_scan_id())
317+
scan_id = str(_generate_unique_id())
313318

314319
from_commit_zipped_documents = InMemoryZip()
315320
to_commit_zipped_documents = InMemoryZip()
@@ -570,12 +575,18 @@ def get_default_scan_parameters(context: click.Context) -> dict:
570575
'report': context.obj.get('report'),
571576
'package_vulnerabilities': context.obj.get('package-vulnerabilities'),
572577
'license_compliance': context.obj.get('license-compliance'),
578+
'command_type': context.info_name,
573579
}
574580

575581

576582
def get_scan_parameters(context: click.Context, paths: Tuple[str]) -> dict:
577583
scan_parameters = get_default_scan_parameters(context)
578584

585+
if not paths:
586+
return scan_parameters
587+
588+
scan_parameters['paths'] = paths
589+
579590
if len(paths) != 1:
580591
# ignore remote url if multiple paths are provided
581592
return scan_parameters
@@ -584,11 +595,7 @@ def get_scan_parameters(context: click.Context, paths: Tuple[str]) -> dict:
584595
if remote_url:
585596
# TODO(MarshalX): remove hardcode in context
586597
context.obj['remote_url'] = remote_url
587-
scan_parameters.update(
588-
{
589-
'remote_url': remote_url,
590-
}
591-
)
598+
scan_parameters['remote_url'] = remote_url
592599

593600
return scan_parameters
594601

@@ -749,7 +756,7 @@ def _report_scan_status(
749756
logger.debug('Failed to report scan status, %s', {'exception_message': str(e)})
750757

751758

752-
def _get_scan_id() -> UUID:
759+
def _generate_unique_id() -> UUID:
753760
return uuid4()
754761

755762

0 commit comments

Comments
 (0)