#!/usr/bin/env python

import argparse
import pandas as pd

from github_stats_pages import gts_run


def read_csv(csv_file: str) -> pd.DataFrame:
    return pd.read_csv(csv_file)


if __name__ == '__main__':
    parser = argparse.ArgumentParser(
        description='CLI to retrieve user or organization repositories')
    parser.add_argument('-u', '--user', required=True,
                        help='user or organization name')
    parser.add_argument('-t', '--token', required=True,
                        help='API token')
    parser.add_argument('-c', '--csv-file', required=True,
                        help='CSV filename')
    args = parser.parse_args()

    df = read_csv(args.csv_file)
    # Exclude forks
    new_df = df.loc[df['fork'] == False]

    for repo_name in new_df['name']:
        gts_run.run_each_repo(args.user, args.token, repo_name,
                              save_csv=True)
