install mqttwarn
continuous-integration/drone/push Build is passing Details

This commit is contained in:
Tobias Brunner 2021-11-03 21:55:17 +01:00
parent d326a4c308
commit c681fccb63
4 changed files with 136 additions and 0 deletions

21
_apps/mqttwarn.yaml Normal file
View File

@ -0,0 +1,21 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: mqttwarn
namespace: argocd
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
destination:
namespace: mqttwarn
server: https://kubernetes.default.svc
project: apps
source:
path: mqttwarn
repoURL: https://git.tbrnt.ch/tobru/gitops-tbrnt.git
targetRevision: HEAD
---
apiVersion: v1
kind: Namespace
metadata:
name: mqttwarn

View File

@ -0,0 +1,64 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: transformers
data:
transformers.py: |
import ast
import logging
def laq4_values(topic, data, srv=None):
payload = ast.literal_eval(data["payload"])
d = dict(
battery=payload["uplink_message"]["decoded_payload"]["Bat_V"],
temperature=payload["uplink_message"]["decoded_payload"]["TempC_SHT"],
humidity=payload["uplink_message"]["decoded_payload"]["Hum_SHT"],
tvoc_ppb=payload["uplink_message"]["decoded_payload"]["TVOC_ppb"],
co2_ppm=payload["uplink_message"]["decoded_payload"]["CO2_ppm"],
rssi=payload["uplink_message"]["rx_metadata"][0]["rssi"],
consumed_airtime=payload["uplink_message"]["consumed_airtime"].replace("s", ""),
gateway_id=payload["uplink_message"]["rx_metadata"][0]["gateway_ids"][
"gateway_id"
],
)
logging.debug(d)
return d
def rhf1s001_values(topic, data, srv=None):
payload = ast.literal_eval(data["payload"])
d = dict(
battery=payload["uplink_message"]["decoded_payload"]["battery"],
temperature=payload["uplink_message"]["decoded_payload"]["temp"],
humidity=payload["uplink_message"]["decoded_payload"]["hum"],
rssi=payload["uplink_message"]["rx_metadata"][0]["rssi"],
consumed_airtime=payload["uplink_message"]["consumed_airtime"].replace("s", ""),
gateway_id=payload["uplink_message"]["rx_metadata"][0]["gateway_ids"][
"gateway_id"
],
)
logging.debug(d)
return d
def lds02_values(topic, data, srv=None):
payload = ast.literal_eval(data["payload"])
d = dict(
Topic=topic,
Battery=payload["uplink_message"]["decoded_payload"]["BAT_V"],
Alarm=payload["uplink_message"]["decoded_payload"]["ALARM"],
DoorOpenStatus=payload["uplink_message"]["decoded_payload"]["DOOR_OPEN_STATUS"],
DoorOpenTimes=payload["uplink_message"]["decoded_payload"]["DOOR_OPEN_TIMES"],
LastDoorOpenDuration=payload["uplink_message"]["decoded_payload"][
"LAST_DOOR_OPEN_DURATION"
],
Mod=payload["uplink_message"]["decoded_payload"]["MOD"],
rssi=payload["uplink_message"]["rx_metadata"][0]["rssi"],
consumed_airtime=payload["uplink_message"]["consumed_airtime"].replace("s", ""),
gateway_id=payload["uplink_message"]["rx_metadata"][0]["gateway_ids"][
"gateway_id"
],
)
logging.debug(d)
return d

34
mqttwarn/deployment.yaml Normal file
View File

@ -0,0 +1,34 @@
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: mqttwarn
name: mqttwarn
spec:
replicas: 1
selector:
matchLabels:
app: mqttwarn
template:
metadata:
labels:
app: mqttwarn
spec:
containers:
- image: ghcr.io/jpmens/mqttwarn-full:0.28.1
name: mqttwarn-full
imagePullPolicy: IfNotPresent
volumeMounts:
- name: config
mountPath: /etc/mqttwarn/mqttwarn.ini
subPath: mqttwarn.ini
- name: transformers
mountPath: /etc/mqttwarn/transformers.py
subPath: transformers.py
volumes:
- name: config
secret:
secretName: mqttwarn-ini
- name: transformers
configMap:
name: transformers

View File

@ -0,0 +1,17 @@
apiVersion: bitnami.com/v1alpha1
kind: SealedSecret
metadata:
creationTimestamp: null
name: mqttwarn-ini
namespace: mqttwarn
spec:
encryptedData:
mqttwarn.ini: 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
template:
metadata:
creationTimestamp: null
name: mqttwarn-ini
namespace: mqttwarn
type: Opaque
status: {}