@@ -58,6 +58,12 @@ def get_codeowners_file_contents(owner, repo_name):
58
58
else:
59
59
return None
60
60
61
+ def get_codeowners_open_issues(owner, repo_name):
62
+ url = f'{GITHUB_API_BASE_URL}/repos/{owner}/{repo_name}'
63
+ headers = {'Authorization': f'token {GITHUB_PAT}'}
64
+ response = requests.get(url, headers=headers)
65
+ return response.json()
66
+
61
67
def extract_usernames(codeowners_content):
62
68
pattern = r'@(\w+)'
63
69
usernames = re.findall(pattern, codeowners_content)
@@ -66,22 +72,25 @@ def extract_usernames(codeowners_content):
66
72
def main():
67
73
account = input('Enter the GitHub account username: ')
68
74
69
- print("\n| Repo | Code Owners |")
70
- print("|------|-------------|")
75
+ print("\n| Repo | Code Owners | Issues & PRs| ")
76
+ print("|------|-------------|------------| ")
71
77
72
78
for repo in get_user_repos(account):
73
79
if repo["name"] == '.github':
74
80
continue
75
81
76
82
codeowners = get_codeowners_file_contents(account, repo['name'])
83
+ issues = get_codeowners_open_issues(account, repo['name'])
77
84
78
85
if codeowners:
79
86
content = requests.get(codeowners['download_url']).text
80
87
usernames = extract_usernames(content)
81
- print(f'| {repo["name"]} | {", ".join(usernames)} |')
88
+ print(f'| {repo["name"]} | {", ".join(usernames)} | {issues["open_issues_count"]} | ')
82
89
else:
83
- print(f'| {repo["name"]} | |')
90
+ print(f'| {repo["name"]} | | {issues["open_issues_count"]} |')
91
+
84
92
85
93
if __name__ == '__main__':
86
94
main()
95
+
87
96
```
0 commit comments