Compare commits
2 commits
466585fe88
...
246dd0b734
Author | SHA1 | Date | |
---|---|---|---|
|
246dd0b734 | ||
|
5027c4ce46 |
2 changed files with 20 additions and 8 deletions
11
README.md
11
README.md
|
@ -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'
|
||||||
|
|
|
@ -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)
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue