Skip to content

Commit 957fc9d

Browse files
committed
ignore all output types correctly and write to a folder instead of the git root
Signed-off-by: John Seekins <[email protected]>
1 parent e151dfd commit 957fc9d

File tree

3 files changed

+16
-5
lines changed

3 files changed

+16
-5
lines changed

.gitignore

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
__pycache__/
22
*.csv
3+
**/.csv
34
*.json
5+
**/*.json
46
*.xlsx
7+
**/.xlsx
58
*.xlsx#
9+
**/.xlsx#
10+
*.parquet
11+
**/.parquet

file_utils.py

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
import copy
22
import json
3+
import os
34
from schemas import enrichment_print_schema
45
from utils import (
56
convert_to_dataframe,
67
logger,
8+
output_folder,
79
)
810
import xlsxwriter # type: ignore [import-untyped]
911

@@ -16,8 +18,9 @@ def export_to_file(
1618
if not facilities_data or not facilities_data.get("facilities", []):
1719
logger.warning("No data to export!")
1820
return ""
19-
20-
full_name = f"{filename}.{file_type}"
21+
# make sure the folder we're dropping files into exists
22+
os.makedirs(output_folder, exist_ok=True)
23+
full_name = f"{output_folder}/{filename}.{file_type}"
2124
if file_type in ["csv", "xlsx", "parquet"]:
2225
writer = convert_to_dataframe(facilities_data["facilities"])
2326
match file_type:
@@ -36,10 +39,9 @@ def export_to_file(
3639
json.dump(facilities_data, f_out, indent=2, sort_keys=True, default=str)
3740

3841
logger.info(
39-
"%s file '%s.%s' created successfully with %s facilities.",
40-
file_type,
41-
filename,
42+
"%s file '%s' created successfully with %s facilities.",
4243
file_type,
44+
full_name,
4345
len(facilities_data["facilities"]),
4446
)
4547
return filename

utils.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
# For general helpers, regexes, or shared logic (e.g. phone/address parsing functions).
22
import logging
3+
import os
34
import polars
45
import requests
56
from requests.adapters import HTTPAdapter
67
import urllib3
78

9+
SCRIPTDIR = os.path.dirname(os.path.realpath(__file__))
810
logger = logging.getLogger(__name__)
911
logger.setLevel(logging.INFO)
1012
logger.addHandler(logging.StreamHandler())
@@ -20,6 +22,7 @@
2022
session.mount("http://", _adapter)
2123
session.headers.update(default_headers)
2224

25+
output_folder = f"{SCRIPTDIR}/output/"
2326
default_timestamp = "1970-01-01T00:00:00-+0000"
2427
timestamp_format = "%Y-%m-%dT%H:%M:%S-%z"
2528

0 commit comments

Comments
 (0)