Skip to content

Commit 1fb02f4

Browse files
authored
Merge pull request #134 from okxapi/dev/config_update
config update
2 parents a2b7fb0 + 2dfafef commit 1fb02f4

File tree

1 file changed

+30
-6
lines changed

1 file changed

+30
-6
lines changed

test/config.py

Lines changed: 30 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,39 @@
77
api_key, api_secret, passphrase, flag = get_api_credentials()
88
"""
99
import os
10+
import logging
1011
from pathlib import Path
1112

12-
# Try to load from .env file if python-dotenv is available
13-
try:
14-
from dotenv import load_dotenv
13+
logger = logging.getLogger(__name__)
14+
15+
# Flag to ensure .env is loaded only once
16+
_env_loaded = False
17+
18+
19+
def _load_env_once():
20+
"""Load .env file only once, log any exceptions."""
21+
global _env_loaded
22+
if _env_loaded:
23+
return
24+
25+
_env_loaded = True
1526
env_path = Path(__file__).parent.parent / '.env'
16-
load_dotenv(env_path)
17-
except ImportError:
18-
pass # python-dotenv not installed, rely on system environment variables
27+
28+
try:
29+
from dotenv import load_dotenv
30+
if env_path.exists():
31+
load_dotenv(env_path)
32+
logger.debug(f"Loaded .env file from: {env_path}")
33+
else:
34+
logger.warning(f".env file not found at: {env_path}")
35+
except ImportError:
36+
logger.warning("python-dotenv not installed, relying on system environment variables")
37+
except Exception as e:
38+
logger.error(f"Failed to load .env file: {e}")
39+
40+
41+
# Load .env when module is imported
42+
_load_env_once()
1943

2044

2145
def get_api_credentials():

0 commit comments

Comments
 (0)