adjust for cluster deployment
This commit is contained in:
parent
696c299ac9
commit
05d10107ac
41
deployment/install.yml
Normal file
41
deployment/install.yml
Normal file
@ -0,0 +1,41 @@
|
||||
apiVersion: v1
|
||||
kind: namespace
|
||||
metadata:
|
||||
name: pv-controller
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: pv-controller
|
||||
namespace: pv-controller
|
||||
data:
|
||||
MQTT__BROKER: "emqx01-anonymous-cluster-internal.broker.svc.cluster.local"
|
||||
MQTT__PORT: "1883"
|
||||
MQTT__METERPUBLISHTOPIC: "IoT/PV/Values"
|
||||
MQTT__METERPUBLISHPERIOD: "15"
|
||||
MQTT__RELAISSUBSCRIBETOPIC: "IoT/PV/Cmd"
|
||||
MODBUS__GATEWAY: "172.16.2.42"
|
||||
---
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: pv-controller
|
||||
namespace: pv-controller
|
||||
labels:
|
||||
app: pv-controller
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: pv-controller
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: pv-controller
|
||||
spec:
|
||||
containers:
|
||||
- name: pv-controller
|
||||
image: wollud1969/sinkserver:e5f9d3e3
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
name: pv-controller
|
31
src/pv_controller/config.py
Normal file
31
src/pv_controller/config.py
Normal 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]
|
||||
|
@ -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)
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user