Changeset View
Changeset View
Standalone View
Standalone View
swh/scanner/scanner.py
Show First 20 Lines • Show All 173 Lines • ▼ Show 20 Lines | ) -> None: | ||||
async def _scan(root, session, api_url, source_tree, exclude_patterns): | async def _scan(root, session, api_url, source_tree, exclude_patterns): | ||||
for path, obj_swhid, known in await parse_path( | for path, obj_swhid, known in await parse_path( | ||||
root, session, api_url, exclude_patterns | root, session, api_url, exclude_patterns | ||||
): | ): | ||||
obj_type = parse_swhid(obj_swhid).object_type | obj_type = parse_swhid(obj_swhid).object_type | ||||
if obj_type == CONTENT: | if obj_type == CONTENT: | ||||
source_tree.addNode(path, obj_swhid, known) | source_tree.add_node(path, obj_swhid, known) | ||||
elif obj_type == DIRECTORY and directory_filter(path, exclude_patterns): | elif obj_type == DIRECTORY and directory_filter(path, exclude_patterns): | ||||
source_tree.addNode(path, obj_swhid, known) | source_tree.add_node(path, obj_swhid, known) | ||||
if not known: | if not known: | ||||
await _scan(path, session, api_url, source_tree, exclude_patterns) | await _scan(path, session, api_url, source_tree, exclude_patterns) | ||||
if config["web-api"]["auth-token"]: | if config["web-api"]["auth-token"]: | ||||
headers = {"Authorization": f"Bearer {config['web-api']['auth-token']}"} | headers = {"Authorization": f"Bearer {config['web-api']['auth-token']}"} | ||||
else: | else: | ||||
headers = {} | headers = {} | ||||
Show All 40 Lines | if exclude_patterns: | ||||
} | } | ||||
source_tree = Tree(Path(root_path)) | source_tree = Tree(Path(root_path)) | ||||
loop = asyncio.get_event_loop() | loop = asyncio.get_event_loop() | ||||
loop.run_until_complete(run(config, root_path, source_tree, sre_patterns)) | loop.run_until_complete(run(config, root_path, source_tree, sre_patterns)) | ||||
if interactive: | if interactive: | ||||
root = Path(root_path) | root = Path(root_path) | ||||
directories = source_tree.getDirectoriesInfo(root) | directories = source_tree.get_directories_info(root) | ||||
figure = generate_sunburst(directories, root) | figure = generate_sunburst(directories, root) | ||||
run_app(figure, source_tree) | run_app(figure, source_tree) | ||||
else: | else: | ||||
source_tree.show(out_fmt) | source_tree.show(out_fmt) |