From 20069772e0d3c9a2101e3b0e143702d1582cdc96 Mon Sep 17 00:00:00 2001 From: Ilya Siamionau Date: Tue, 22 Oct 2024 12:10:55 +0200 Subject: [PATCH] CM-41380 - Fix SBOM report creation --- CONTRIBUTING.md | 4 +- .../files_collector/sca/sca_code_scanner.py | 43 ++++++++++--------- 2 files changed, 24 insertions(+), 23 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 56852c22..a95c8c28 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -53,7 +53,7 @@ python cycode/cli/main.py ### Code linting and formatting -We use `ruff` and `ruff format`. +We use `ruff`. It is configured well, so you don’t need to do anything. You can see all enabled rules in the `pyproject.toml` file. Both tests and the main codebase are checked. @@ -63,7 +63,7 @@ GitHub Actions will check that your code is formatted well. You can run it local ```shell # lint -poetry run ruff . +poetry run ruff check . # format poetry run ruff format . ``` diff --git a/cycode/cli/files_collector/sca/sca_code_scanner.py b/cycode/cli/files_collector/sca/sca_code_scanner.py index c785be87..1090e7bf 100644 --- a/cycode/cli/files_collector/sca/sca_code_scanner.py +++ b/cycode/cli/files_collector/sca/sca_code_scanner.py @@ -93,27 +93,28 @@ def try_restore_dependencies( restore_dependencies: 'BaseRestoreDependencies', document: Document, ) -> None: - if restore_dependencies.is_project(document): - restore_dependencies_document = restore_dependencies.restore(document) - if restore_dependencies_document is None: - logger.warning('Error occurred while trying to generate dependencies tree, %s', {'filename': document.path}) - return - - if restore_dependencies_document.content is None: - logger.warning('Error occurred while trying to generate dependencies tree, %s', {'filename': document.path}) - restore_dependencies_document.content = '' - else: - is_monitor_action = context.obj['monitor'] - - project_path = get_path_from_context(context) - - manifest_file_path = get_manifest_file_path(document, is_monitor_action, project_path) - logger.debug('Succeeded to generate dependencies tree on path: %s', manifest_file_path) - - if restore_dependencies_document.path in documents_to_add: - logger.debug('Duplicate document on restore for path: %s', restore_dependencies_document.path) - else: - documents_to_add[restore_dependencies_document.path] = restore_dependencies_document + if not restore_dependencies.is_project(document): + return + + restore_dependencies_document = restore_dependencies.restore(document) + if restore_dependencies_document is None: + logger.warning('Error occurred while trying to generate dependencies tree, %s', {'filename': document.path}) + return + + if restore_dependencies_document.content is None: + logger.warning('Error occurred while trying to generate dependencies tree, %s', {'filename': document.path}) + restore_dependencies_document.content = '' + else: + is_monitor_action = context.obj.get('monitor', False) + project_path = get_path_from_context(context) + + manifest_file_path = get_manifest_file_path(document, is_monitor_action, project_path) + logger.debug('Succeeded to generate dependencies tree on path: %s', manifest_file_path) + + if restore_dependencies_document.path in documents_to_add: + logger.debug('Duplicate document on restore for path: %s', restore_dependencies_document.path) + else: + documents_to_add[restore_dependencies_document.path] = restore_dependencies_document def add_dependencies_tree_document(