From 7d5d451d0c18d3bf067b44ea2db9f652f8a8687e Mon Sep 17 00:00:00 2001 From: Slawomir Koszewski Date: Sat, 8 Nov 2025 19:30:21 +0100 Subject: [PATCH] Refactor harvester to list Markdown files across all projects and repositories --- harvester.py | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/harvester.py b/harvester.py index fa4f9c0..60c7bde 100755 --- a/harvester.py +++ b/harvester.py @@ -1,11 +1,18 @@ #!/usr/bin/env python3 -from sk.devops import Organization +import requests +from sk.devops import Organization, Project, Repository, Item from sk.azure import get_token org = Organization("https://dev.azure.com/mcovsandbox", token=get_token()) -item = org["ADO Sandbox"]["ado-auth-lab"]["/"] -# Let's list all python files in this folder -for child in item.get_child_items(pattern="*.py", recurse=True): - print(f'- {child.path}') +# Find all Markdown files in all projects and repositories +for project in org.projects: + for repo in project.repositories: + try: + root_item = Item(repository=repo, path="/") + md_files = root_item.get_child_items(pattern="*.md", recurse=True) + for md_file in md_files: + print(f"Project: {project.name}, Repo: {repo.name}, File: {md_file.path}") + except requests.exceptions.HTTPError as e: + print(f"Repository {repo.name} is empty.")