40 lines
1.1 KiB
Python
40 lines
1.1 KiB
Python
import os
|
|
import configparser
|
|
|
|
CONFIG_FILE = "config.ini"
|
|
|
|
DEFAULT_CONFIG = {
|
|
"server": {
|
|
"port": "6942",
|
|
"password": "debug",
|
|
"cache_dir": "cache",
|
|
"base_api": "https://ws1.smn.gob.ar",
|
|
"log_file": ""
|
|
}
|
|
}
|
|
|
|
def ensure_config_exists():
|
|
config = configparser.ConfigParser()
|
|
if not os.path.exists(CONFIG_FILE):
|
|
print("[CONFIG] config.ini not found - creating with default values")
|
|
config.read_dict(DEFAULT_CONFIG)
|
|
with open(CONFIG_FILE, "w") as f:
|
|
config.write(f)
|
|
else:
|
|
config.read(CONFIG_FILE)
|
|
changed = False
|
|
for section, values in DEFAULT_CONFIG.items():
|
|
if section not in config:
|
|
config[section] = values
|
|
changed = True
|
|
else:
|
|
for key, val in values.items():
|
|
if key not in config[section]:
|
|
config[section][key] = val
|
|
changed = True
|
|
if changed:
|
|
with open(CONFIG_FILE, "w") as f:
|
|
config.write(f)
|
|
print("[CONFIG] Missing keys added to config.ini")
|
|
return config
|