diff --git a/oss_stats/error.py b/oss_stats/error.py new file mode 100644 index 0000000..2b2f3a4 --- /dev/null +++ b/oss_stats/error.py @@ -0,0 +1,7 @@ +from rich.console import Console + +err_console = Console(stderr=True) + + +def error(msg) -> None: + err_console.print(f"[bold white on red]\n ERROR [/]\n\n{msg}") diff --git a/oss_stats/stats.py b/oss_stats/stats.py index 780b95c..109053f 100644 --- a/oss_stats/stats.py +++ b/oss_stats/stats.py @@ -5,6 +5,7 @@ from dotenv import load_dotenv from datetime import datetime, timedelta, timezone from alive_progress import alive_bar +from .error import error from github.Repository import Repository @@ -22,7 +23,7 @@ token = os.getenv("GITHUB_TOKEN") if not token: - print("Please set your github token!") + error("The [code] GITHUB_TOKEN [/] environment variable is unset!") sys.exit(1) gh = Github(token) @@ -31,7 +32,7 @@ try: repos = gh.get_organization(org).get_repos(sort="updated") except GithubException as e: - print(f"GitHub API Error: {e.data.get('message', str(e))}") + error(f"GitHub API: {e.data.get('message', str(e))}") sys.exit(1) six_months_ago = datetime.now(timezone.utc) - timedelta(days=182)