From 7ec2201a9dba094c668cbdbff2343f6c7d4a86f1 Mon Sep 17 00:00:00 2001 From: "jiyeong.seok" Date: Fri, 21 Feb 2025 17:10:01 +0900 Subject: [PATCH] Fix feature to automatically find manifest file Signed-off-by: jiyeong.seok --- src/fosslight_dependency/run_dependency_scanner.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/fosslight_dependency/run_dependency_scanner.py b/src/fosslight_dependency/run_dependency_scanner.py index 264355a4..16039d42 100755 --- a/src/fosslight_dependency/run_dependency_scanner.py +++ b/src/fosslight_dependency/run_dependency_scanner.py @@ -61,7 +61,7 @@ def find_package_manager(input_dir, abs_path_to_exclude=[]): manifest_file_name.append(value) found_manifest_file = [] - for (parent, _, files) in os.walk(input_dir): + for parent, dirs, files in os.walk(input_dir): if len(files) < 1: continue if os.path.basename(parent) in _exclude_dir: @@ -76,6 +76,13 @@ def find_package_manager(input_dir, abs_path_to_exclude=[]): continue if file in manifest_file_name: found_manifest_file.append(file) + for dir in dirs: + for manifest_f in manifest_file_name: + manifest_l = manifest_f.split(os.path.sep) + if len(manifest_l) > 1: + if manifest_l[0] == dir: + if os.path.exists(os.path.join(parent, manifest_f)): + found_manifest_file.append(manifest_f) if len(found_manifest_file) > 0: input_dir = parent break