Compare commits

...

2 commits

Author SHA1 Message Date
Louis Elkner-Alfaro
246dd0b734 Update README 2024-10-24 11:53:15 -07:00
Louis Elkner-Alfaro
5027c4ce46 Take file as argument 2024-10-24 11:53:15 -07:00
2 changed files with 20 additions and 8 deletions

View file

@ -11,9 +11,16 @@ We do not yet do summing of time per issue, but could with a fair amount of work
In the meantime this can be done with a spreadsheet: In the meantime this can be done with a spreadsheet:
## Usage ## Usage
For use with Forgejo Include your API token in .env as FORGEJO_API_TOKEN={token}
- Token can be generated here if you do not have one: https://git.agaric.com/user/settings/applications
Download a spreadsheet from Harvest (or, one hopes someday, a better time tracking service). Copy the path to the downloaded CSV and paste it in at the prompt when you run: Download a spreadsheet from Harvest (or, one hopes someday, a better time tracking service).
Modify the lines starting with 'owner = ' and 'repo =' to use your target project. You may have to add your project details to the 'projects' dictionary
Run the program with:
```bash ```bash
python generate_issues.py python generate_issues.py FILE
``` ```
The program outputs to 'modified_report.csv'

View file

@ -1,8 +1,9 @@
import os
import csv import csv
import re
from dotenv import load_dotenv from dotenv import load_dotenv
import os
import re
import requests import requests
import sys
load_dotenv() load_dotenv()
FORGEJO_API_TOKEN = os.getenv("FORGEJO_API_TOKEN") FORGEJO_API_TOKEN = os.getenv("FORGEJO_API_TOKEN")
@ -70,9 +71,6 @@ def parse_notes_section(notes):
def parse_harvest_csv(file=None): def parse_harvest_csv(file=None):
global issues_and_urls global issues_and_urls
if file is None:
file = prompt_for_file(file)
print('Beginning parsing for issues') print('Beginning parsing for issues')
with open(file, 'r') as f: with open(file, 'r') as f:
@ -100,5 +98,12 @@ def parse_harvest_csv(file=None):
row_count += 1 row_count += 1
if __name__ == "__main__": if __name__ == "__main__":
parse_harvest_csv() try:
file_path = sys.argv[1]
except Exception as e:
print("No file provided, exitting")
quit()
if file_path:
check_for_file(file_path)
parse_harvest_csv(file_path)