Skip to content

Commit 218fd12

Browse files
nicokanttaheeraahmed
authored andcommitted
fix: make vars optional
1 parent 4382a82 commit 218fd12

1 file changed

Lines changed: 19 additions & 9 deletions

File tree

src/datasync/libs/dms.py

Lines changed: 19 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,8 @@
44
from ..settings import env
55
from ..settings import log as logger
66

7-
DMS_API_URL: str = env.str("DMS_API_URL")
8-
DMS_API_TOKEN: str = env.str("DMS_TOKEN")
9-
10-
client = httpx.Client(
11-
base_url=DMS_API_URL, headers={"Authorization": f"Token {DMS_API_TOKEN}"}
12-
)
7+
DMS_API_URL: str = env.str("DMS_API_URL", "")
8+
DMS_API_TOKEN: str = env.str("DMS_TOKEN", "")
139

1410

1511
@backoff.on_exception(
@@ -18,7 +14,7 @@
1814
max_tries=5,
1915
jitter=backoff.full_jitter,
2016
)
21-
def create_dms_element(endpoint, element_id, create_data):
17+
def create_dms_element(client, endpoint, element_id, create_data):
2218
try:
2319
logger.info(f"creating {endpoint[:-1]} {element_id} in DMS")
2420
res = client.post(f"{endpoint}/", json=create_data)
@@ -35,7 +31,14 @@ def create_dms_element(endpoint, element_id, create_data):
3531
max_tries=5,
3632
jitter=backoff.full_jitter,
3733
)
38-
def upsert_dms_element(endpoint, element_id, create_data, update_data=None):
34+
def upsert_dms_element(
35+
endpoint,
36+
element_id,
37+
create_data,
38+
update_data=None,
39+
base_url: str = DMS_API_URL,
40+
token: str = DMS_API_TOKEN,
41+
):
3942
"""
4043
Generic function to upsert (create or update) a DMS API element.
4144
@@ -48,6 +51,10 @@ def upsert_dms_element(endpoint, element_id, create_data, update_data=None):
4851
Returns:
4952
bool: True if element was created, False if updated
5053
"""
54+
client = httpx.Client(
55+
base_url=base_url, headers={"Authorization": f"Token {token}"}
56+
)
57+
5158
if update_data is None:
5259
update_data = create_data.copy()
5360

@@ -71,7 +78,10 @@ def upsert_dms_element(endpoint, element_id, create_data, update_data=None):
7178
if e.response.status_code == 404:
7279
# Element doesn't exist, create it
7380
create_dms_element(
74-
element_id=element_id, endpoint=endpoint, create_data=create_data
81+
client=client,
82+
element_id=element_id,
83+
endpoint=endpoint,
84+
create_data=create_data,
7585
)
7686
return True
7787
else:

0 commit comments

Comments
 (0)