diff --git a/Dockerfile b/Dockerfile index de2468c..43c63c5 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,8 +1,12 @@ -FROM python:latest +FROM nikolaik/python-nodejs:latest # Install dependencies. ADD requirements.txt /requirements.txt ADD main.py /main.py +ADD loc.py /loc.py +ADD make_bar_graph.py /make_bar_graph.py +ADD colors.json /colors.json RUN pip install -r requirements.txt +RUN npm install vega-lite vega-cli canvas CMD ["python", "/main.py"] \ No newline at end of file diff --git a/main.py b/main.py index 9c03a19..f8d8d39 100644 --- a/main.py +++ b/main.py @@ -23,14 +23,16 @@ listReg = f"{START_COMMENT}[\\s\\S]+{END_COMMENT}" waka_key = os.getenv('INPUT_WAKATIME_API_KEY') ghtoken = os.getenv('INPUT_GH_TOKEN') -showTimeZone = os.getenv('INPUT_SHOW_TIMEZONE') -showProjects = os.getenv('INPUT_SHOW_PROJECTS') -showEditors = os.getenv('INPUT_SHOW_EDITORS') -showOs = os.getenv('INPUT_SHOW_OS') -showCommit = os.getenv('INPUT_SHOW_COMMIT') -showLanguage = os.getenv('INPUT_SHOW_LANGUAGE') -showLanguagePerRepo=os.getenv('LANGUAGE_PER_REPO') -showLocChart=os.getenv('LOC_CHART') +showTimeZone = 'y' if (os.getenv('INPUT_SHOW_TIMEZONE') is None) else os.getenv('INPUT_SHOW_TIMEZONE') +showProjects = 'y' if (os.getenv('INPUT_SHOW_PROJECTS') is None) else os.getenv('INPUT_SHOW_PROJECTS') +showEditors = 'y' if (os.getenv('INPUT_SHOW_EDITORS') is None) else os.getenv('INPUT_SHOW_EDITORS') +showOs = 'y' if (os.getenv('INPUT_SHOW_OS') is None) else os.getenv('INPUT_SHOW_OS') +showCommit = 'y' if (os.getenv('INPUT_SHOW_COMMIT') is None) else os.getenv('INPUT_SHOW_COMMIT') +showLanguage = 'y' if (os.getenv('INPUT_SHOW_LANGUAGE') is None) else os.getenv('INPUT_SHOW_LANGUAGE') +showLanguagePerRepo='y' if (os.getenv('LANGUAGE_PER_REPO') is None) else os.getenv('LANGUAGE_PER_REPO') +showLocChart='y' if (os.getenv('LOC_CHART') is None) else os.getenv('LOC_CHART') +show_waka_stats='n' if waka_key is None else 'y' + # The GraphQL query to get commit data. userInfoQuery = """ @@ -290,12 +292,12 @@ def get_stats(): stats = stats+'**Timeline**\n\n' stats=stats+'![Chart not found](https://github.com/prabhatdev/prabhatdev/blob/master/charts/bar_graph.png) \n\n' # stats = stats + generate_language_per_repo(repositoryList) + '\n\n' - + + if show_waka_stats.lower() in ['true', '1', 't', 'y', 'yes']: + stats=stats+get_waka_time_stats() + - - stats=stats+get_waka_time_stats() - return stats @@ -313,6 +315,8 @@ def generate_new_readme(stats: str, readme: str): if __name__ == '__main__': try: + if ghtoken is None: + raise Exception('Token not available') g = Github(ghtoken) headers = {"Authorization": "Bearer " + ghtoken} user_data = run_query(userInfoQuery) # Execute the query