diff options
| author | Christian Krinitsin <mail@krinitsin.com> | 2025-05-16 12:54:33 +0200 |
|---|---|---|
| committer | Christian Krinitsin <mail@krinitsin.com> | 2025-05-16 12:54:33 +0200 |
| commit | 53d4922d51b6b40ed85367ec611773abe47421e5 (patch) | |
| tree | d4ab5fa3a3ca24d3ccb33e30a92c80c463ef0378 | |
| parent | b2eaaabfd0fe50d3fab0d00d753193edc572f3c4 (diff) | |
| download | qemu-analysis-53d4922d51b6b40ed85367ec611773abe47421e5.tar.gz qemu-analysis-53d4922d51b6b40ed85367ec611773abe47421e5.zip | |
add output to files
| -rw-r--r-- | .gitignore | 1 | ||||
| -rwxr-xr-x | downloader.py | 7 | ||||
| -rwxr-xr-x | output.py | 23 |
3 files changed, 27 insertions, 4 deletions
diff --git a/.gitignore b/.gitignore index bee8a64b7..5cae28892 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ __pycache__ +issues diff --git a/downloader.py b/downloader.py index 5eec7346e..2b73f1cf5 100755 --- a/downloader.py +++ b/downloader.py @@ -1,6 +1,6 @@ from requests import get -from tomlkit import dumps from description_parser import parse_description +from output import output_issue project_id = 11167699 per_page = 100 @@ -30,10 +30,9 @@ def main(): "labels": i['labels'], "url": i['web_url'] } - issue = issue | parse_description(i['description']) - toml_string = dumps(issue) - print(toml_string) + issue = issue | parse_description(i['description']) + output_issue(issue) if __name__ == "__main__": main() diff --git a/output.py b/output.py new file mode 100755 index 000000000..745081aef --- /dev/null +++ b/output.py @@ -0,0 +1,23 @@ +from tomlkit import dumps +from os import path, makedirs + +def find_label(labels, keyword): + match = next((s for s in labels if f"{keyword}:" in s), None) + if not match: + return f"{keyword}_missing" + return match.replace(": ", "_") + +def write_file(file_path, string): + makedirs(path.dirname(file_path), exist_ok=True) + with open(file_path, "w") as file: + file.write(string) + +def output_issue(issue): + labels = issue['labels'] + issue_id = issue['id'] + toml_string = dumps(issue) + + target_label = find_label(labels, "target") + host_label = find_label(labels, "host") + accel_label = find_label(labels, "accel") + write_file(f"issues/{target_label}/{host_label}/{accel_label}/{issue_id}.toml", toml_string) |