chore: Support config schema extract without installation

This commit is contained in:
Matthias
2025-04-04 07:19:47 +02:00
parent 91df1257e7
commit b839e159a8

View File

@@ -1,13 +1,25 @@
"""Script to extract the configuration json schema from config_schema.py file."""
import sys
from pathlib import Path
import rapidjson
from freqtrade.configuration.config_schema import CONF_SCHEMA
def extract_config_json_schema():
try:
# Try to import from the installed package
from freqtrade.configuration.config_schema import CONF_SCHEMA
except ImportError:
# If freqtrade is not installed, add the parent directory to sys.path
# to import directly from the source
script_dir = Path(__file__).parent
freqtrade_dir = script_dir.parent
sys.path.insert(0, str(freqtrade_dir))
# Now try to import from the source
from freqtrade.configuration.config_schema import CONF_SCHEMA
schema_filename = Path(__file__).parent / "schema.json"
with schema_filename.open("w") as f:
rapidjson.dump(CONF_SCHEMA, f, indent=2)