adjust for cluster deployment

This commit is contained in:
2023-11-08 14:37:29 +01:00
parent 696c299ac9
commit 05d10107ac
3 changed files with 74 additions and 11 deletions

View File

@ -0,0 +1,31 @@
import os
class Config:
OPTIONS = {
'mqtt': [ 'login',
'password',
'ca',
'cert',
'key',
'broker',
'port',
'meterPublishTopic',
'meterPublishPeriod',
'relaisSubscribeTopic' ],
'modbus': [ 'gateway' ]
}
def __init__(self):
self.values = {}
for section, keys in OPTIONS:
self.values[section] = {}
for key in keys:
varname = f"{section}__{key}".upper()
try:
self.values[section][key] = os.environ[varname]
except KeyError:
pass
def __getitem__(self, section):
return self.values[index]

View File

@ -2,9 +2,8 @@ from MeterPublish import MeterPublish
from RelaisSubscribe import RelaisSubscribe
from ModbusBase import ModbusHandler
from loguru import logger
from config import Config
import logging
import argparse
import configparser
import threading
@ -23,15 +22,7 @@ def exceptHook(args):
logger.info("pv controller starting")
parser = argparse.ArgumentParser(description="pv controller")
parser.add_argument('--config', '-f',
help='Config file, default is $pwd/config.ini',
required=False,
default='./config.ini')
args = parser.parse_args()
config = configparser.ConfigParser()
config.read(args.config)
config = Config()
modbusHandler = ModbusHandler(config)