From a800dc3dc4bd1b229c9f1a68eef8109c8aac4438 Mon Sep 17 00:00:00 2001 From: "martynas.karobcikas" Date: Wed, 10 Dec 2025 15:21:38 +0200 Subject: [PATCH 1/7] bugfix: model retriever wrong syntax to properties objects --- emf/model_retriever/model_retriever.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/emf/model_retriever/model_retriever.py b/emf/model_retriever/model_retriever.py index 2f20912..9b1157c 100644 --- a/emf/model_retriever/model_retriever.py +++ b/emf/model_retriever/model_retriever.py @@ -26,7 +26,7 @@ def __init__(self): logger.error(f"Failed to connect to OPDM: {e}") time.sleep(60) # wait 60 seconds before retry - def handle(self, message: bytes, properties: dict, **kwargs): + def handle(self, message: bytes, properties: object, **kwargs): # Load from binary to json opdm_objects = json.loads(message) @@ -41,8 +41,8 @@ def handle(self, message: bytes, properties: dict, **kwargs): opdm_object["data-source"] = "OPDM" else: logger.warning(f"{party} and {time_horizon} message not processed due to configured filtering") # if out of filter raise exception and move on - properties.header['success'] = False - return opdm_objects, properties + properties.headers['success'] = False + return opdm_objects, properties return opdm_objects, properties @@ -52,7 +52,7 @@ class HandlerModelsFromBytesIO: def __init__(self): pass - def handle(self, message: bytes, properties: dict, **kwargs): + def handle(self, message: bytes, properties: object, **kwargs): message_content = BytesIO(message) message_content.name = 'unknown.zip' @@ -74,7 +74,7 @@ class HandlerModelsToMinio: def __init__(self): self.minio_service = minio_api.ObjectStorage() - def handle(self, message: bytes, properties: dict, **kwargs): + def handle(self, message: bytes, properties: object, **kwargs): opdm_objects = message @@ -121,7 +121,7 @@ class HandlerModelsToValidator: def __init__(self): pass - def handle(self, message: bytes, properties: dict, **kwargs): + def handle(self, message: bytes, properties: object, **kwargs): # Load from binary to json opdm_objects = json.loads(message) From a1097e2aa2854dac9da0e915959c4c5a85ee9403 Mon Sep 17 00:00:00 2001 From: "martynas.karobcikas" Date: Thu, 11 Dec 2025 15:35:21 +0200 Subject: [PATCH 2/7] feature #416: LF settings manager to query settings from Elastic --- emf/common/loadflow_tool/settings_manager.py | 46 +++++++++++++++----- 1 file changed, 36 insertions(+), 10 deletions(-) diff --git a/emf/common/loadflow_tool/settings_manager.py b/emf/common/loadflow_tool/settings_manager.py index c697456..7a18ef6 100644 --- a/emf/common/loadflow_tool/settings_manager.py +++ b/emf/common/loadflow_tool/settings_manager.py @@ -5,7 +5,10 @@ from copy import deepcopy import pypowsybl import logging +import config +from emf.common.config_parser import parse_app_properties from enum import Enum as _PyEnum +from elasticsearch import Elasticsearch from emf.common.loadflow_tool import loadflow_settings try: @@ -15,6 +18,8 @@ logger = logging.getLogger(__name__) +parse_app_properties(globals(), config.paths.integrations.elastic) + class LoadflowSettingsManager: """Class-based settings manager for pypowsybl load flow parameters. @@ -39,10 +44,18 @@ class LoadflowSettingsManager: _KNOWN_PARAM_FIELDS = [f for f in _KNOWN_PARAM_FIELDS if f != "provider_parameters"] def __init__(self, + elastic_server: str = ELK_SERVER, + elastic_username: str | None = None, + elastic_password: str | None = None, + elastic_index: str = 'config-lf-parameters', settings_keyword: str = 'EU_DEFAULT', override_path: str | None = None, ): + self.elastic_server = elastic_server + self.elastic_username = elastic_username + self.elastic_password = elastic_password + self.elastic_index = elastic_index self.settings_keyword = settings_keyword # Decide override path from arg or env @@ -50,20 +63,33 @@ def __init__(self, self.override_path = Path(override_path or env_path) if (override_path or env_path) else None if self.override_path: logger.info(f"Loadflow settings override path: {self.override_path}") - else: - logger.info(f"Using settings from default definitions: {self.settings_keyword}") - # Build defaults snapshot (dict-based), then merge overrides if any - _default_settings = getattr(loadflow_settings, self.settings_keyword) - base = { - 'LF_PROVIDER': deepcopy(_default_settings.provider_parameters), - 'LF_PARAMETERS': self._extract_params_dict(_default_settings), - } + # Firstly try to get loadflow parameters from Elastic as primary source, otherwise - fallback to repository + try: + base = self._get_defaults_from_elastic() + except Exception as err: + logger.warning(f"Loadflow settings retrieving failed from Elastic: {err}") + logger.warning(f"Using default settings from repository with key: {self.settings_keyword}") + _default_settings = getattr(loadflow_settings, self.settings_keyword) + base = { + 'LF_PROVIDER': deepcopy(_default_settings.provider_parameters), + 'LF_PARAMETERS': self._extract_params_dict(_default_settings), + } + + # Handle overrides if defined overrides = self._load_override_file(self.override_path) if self.override_path else {} self.config = self._deep_merge(base, overrides) # ----------------- I/O ----------------- - def _load_override_file(self, path: Path | None) -> dict: + def _get_defaults_from_elastic(self) -> dict: + client = Elasticsearch(self.elastic_server) + logger.info(f"Retrieving base loadflow settings fromm Elasticsearch with key: {self.settings_keyword}") + response = client.get(index=self.elastic_index, id=self.settings_keyword) + + return response.raw["_source"] + + @staticmethod + def _load_override_file(path: Path | None) -> dict: if not path: return {} if not path.exists(): @@ -262,7 +288,7 @@ def export_config(self, plain: bool = True, enum_repr: str = 'name') -> dict: print(mgr.config) pp_mgr = mgr.build_pypowsybl_parameters() # Test accessors - print('Sample read:', mgr.get('LF_PARAMETERS.write_slack_bus', None)) + print('Sample read:', mgr.get('LF_PARAMETERS.connected_component_mode', None)) # mgr.set('LF_PROVIDER.maxNewtonRaphsonIterations', '25') # print('After set:', mgr.get('LF_PROVIDER.maxNewtonRaphsonIterations')) From 0a64b4cee1c7fca48ea91e40a5b43fab05ad5dab Mon Sep 17 00:00:00 2001 From: "martynas.karobcikas" Date: Fri, 12 Dec 2025 11:42:26 +0200 Subject: [PATCH 3/7] refactor #374: executed pipenv-uv-migrate for initial setup --- pyproject.toml | 40 +++++++--------- uv.lock | 124 +++++++++++++++++++++---------------------------- 2 files changed, 70 insertions(+), 94 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 98da0e9..d33c605 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -5,30 +5,24 @@ description = "Add your description here" readme = "README.md" requires-python = ">=3.11" dependencies = [ - "aniso8601>=10.0.1", - "croniter>=6.0.0", - "edx>=0.0.16", - "elasticsearch>=9.0.1", - "lxml>=5.4.0", - "minio>=7.2.15", - "ndjson>=0.3.1", - "opdm-api>=0.1.3", - "pandas==2.2.2", - "pika>=1.3.2", - "pypowsybl==1.9.0", - "pytz>=2025.2", - "requests>=2.32.3", - "saxonche>=12.7.0", - "triplets>=0.0.10", + "pandas", + "numpy", + "pypowsybl", + "aniso8601", + "lxml", + "edx", + "opdm-api", + "triplets", + "ndjson", + "elasticsearch", + "minio", + "pytz", + "requests", + "pika", + "saxonche", + "croniter", ] [[tool.uv.index]] name = "pypi" -url = "https://pypi.org/simple" - -[[tool.uv.index]] -name = "rcc-pypi" -url = "https://artifactory.elering.sise/artifactory/api/pypi/rcc-pypi/simple" - -[tool.uv] -allow-insecure-host = ["artifactory.elering.sise"] +url = "https://pypi.org/simple" \ No newline at end of file diff --git a/uv.lock b/uv.lock index 0250624..bbdbcc7 100644 --- a/uv.lock +++ b/uv.lock @@ -226,6 +226,7 @@ dependencies = [ { name = "lxml" }, { name = "minio" }, { name = "ndjson" }, + { name = "numpy" }, { name = "opdm-api" }, { name = "pandas" }, { name = "pika" }, @@ -238,21 +239,22 @@ dependencies = [ [package.metadata] requires-dist = [ - { name = "aniso8601", specifier = ">=10.0.1" }, - { name = "croniter", specifier = ">=6.0.0" }, - { name = "edx", specifier = ">=0.0.16" }, - { name = "elasticsearch", specifier = ">=9.0.1" }, - { name = "lxml", specifier = ">=5.4.0" }, - { name = "minio", specifier = ">=7.2.15" }, - { name = "ndjson", specifier = ">=0.3.1" }, - { name = "opdm-api", specifier = ">=0.1.3" }, - { name = "pandas", specifier = "==2.2.2" }, - { name = "pika", specifier = ">=1.3.2" }, - { name = "pypowsybl", specifier = "==1.9.0" }, - { name = "pytz", specifier = ">=2025.2" }, - { name = "requests", specifier = ">=2.32.3" }, - { name = "saxonche", specifier = ">=12.7.0" }, - { name = "triplets", specifier = ">=0.0.10" }, + { name = "aniso8601" }, + { name = "croniter" }, + { name = "edx" }, + { name = "elasticsearch" }, + { name = "lxml" }, + { name = "minio" }, + { name = "ndjson" }, + { name = "numpy" }, + { name = "opdm-api" }, + { name = "pandas" }, + { name = "pika" }, + { name = "pypowsybl" }, + { name = "pytz" }, + { name = "requests" }, + { name = "saxonche" }, + { name = "triplets" }, ] [[package]] @@ -368,55 +370,35 @@ wheels = [ [[package]] name = "numpy" -version = "2.2.6" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/76/21/7d2a95e4bba9dc13d043ee156a356c0a8f0c6309dff6b21b4d71a073b8a8/numpy-2.2.6.tar.gz", hash = "sha256:e29554e2bef54a90aa5cc07da6ce955accb83f21ab5de01a62c8478897b264fd", size = 20276440, upload-time = "2025-05-17T22:38:04.611Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/da/a8/4f83e2aa666a9fbf56d6118faaaf5f1974d456b1823fda0a176eff722839/numpy-2.2.6-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:f9f1adb22318e121c5c69a09142811a201ef17ab257a1e66ca3025065b7f53ae", size = 21176963, upload-time = "2025-05-17T21:31:19.36Z" }, - { url = "https://files.pythonhosted.org/packages/b3/2b/64e1affc7972decb74c9e29e5649fac940514910960ba25cd9af4488b66c/numpy-2.2.6-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:c820a93b0255bc360f53eca31a0e676fd1101f673dda8da93454a12e23fc5f7a", size = 14406743, upload-time = "2025-05-17T21:31:41.087Z" }, - { url = "https://files.pythonhosted.org/packages/4a/9f/0121e375000b5e50ffdd8b25bf78d8e1a5aa4cca3f185d41265198c7b834/numpy-2.2.6-cp311-cp311-macosx_14_0_arm64.whl", hash = "sha256:3d70692235e759f260c3d837193090014aebdf026dfd167834bcba43e30c2a42", size = 5352616, upload-time = "2025-05-17T21:31:50.072Z" }, - { url = "https://files.pythonhosted.org/packages/31/0d/b48c405c91693635fbe2dcd7bc84a33a602add5f63286e024d3b6741411c/numpy-2.2.6-cp311-cp311-macosx_14_0_x86_64.whl", hash = "sha256:481b49095335f8eed42e39e8041327c05b0f6f4780488f61286ed3c01368d491", size = 6889579, upload-time = "2025-05-17T21:32:01.712Z" }, - { url = "https://files.pythonhosted.org/packages/52/b8/7f0554d49b565d0171eab6e99001846882000883998e7b7d9f0d98b1f934/numpy-2.2.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b64d8d4d17135e00c8e346e0a738deb17e754230d7e0810ac5012750bbd85a5a", size = 14312005, upload-time = "2025-05-17T21:32:23.332Z" }, - { url = "https://files.pythonhosted.org/packages/b3/dd/2238b898e51bd6d389b7389ffb20d7f4c10066d80351187ec8e303a5a475/numpy-2.2.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba10f8411898fc418a521833e014a77d3ca01c15b0c6cdcce6a0d2897e6dbbdf", size = 16821570, upload-time = "2025-05-17T21:32:47.991Z" }, - { url = "https://files.pythonhosted.org/packages/83/6c/44d0325722cf644f191042bf47eedad61c1e6df2432ed65cbe28509d404e/numpy-2.2.6-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:bd48227a919f1bafbdda0583705e547892342c26fb127219d60a5c36882609d1", size = 15818548, upload-time = "2025-05-17T21:33:11.728Z" }, - { url = "https://files.pythonhosted.org/packages/ae/9d/81e8216030ce66be25279098789b665d49ff19eef08bfa8cb96d4957f422/numpy-2.2.6-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:9551a499bf125c1d4f9e250377c1ee2eddd02e01eac6644c080162c0c51778ab", size = 18620521, upload-time = "2025-05-17T21:33:39.139Z" }, - { url = "https://files.pythonhosted.org/packages/6a/fd/e19617b9530b031db51b0926eed5345ce8ddc669bb3bc0044b23e275ebe8/numpy-2.2.6-cp311-cp311-win32.whl", hash = "sha256:0678000bb9ac1475cd454c6b8c799206af8107e310843532b04d49649c717a47", size = 6525866, upload-time = "2025-05-17T21:33:50.273Z" }, - { url = "https://files.pythonhosted.org/packages/31/0a/f354fb7176b81747d870f7991dc763e157a934c717b67b58456bc63da3df/numpy-2.2.6-cp311-cp311-win_amd64.whl", hash = "sha256:e8213002e427c69c45a52bbd94163084025f533a55a59d6f9c5b820774ef3303", size = 12907455, upload-time = "2025-05-17T21:34:09.135Z" }, - { url = "https://files.pythonhosted.org/packages/82/5d/c00588b6cf18e1da539b45d3598d3557084990dcc4331960c15ee776ee41/numpy-2.2.6-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:41c5a21f4a04fa86436124d388f6ed60a9343a6f767fced1a8a71c3fbca038ff", size = 20875348, upload-time = "2025-05-17T21:34:39.648Z" }, - { url = "https://files.pythonhosted.org/packages/66/ee/560deadcdde6c2f90200450d5938f63a34b37e27ebff162810f716f6a230/numpy-2.2.6-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:de749064336d37e340f640b05f24e9e3dd678c57318c7289d222a8a2f543e90c", size = 14119362, upload-time = "2025-05-17T21:35:01.241Z" }, - { url = "https://files.pythonhosted.org/packages/3c/65/4baa99f1c53b30adf0acd9a5519078871ddde8d2339dc5a7fde80d9d87da/numpy-2.2.6-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:894b3a42502226a1cac872f840030665f33326fc3dac8e57c607905773cdcde3", size = 5084103, upload-time = "2025-05-17T21:35:10.622Z" }, - { url = "https://files.pythonhosted.org/packages/cc/89/e5a34c071a0570cc40c9a54eb472d113eea6d002e9ae12bb3a8407fb912e/numpy-2.2.6-cp312-cp312-macosx_14_0_x86_64.whl", hash = "sha256:71594f7c51a18e728451bb50cc60a3ce4e6538822731b2933209a1f3614e9282", size = 6625382, upload-time = "2025-05-17T21:35:21.414Z" }, - { url = "https://files.pythonhosted.org/packages/f8/35/8c80729f1ff76b3921d5c9487c7ac3de9b2a103b1cd05e905b3090513510/numpy-2.2.6-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f2618db89be1b4e05f7a1a847a9c1c0abd63e63a1607d892dd54668dd92faf87", size = 14018462, upload-time = "2025-05-17T21:35:42.174Z" }, - { url = "https://files.pythonhosted.org/packages/8c/3d/1e1db36cfd41f895d266b103df00ca5b3cbe965184df824dec5c08c6b803/numpy-2.2.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fd83c01228a688733f1ded5201c678f0c53ecc1006ffbc404db9f7a899ac6249", size = 16527618, upload-time = "2025-05-17T21:36:06.711Z" }, - { url = "https://files.pythonhosted.org/packages/61/c6/03ed30992602c85aa3cd95b9070a514f8b3c33e31124694438d88809ae36/numpy-2.2.6-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:37c0ca431f82cd5fa716eca9506aefcabc247fb27ba69c5062a6d3ade8cf8f49", size = 15505511, upload-time = "2025-05-17T21:36:29.965Z" }, - { url = "https://files.pythonhosted.org/packages/b7/25/5761d832a81df431e260719ec45de696414266613c9ee268394dd5ad8236/numpy-2.2.6-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:fe27749d33bb772c80dcd84ae7e8df2adc920ae8297400dabec45f0dedb3f6de", size = 18313783, upload-time = "2025-05-17T21:36:56.883Z" }, - { url = "https://files.pythonhosted.org/packages/57/0a/72d5a3527c5ebffcd47bde9162c39fae1f90138c961e5296491ce778e682/numpy-2.2.6-cp312-cp312-win32.whl", hash = "sha256:4eeaae00d789f66c7a25ac5f34b71a7035bb474e679f410e5e1a94deb24cf2d4", size = 6246506, upload-time = "2025-05-17T21:37:07.368Z" }, - { url = "https://files.pythonhosted.org/packages/36/fa/8c9210162ca1b88529ab76b41ba02d433fd54fecaf6feb70ef9f124683f1/numpy-2.2.6-cp312-cp312-win_amd64.whl", hash = "sha256:c1f9540be57940698ed329904db803cf7a402f3fc200bfe599334c9bd84a40b2", size = 12614190, upload-time = "2025-05-17T21:37:26.213Z" }, - { url = "https://files.pythonhosted.org/packages/f9/5c/6657823f4f594f72b5471f1db1ab12e26e890bb2e41897522d134d2a3e81/numpy-2.2.6-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:0811bb762109d9708cca4d0b13c4f67146e3c3b7cf8d34018c722adb2d957c84", size = 20867828, upload-time = "2025-05-17T21:37:56.699Z" }, - { url = "https://files.pythonhosted.org/packages/dc/9e/14520dc3dadf3c803473bd07e9b2bd1b69bc583cb2497b47000fed2fa92f/numpy-2.2.6-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:287cc3162b6f01463ccd86be154f284d0893d2b3ed7292439ea97eafa8170e0b", size = 14143006, upload-time = "2025-05-17T21:38:18.291Z" }, - { url = "https://files.pythonhosted.org/packages/4f/06/7e96c57d90bebdce9918412087fc22ca9851cceaf5567a45c1f404480e9e/numpy-2.2.6-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:f1372f041402e37e5e633e586f62aa53de2eac8d98cbfb822806ce4bbefcb74d", size = 5076765, upload-time = "2025-05-17T21:38:27.319Z" }, - { url = "https://files.pythonhosted.org/packages/73/ed/63d920c23b4289fdac96ddbdd6132e9427790977d5457cd132f18e76eae0/numpy-2.2.6-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:55a4d33fa519660d69614a9fad433be87e5252f4b03850642f88993f7b2ca566", size = 6617736, upload-time = "2025-05-17T21:38:38.141Z" }, - { url = "https://files.pythonhosted.org/packages/85/c5/e19c8f99d83fd377ec8c7e0cf627a8049746da54afc24ef0a0cb73d5dfb5/numpy-2.2.6-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f92729c95468a2f4f15e9bb94c432a9229d0d50de67304399627a943201baa2f", size = 14010719, upload-time = "2025-05-17T21:38:58.433Z" }, - { url = "https://files.pythonhosted.org/packages/19/49/4df9123aafa7b539317bf6d342cb6d227e49f7a35b99c287a6109b13dd93/numpy-2.2.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1bc23a79bfabc5d056d106f9befb8d50c31ced2fbc70eedb8155aec74a45798f", size = 16526072, upload-time = "2025-05-17T21:39:22.638Z" }, - { url = "https://files.pythonhosted.org/packages/b2/6c/04b5f47f4f32f7c2b0e7260442a8cbcf8168b0e1a41ff1495da42f42a14f/numpy-2.2.6-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:e3143e4451880bed956e706a3220b4e5cf6172ef05fcc397f6f36a550b1dd868", size = 15503213, upload-time = "2025-05-17T21:39:45.865Z" }, - { url = "https://files.pythonhosted.org/packages/17/0a/5cd92e352c1307640d5b6fec1b2ffb06cd0dabe7d7b8227f97933d378422/numpy-2.2.6-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:b4f13750ce79751586ae2eb824ba7e1e8dba64784086c98cdbbcc6a42112ce0d", size = 18316632, upload-time = "2025-05-17T21:40:13.331Z" }, - { url = "https://files.pythonhosted.org/packages/f0/3b/5cba2b1d88760ef86596ad0f3d484b1cbff7c115ae2429678465057c5155/numpy-2.2.6-cp313-cp313-win32.whl", hash = "sha256:5beb72339d9d4fa36522fc63802f469b13cdbe4fdab4a288f0c441b74272ebfd", size = 6244532, upload-time = "2025-05-17T21:43:46.099Z" }, - { url = "https://files.pythonhosted.org/packages/cb/3b/d58c12eafcb298d4e6d0d40216866ab15f59e55d148a5658bb3132311fcf/numpy-2.2.6-cp313-cp313-win_amd64.whl", hash = "sha256:b0544343a702fa80c95ad5d3d608ea3599dd54d4632df855e4c8d24eb6ecfa1c", size = 12610885, upload-time = "2025-05-17T21:44:05.145Z" }, - { url = "https://files.pythonhosted.org/packages/6b/9e/4bf918b818e516322db999ac25d00c75788ddfd2d2ade4fa66f1f38097e1/numpy-2.2.6-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:0bca768cd85ae743b2affdc762d617eddf3bcf8724435498a1e80132d04879e6", size = 20963467, upload-time = "2025-05-17T21:40:44Z" }, - { url = "https://files.pythonhosted.org/packages/61/66/d2de6b291507517ff2e438e13ff7b1e2cdbdb7cb40b3ed475377aece69f9/numpy-2.2.6-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:fc0c5673685c508a142ca65209b4e79ed6740a4ed6b2267dbba90f34b0b3cfda", size = 14225144, upload-time = "2025-05-17T21:41:05.695Z" }, - { url = "https://files.pythonhosted.org/packages/e4/25/480387655407ead912e28ba3a820bc69af9adf13bcbe40b299d454ec011f/numpy-2.2.6-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:5bd4fc3ac8926b3819797a7c0e2631eb889b4118a9898c84f585a54d475b7e40", size = 5200217, upload-time = "2025-05-17T21:41:15.903Z" }, - { url = "https://files.pythonhosted.org/packages/aa/4a/6e313b5108f53dcbf3aca0c0f3e9c92f4c10ce57a0a721851f9785872895/numpy-2.2.6-cp313-cp313t-macosx_14_0_x86_64.whl", hash = "sha256:fee4236c876c4e8369388054d02d0e9bb84821feb1a64dd59e137e6511a551f8", size = 6712014, upload-time = "2025-05-17T21:41:27.321Z" }, - { url = "https://files.pythonhosted.org/packages/b7/30/172c2d5c4be71fdf476e9de553443cf8e25feddbe185e0bd88b096915bcc/numpy-2.2.6-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e1dda9c7e08dc141e0247a5b8f49cf05984955246a327d4c48bda16821947b2f", size = 14077935, upload-time = "2025-05-17T21:41:49.738Z" }, - { url = "https://files.pythonhosted.org/packages/12/fb/9e743f8d4e4d3c710902cf87af3512082ae3d43b945d5d16563f26ec251d/numpy-2.2.6-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f447e6acb680fd307f40d3da4852208af94afdfab89cf850986c3ca00562f4fa", size = 16600122, upload-time = "2025-05-17T21:42:14.046Z" }, - { url = "https://files.pythonhosted.org/packages/12/75/ee20da0e58d3a66f204f38916757e01e33a9737d0b22373b3eb5a27358f9/numpy-2.2.6-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:389d771b1623ec92636b0786bc4ae56abafad4a4c513d36a55dce14bd9ce8571", size = 15586143, upload-time = "2025-05-17T21:42:37.464Z" }, - { url = "https://files.pythonhosted.org/packages/76/95/bef5b37f29fc5e739947e9ce5179ad402875633308504a52d188302319c8/numpy-2.2.6-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:8e9ace4a37db23421249ed236fdcdd457d671e25146786dfc96835cd951aa7c1", size = 18385260, upload-time = "2025-05-17T21:43:05.189Z" }, - { url = "https://files.pythonhosted.org/packages/09/04/f2f83279d287407cf36a7a8053a5abe7be3622a4363337338f2585e4afda/numpy-2.2.6-cp313-cp313t-win32.whl", hash = "sha256:038613e9fb8c72b0a41f025a7e4c3f0b7a1b5d768ece4796b674c8f3fe13efff", size = 6377225, upload-time = "2025-05-17T21:43:16.254Z" }, - { url = "https://files.pythonhosted.org/packages/67/0e/35082d13c09c02c011cf21570543d202ad929d961c02a147493cb0c2bdf5/numpy-2.2.6-cp313-cp313t-win_amd64.whl", hash = "sha256:6031dd6dfecc0cf9f668681a37648373bddd6421fff6c66ec1624eed0180ee06", size = 12771374, upload-time = "2025-05-17T21:43:35.479Z" }, +version = "2.0.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/05/35/fb1ada118002df3fe91b5c3b28bc0d90f879b881a5d8f68b1f9b79c44bfe/numpy-2.0.0.tar.gz", hash = "sha256:cf5d1c9e6837f8af9f92b6bd3e86d513cdc11f60fd62185cc49ec7d1aba34864", size = 18326228, upload-time = "2024-06-16T13:24:44.066Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/58/52/a1aea658c7134ea0977542fc4d1aa6f1f9876c6a14ffeecd9394d839bc16/numpy-2.0.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ad0c86f3455fbd0de6c31a3056eb822fc939f81b1618f10ff3406971893b62a5", size = 21218342, upload-time = "2024-06-16T13:10:21.975Z" }, + { url = "https://files.pythonhosted.org/packages/77/4d/ba4a60298c55478b34f13c97a0ac2cf8d225320322976252a250ed04040a/numpy-2.0.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:e7f387600d424f91576af20518334df3d97bc76a300a755f9a8d6e4f5cadd289", size = 13272871, upload-time = "2024-06-16T13:10:42.58Z" }, + { url = "https://files.pythonhosted.org/packages/01/4a/611a907421d8098d5edc8c2b10c3583796ee8da4156f8f7de52c2f4c9d90/numpy-2.0.0-cp311-cp311-macosx_14_0_arm64.whl", hash = "sha256:34f003cb88b1ba38cb9a9a4a3161c1604973d7f9d5552c38bc2f04f829536609", size = 5237037, upload-time = "2024-06-16T13:10:52.937Z" }, + { url = "https://files.pythonhosted.org/packages/4f/c1/42d1789f1dff7b65f2d3237eb88db258a5a7fdfb981b895509887c92838d/numpy-2.0.0-cp311-cp311-macosx_14_0_x86_64.whl", hash = "sha256:b6f6a8f45d0313db07d6d1d37bd0b112f887e1369758a5419c0370ba915b3871", size = 6886342, upload-time = "2024-06-16T13:11:04.274Z" }, + { url = "https://files.pythonhosted.org/packages/cd/37/595f27a95ff976e8086bc4be1ede21ed24ca4bc127588da59197a65d066f/numpy-2.0.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5f64641b42b2429f56ee08b4f427a4d2daf916ec59686061de751a55aafa22e4", size = 13913798, upload-time = "2024-06-16T13:11:25.588Z" }, + { url = "https://files.pythonhosted.org/packages/d1/27/2a7bd6855dc717aeec5f553073a3c426b9c816126555f8e616392eab856b/numpy-2.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a7039a136017eaa92c1848152827e1424701532ca8e8967fe480fe1569dae581", size = 19292279, upload-time = "2024-06-16T13:11:54.793Z" }, + { url = "https://files.pythonhosted.org/packages/1b/54/966a3f5a93d709672ad851f6db52461c0584bab52f2230cf76be482302c6/numpy-2.0.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:46e161722e0f619749d1cd892167039015b2c2817296104487cd03ed4a955995", size = 19709770, upload-time = "2024-06-16T13:12:24.3Z" }, + { url = "https://files.pythonhosted.org/packages/cc/8b/9340ac45b6cd8bb92a03f797dbe9b7949f5b3789482e1d824cbebc80fda7/numpy-2.0.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:0e50842b2295ba8414c8c1d9d957083d5dfe9e16828b37de883f51fc53c4016f", size = 14417906, upload-time = "2024-06-16T13:12:47.027Z" }, + { url = "https://files.pythonhosted.org/packages/fa/46/614507d78ca8ce1567ac2c3bf7a79bfd413d6fc96dc6b415abaeb3734c0a/numpy-2.0.0-cp311-cp311-win32.whl", hash = "sha256:2ce46fd0b8a0c947ae047d222f7136fc4d55538741373107574271bc00e20e8f", size = 6357084, upload-time = "2024-06-16T13:12:58.711Z" }, + { url = "https://files.pythonhosted.org/packages/9b/0f/022ca4783b6e6239a53b988a4d315d67f9ae7126227fb2255054a558bd72/numpy-2.0.0-cp311-cp311-win_amd64.whl", hash = "sha256:fbd6acc766814ea6443628f4e6751d0da6593dae29c08c0b2606164db026970c", size = 16511678, upload-time = "2024-06-16T13:13:23.583Z" }, + { url = "https://files.pythonhosted.org/packages/b7/c8/899826a2d5c94f607f5e4a6f1a0e8b07c8fea3a5b674c5706115b8aad9bb/numpy-2.0.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:354f373279768fa5a584bac997de6a6c9bc535c482592d7a813bb0c09be6c76f", size = 20944792, upload-time = "2024-06-16T13:13:55.491Z" }, + { url = "https://files.pythonhosted.org/packages/fe/ec/8ae7750d33565769c8bb7ba925d4e73ecb2de6cd8eaa6fd527fbd52797ee/numpy-2.0.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:4d2f62e55a4cd9c58c1d9a1c9edaedcd857a73cb6fda875bf79093f9d9086f85", size = 13042186, upload-time = "2024-06-16T13:14:16.537Z" }, + { url = "https://files.pythonhosted.org/packages/3f/ab/1dc9f176d3084a2546cf76eb213dc61586d015ef59b3b17947b0e40038af/numpy-2.0.0-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:1e72728e7501a450288fc8e1f9ebc73d90cfd4671ebbd631f3e7857c39bd16f2", size = 4977729, upload-time = "2024-06-16T13:14:26.805Z" }, + { url = "https://files.pythonhosted.org/packages/a0/97/61ed64cedc1b94a7939e3ab3db587822320d90a77bef70fcb586ea7c1931/numpy-2.0.0-cp312-cp312-macosx_14_0_x86_64.whl", hash = "sha256:84554fc53daa8f6abf8e8a66e076aff6ece62de68523d9f665f32d2fc50fd66e", size = 6610230, upload-time = "2024-06-16T13:14:38.126Z" }, + { url = "https://files.pythonhosted.org/packages/bb/31/1f050169270d51ef0346d4c84c7df1c45af16ea304ed5f7151584788d32e/numpy-2.0.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c73aafd1afca80afecb22718f8700b40ac7cab927b8abab3c3e337d70e10e5a2", size = 13619789, upload-time = "2024-06-16T13:14:59.212Z" }, + { url = "https://files.pythonhosted.org/packages/28/95/b56fc6b2abe37c03923b50415df483cf93e09e7438872280a5486131d804/numpy-2.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:49d9f7d256fbc804391a7f72d4a617302b1afac1112fac19b6c6cec63fe7fe8a", size = 18993635, upload-time = "2024-06-16T13:15:27.886Z" }, + { url = "https://files.pythonhosted.org/packages/df/16/4c165a5194fc70e4a131f8db463e6baf34e0d191ed35d40a161ee4c885d4/numpy-2.0.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:0ec84b9ba0654f3b962802edc91424331f423dcf5d5f926676e0150789cb3d95", size = 19408219, upload-time = "2024-06-16T13:15:57.141Z" }, + { url = "https://files.pythonhosted.org/packages/00/4c/440bad868bd3aff4fe4e293175a20da70cddff8674b3654eb2f112868ccf/numpy-2.0.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:feff59f27338135776f6d4e2ec7aeeac5d5f7a08a83e80869121ef8164b74af9", size = 14101574, upload-time = "2024-06-16T13:16:19.435Z" }, + { url = "https://files.pythonhosted.org/packages/26/18/49f1e851f4157198c50f67ea3462797283aa36dd4b0c24b15f63e8118481/numpy-2.0.0-cp312-cp312-win32.whl", hash = "sha256:c5a59996dc61835133b56a32ebe4ef3740ea5bc19b3983ac60cc32be5a665d54", size = 6060205, upload-time = "2024-06-16T13:16:31.337Z" }, + { url = "https://files.pythonhosted.org/packages/ad/9c/4a93b8e395b755c53628573d75d7b21985d9a0f416e978d637084ccc8ec3/numpy-2.0.0-cp312-cp312-win_amd64.whl", hash = "sha256:a356364941fb0593bb899a1076b92dfa2029f6f5b8ba88a14fd0984aaf76d0df", size = 16208660, upload-time = "2024-06-16T13:16:58.208Z" }, ] [[package]] name = "opdm-api" -version = "0.1.3" +version = "0.1.2" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "aniso8601" }, @@ -426,9 +408,9 @@ dependencies = [ { name = "xmltodict" }, { name = "zeep" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/55/2b/eef02b44c13013e66873094cf0da98731f34448c6628907d65669407cb9e/opdm-api-0.1.3.tar.gz", hash = "sha256:e5e1884d848190232ec62b7467e80451286a0c3c845faa87fbbf68837cc12c35", size = 26528, upload-time = "2025-05-21T11:09:26.081Z" } +sdist = { url = "https://files.pythonhosted.org/packages/8e/15/6ef6cbdc7d4858386b2031a0c5f70b010ccd5fb15f8c97d583a2a906ed97/opdm-api-0.1.2.tar.gz", hash = "sha256:a1daa11a68a7dacb629febfcf3d81124c14949e30f87b0c3caabf470d08e311f", size = 26528, upload-time = "2025-04-30T11:55:57.949Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/c9/95/15a9378972a1ac1a4ee2a7fee0fbb59ed443e72323c0cb7616ed539f52f2/opdm_api-0.1.3-py3-none-any.whl", hash = "sha256:91913afc4a74e5fdeea5ba4c3442382342e0031b6384dbb05568691ff9495ef2", size = 11497, upload-time = "2025-05-21T11:09:22.315Z" }, + { url = "https://files.pythonhosted.org/packages/0a/de/b4288b4266568f970a913bb31fd9549ecb70c3fae08d9266bb5b0f7fa964/opdm_api-0.1.2-py3-none-any.whl", hash = "sha256:78bdca6f003f15f563e2c956dc324bdaef01b7f6ac317063b50d643586c61063", size = 11497, upload-time = "2025-04-30T11:55:56.675Z" }, ] [[package]] @@ -530,7 +512,7 @@ wheels = [ [[package]] name = "pypowsybl" -version = "1.9.0" +version = "1.11.2" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "networkx" }, @@ -538,14 +520,14 @@ dependencies = [ { name = "prettytable" }, ] wheels = [ - { url = "https://files.pythonhosted.org/packages/1a/fc/3ed067e2bb12f11deb06eff55cc076d8cefbc50d3dd32fd84753c40291ce/pypowsybl-1.9.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:4f06d9007395b92802a1f7ce891de915265bcff8aa6ac8baca4a93436e091ca3", size = 62696454, upload-time = "2025-01-14T14:02:12.249Z" }, - { url = "https://files.pythonhosted.org/packages/2c/61/c50010a634daf2763223faec0f8813c9ae4e66fb142649ffb2210b33d9fc/pypowsybl-1.9.0-cp311-cp311-macosx_11_0_x86_64.whl", hash = "sha256:06a9ac540861f1bf271838c6151a61d35886b3f89ab23a29dc88d1f42392d6b6", size = 65553156, upload-time = "2025-01-14T14:03:06.163Z" }, - { url = "https://files.pythonhosted.org/packages/af/e0/fe0433cca394904263980af97c3718e1e01a2f6df7a3f358441dc534d09d/pypowsybl-1.9.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ce052c2b2bcf8fd044cab613bd220806d6d74cce3b4cf56842f6d0aa35115579", size = 78710140, upload-time = "2025-01-14T14:04:01.942Z" }, - { url = "https://files.pythonhosted.org/packages/b5/fb/4fc0efac3ec83c9816c1d3c71f15f51b4997878470378b59755cc45371cb/pypowsybl-1.9.0-cp311-cp311-win_amd64.whl", hash = "sha256:1015e4d0acc51634fe476a31a05e4b5827afe6cef2a5aa1a9b9ff97bba90c1a1", size = 61193440, upload-time = "2025-01-14T14:04:56.03Z" }, - { url = "https://files.pythonhosted.org/packages/53/ee/1e6bbf29a252f7da2382fb1d4b42b3a6c2dd51c3b263472185fdf9d46b83/pypowsybl-1.9.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:804b8a46989f303f5ef8851c2ba798fc7cf7b157b4ff3a9eb6a4e74bd117a5fa", size = 62708437, upload-time = "2025-01-14T14:02:24.731Z" }, - { url = "https://files.pythonhosted.org/packages/79/4f/1ef99b6d8ffed047f17a449094e04483bf8c3411b54ec5d3d9488fcf0056/pypowsybl-1.9.0-cp312-cp312-macosx_11_0_x86_64.whl", hash = "sha256:d76af6ee9ad031889e3356758c2d9e313c6cd5b625d6e72389a6c976e644f75a", size = 65555446, upload-time = "2025-01-14T14:03:19.976Z" }, - { url = "https://files.pythonhosted.org/packages/e3/41/b14fd11d372363db6e3f640ccc23949bf579e15da1ed0575dfffdc330694/pypowsybl-1.9.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9254f48c09e19fdef00f776f09c636976ee7373be7a2ef7209709993dadca40f", size = 78699091, upload-time = "2025-01-14T14:04:13.283Z" }, - { url = "https://files.pythonhosted.org/packages/c6/33/24f023ced3db9695637e4e14a2bda3a3875f423a376f9e0e74f0bb224664/pypowsybl-1.9.0-cp312-cp312-win_amd64.whl", hash = "sha256:8728f39fdc94cc22bae4e4189f0875cf0e2d7b8711c012522322a784a6d6a2b1", size = 61202792, upload-time = "2025-01-14T14:05:05.966Z" }, + { url = "https://files.pythonhosted.org/packages/b6/9e/236816a412fc0f45efe14f6083179eb0bb47569c759c79167f3c6334e286/pypowsybl-1.11.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:23e628b62521dd46aa8e4b93aee5a58c366ace971d69bbd09775d1294c4d1f85", size = 65053577, upload-time = "2025-06-25T08:55:08.142Z" }, + { url = "https://files.pythonhosted.org/packages/29/b7/5b0ff764cf6e74199069900cf41dd85cc794882007589037f58f55ad12f5/pypowsybl-1.11.2-cp311-cp311-macosx_11_0_x86_64.whl", hash = "sha256:255c9e72a09c89fd0d99f98f02d34ca10f1d64108bd57059d4c7917c541db8b2", size = 67943747, upload-time = "2025-06-25T08:55:27.039Z" }, + { url = "https://files.pythonhosted.org/packages/a8/09/6e67b719b75221ef67cb04f25ba5a702f0ebef2e6c38bec5d6ba7d37d4b0/pypowsybl-1.11.2-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b7f52b7d01fb9b99245dc50a89322549eb953e74c3ad1ae95842cab648adc87a", size = 81806619, upload-time = "2025-06-25T08:55:46.774Z" }, + { url = "https://files.pythonhosted.org/packages/76/b2/56d3d887b2d7d74f6251244a9caffa2b17fabf25e063bbe47e94871dea1d/pypowsybl-1.11.2-cp311-cp311-win_amd64.whl", hash = "sha256:eaf992676631769b0dd1b009cfa041f001eacf1142ea4c087a6928942ba1fdb0", size = 63429009, upload-time = "2025-06-25T08:56:07.142Z" }, + { url = "https://files.pythonhosted.org/packages/b1/57/abfc3da95528a3dc32624c395a3c10cce8e99e2b06f5cf9851b1ca42f0aa/pypowsybl-1.11.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:54cda0f1b8115c01587a2fa73ecb76ce7b74435b60f017bed412da02bae7d75f", size = 65060473, upload-time = "2025-06-25T08:55:12.028Z" }, + { url = "https://files.pythonhosted.org/packages/98/23/ed4122a8806420764d1bc4af6ae3f29e1f96df96c374db0bb59b243fe291/pypowsybl-1.11.2-cp312-cp312-macosx_11_0_x86_64.whl", hash = "sha256:a192d50800e4b08c5a04d72835243ffb64318b7652713fd4875ea318e51b6174", size = 67961967, upload-time = "2025-06-25T08:55:30.862Z" }, + { url = "https://files.pythonhosted.org/packages/78/8c/565eed9603adbcf46842c2c4d3b463b4d38d59407faeb16aac18fe31ae90/pypowsybl-1.11.2-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a03ef2b6244388bdd869a2486646119ec2aa3efa49fc236603ab1ab161eb5ef9", size = 81778331, upload-time = "2025-06-25T08:55:51.303Z" }, + { url = "https://files.pythonhosted.org/packages/01/9f/ecd83ed29870ccc8647f9f0b4b43e630f5430b7262cf158052fdfc6b9a0a/pypowsybl-1.11.2-cp312-cp312-win_amd64.whl", hash = "sha256:f8afb4255eedc060e81637fdc8943a3be60e52da241367030e2923632a586a08", size = 63423904, upload-time = "2025-06-25T08:56:11.036Z" }, ] [[package]] From 9afe2f8f02f7b5ccb78a679488372dc9a3ece329 Mon Sep 17 00:00:00 2001 From: MATISS <136691671+MK1295@users.noreply.github.com> Date: Thu, 18 Dec 2025 11:29:45 +0200 Subject: [PATCH 4/7] Update process_conf.json updated paramameters for MO --- config/task_generator/process_conf.json | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/config/task_generator/process_conf.json b/config/task_generator/process_conf.json index 7b3add2..0901e21 100644 --- a/config/task_generator/process_conf.json +++ b/config/task_generator/process_conf.json @@ -556,19 +556,16 @@ "valid_to": "", "gate_open": "P1DT5H", "gate_close": "P1DT4H", - "run_at": "30 22 3 * 5", + "run_at": "30 10 18 * *", "time_frame": "M-1", - "data_timestamps": "30 7 * * *", + "data_timestamps": "30 9 * * *", "data_resolution": "PT1H", "tags": [], "properties": { "merge_type": "BA", "merging_entity": "BALTICRCC", "included": [ - "AST", - "PSE", - "ELERING", - "LITGRID" + "PSE" ], "excluded": [], "local_import": [ From 73af279a441648b99418af2a973e963fb17c9a43 Mon Sep 17 00:00:00 2001 From: MATISS <136691671+MK1295@users.noreply.github.com> Date: Mon, 22 Dec 2025 10:39:08 +0200 Subject: [PATCH 5/7] Update process_conf.json fix in run_at --- config/task_generator/process_conf.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/task_generator/process_conf.json b/config/task_generator/process_conf.json index 0901e21..5606d84 100644 --- a/config/task_generator/process_conf.json +++ b/config/task_generator/process_conf.json @@ -556,7 +556,7 @@ "valid_to": "", "gate_open": "P1DT5H", "gate_close": "P1DT4H", - "run_at": "30 10 18 * *", + "run_at": "00 23 17 * *", "time_frame": "M-1", "data_timestamps": "30 9 * * *", "data_resolution": "PT1H", From 90a92c377c1b1053d1fe3f7528808c724cc20bce Mon Sep 17 00:00:00 2001 From: MATISS <136691671+MK1295@users.noreply.github.com> Date: Mon, 5 Jan 2026 11:03:43 +0200 Subject: [PATCH 6/7] Model storage in minio update https://github.com/Baltic-RCC/EMF/issues/425 --- emf/model_merger/model_merger.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/emf/model_merger/model_merger.py b/emf/model_merger/model_merger.py index 097f35f..79eb296 100644 --- a/emf/model_merger/model_merger.py +++ b/emf/model_merger/model_merger.py @@ -470,7 +470,10 @@ def handle(self, task_object: dict, properties: dict, **kwargs): file_object = get_opdm_component_data_bytes(opdm_component=instance) logging.info(f"Adding file: {file_object.name}") merged_model_zip.writestr(file_object.name, file_object.getvalue()) - merged_model_object.name = f"{OUTPUT_MINIO_FOLDER}/{merged_model.name}.zip" + + saved_horizon = str(task_properties["time_horizon"]).strip().upper() + folder = f"{OUTPUT_MINIO_FOLDER}/{saved_horizon}" + merged_model_object.name = f"{folder}/{merged_model.name}.zip # Upload to Minio storage if model_upload_to_minio: From 0ea02b3db86161d81c1b3d28342f641b070bfe59 Mon Sep 17 00:00:00 2001 From: VeikoAunapuu Date: Mon, 5 Jan 2026 13:55:13 +0200 Subject: [PATCH 7/7] Revert "Model storage in minio update" This reverts commit 90a92c377c1b1053d1fe3f7528808c724cc20bce. --- emf/model_merger/model_merger.py | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/emf/model_merger/model_merger.py b/emf/model_merger/model_merger.py index 79eb296..097f35f 100644 --- a/emf/model_merger/model_merger.py +++ b/emf/model_merger/model_merger.py @@ -470,10 +470,7 @@ def handle(self, task_object: dict, properties: dict, **kwargs): file_object = get_opdm_component_data_bytes(opdm_component=instance) logging.info(f"Adding file: {file_object.name}") merged_model_zip.writestr(file_object.name, file_object.getvalue()) - - saved_horizon = str(task_properties["time_horizon"]).strip().upper() - folder = f"{OUTPUT_MINIO_FOLDER}/{saved_horizon}" - merged_model_object.name = f"{folder}/{merged_model.name}.zip + merged_model_object.name = f"{OUTPUT_MINIO_FOLDER}/{merged_model.name}.zip" # Upload to Minio storage if model_upload_to_minio: