New coordinator, new z2m
Signed-off-by: Martyn Ranyard <m@rtyn.berlin>
This commit is contained in:
parent
f21201c330
commit
aecbdfd3b2
|
@ -0,0 +1 @@
|
|||
1.33.2
|
|
@ -0,0 +1,6 @@
|
|||
#!/bin/bash
|
||||
filename=$(date '+%Y%m%d%H%M%S').tgz
|
||||
for i in $(talosctl -n 192.168.1.26 list /var/mnt/storage/zigbee2mqtt | grep 192.168 | tail -n 4 | awk '{print $2}'); do talosctl -n 192.168.1.26 read /var/mnt/storage/zigbee2mqtt/$i >$i; done
|
||||
tar czf ${filename} $(talosctl -n 192.168.1.26 list /var/mnt/storage/zigbee2mqtt | grep 192.168 | tail -n 4 | awk '{print $2}' | xargs echo)
|
||||
rm $(talosctl -n 192.168.1.26 list /var/mnt/storage/zigbee2mqtt | grep 192.168 | tail -n 4 | awk '{print $2}' | xargs echo)
|
||||
echo copy to https://minio.service.consul/browser/backups/emlnYmVlMm1xdHQv
|
|
@ -0,0 +1,81 @@
|
|||
---
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
labels:
|
||||
app.kubernetes.io/instance: zigbee2mqtt
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: zigbee2mqtt
|
||||
app.kubernetes.io/version: 1.19.1
|
||||
helm.sh/chart: zigbee2mqtt-9.4.2
|
||||
name: zigbee2mqtt-settings
|
||||
namespace: zigbee2mqtt
|
||||
data:
|
||||
configuration.yaml: |
|
||||
advanced:
|
||||
homeassistant_discovery_topic: homeassistant
|
||||
homeassistant_status_topic: homeassistant/status
|
||||
last_seen: ISO_8601
|
||||
log_level: debug
|
||||
log_output:
|
||||
- console
|
||||
channel: 25
|
||||
network_key:
|
||||
- 140
|
||||
- 18
|
||||
- 129
|
||||
- 36
|
||||
- 87
|
||||
- 2
|
||||
- 242
|
||||
- 222
|
||||
- 178
|
||||
- 205
|
||||
- 177
|
||||
- 160
|
||||
- 9
|
||||
- 212
|
||||
- 115
|
||||
- 122
|
||||
experimental:
|
||||
new_api: true
|
||||
frontend:
|
||||
port: 8080
|
||||
homeassistant: true
|
||||
serial:
|
||||
port: 'tcp://ser2net.ser2net.svc.cluster.local:3001'
|
||||
mqtt:
|
||||
base_topic: zigbee2mqtt
|
||||
include_device_information: true
|
||||
server: 'mqtt://mosquitto.martyn.berlin'
|
||||
permit_join: false
|
||||
external_converters:
|
||||
- ledvanceA60S.js
|
||||
ledvanceA60S.js: |
|
||||
const fz = require('zigbee-herdsman-converters/converters/fromZigbee');
|
||||
const tz = require('zigbee-herdsman-converters/converters/toZigbee');
|
||||
const exposes = require('zigbee-herdsman-converters/lib/exposes');
|
||||
const reporting = require('zigbee-herdsman-converters/lib/reporting');
|
||||
const extend = require('zigbee-herdsman-converters/lib/extend');
|
||||
const ota = require('zigbee-herdsman-converters/lib/ota');
|
||||
const tuya = require('zigbee-herdsman-converters/lib/tuya');
|
||||
const e = exposes.presets;
|
||||
const ea = exposes.access;
|
||||
|
||||
const definition = {
|
||||
zigbeeModel: ['A60S RGBW'],
|
||||
model: 'A60S RGBW',
|
||||
vendor: 'Ledvance',
|
||||
description: 'Ledvance Classic E27 Multicolor',
|
||||
// Note that fromZigbee, toZigbee and exposes are missing here since we use extend here.
|
||||
// Extend contains a default set of fromZigbee/toZigbee converters and expose for common device types.
|
||||
// The following extends are available:
|
||||
// - extend.switch
|
||||
// - extend.light_onoff_brightness
|
||||
// - extend.light_onoff_brightness_colortemp
|
||||
// - extend.light_onoff_brightness_color
|
||||
// - extend.light_onoff_brightness_colortemp_color
|
||||
extend: extend.light_onoff_brightness_colortemp_color(),
|
||||
};
|
||||
|
||||
module.exports = definition;
|
|
@ -0,0 +1,96 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
labels:
|
||||
app.kubernetes.io/instance: zigbee2mqtt
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: zigbee2mqtt
|
||||
app.kubernetes.io/version: 1.19.1
|
||||
helm.sh/chart: zigbee2mqtt-9.4.2
|
||||
annotations:
|
||||
configmap.reloader.stakater.com/reload: "zigbee2mqtt-settings"
|
||||
name: zigbee2mqtt
|
||||
namespace: zigbee2mqtt
|
||||
spec:
|
||||
replicas: 1
|
||||
revisionHistoryLimit: 3
|
||||
selector:
|
||||
matchLabels:
|
||||
app.kubernetes.io/instance: zigbee2mqtt
|
||||
app.kubernetes.io/name: zigbee2mqtt
|
||||
strategy:
|
||||
type: Recreate
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app.kubernetes.io/instance: zigbee2mqtt
|
||||
app.kubernetes.io/name: zigbee2mqtt
|
||||
spec:
|
||||
automountServiceAccountToken: true
|
||||
initContainers:
|
||||
- command:
|
||||
- /bin/sh
|
||||
- -c
|
||||
- cp /configs/ledvanceA60S.js /data/;
|
||||
image: alpine:latest
|
||||
imagePullPolicy: IfNotPresent
|
||||
name: copy
|
||||
volumeMounts:
|
||||
- mountPath: /data
|
||||
name: data
|
||||
- mountPath: /configs/
|
||||
name: zigbee2mqtt-settings
|
||||
containers:
|
||||
- env:
|
||||
- name: ZIGBEE2MQTT_DATA
|
||||
value: /data
|
||||
image: koenkk/zigbee2mqtt:1.35.2
|
||||
imagePullPolicy: IfNotPresent
|
||||
livenessProbe:
|
||||
failureThreshold: 3
|
||||
initialDelaySeconds: 0
|
||||
periodSeconds: 10
|
||||
tcpSocket:
|
||||
port: 8080
|
||||
timeoutSeconds: 1
|
||||
name: zigbee2mqtt
|
||||
ports:
|
||||
- containerPort: 8080
|
||||
name: http
|
||||
protocol: TCP
|
||||
readinessProbe:
|
||||
failureThreshold: 3
|
||||
initialDelaySeconds: 0
|
||||
periodSeconds: 10
|
||||
tcpSocket:
|
||||
port: 8080
|
||||
timeoutSeconds: 1
|
||||
securityContext:
|
||||
capabilities:
|
||||
add:
|
||||
- NET_ADMIN
|
||||
- NET_RAW
|
||||
- SYS_ADMIN
|
||||
privileged: true
|
||||
startupProbe:
|
||||
failureThreshold: 30
|
||||
initialDelaySeconds: 0
|
||||
periodSeconds: 5
|
||||
tcpSocket:
|
||||
port: 8080
|
||||
timeoutSeconds: 1
|
||||
volumeMounts:
|
||||
- mountPath: /data
|
||||
name: data
|
||||
dnsPolicy: ClusterFirstWithHostNet
|
||||
enableServiceLinks: true
|
||||
hostNetwork: true
|
||||
serviceAccountName: default
|
||||
volumes:
|
||||
- configMap:
|
||||
name: zigbee2mqtt-settings
|
||||
name: zigbee2mqtt-settings
|
||||
- name: data
|
||||
persistentVolumeClaim:
|
||||
claimName: zigbee2mqtt
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
namespace: zigbee2mqtt
|
||||
|
||||
resources:
|
||||
- namespace.yaml
|
||||
- configmap.yaml
|
||||
- deploy.yaml
|
||||
- pvc.yaml
|
||||
- svc.yaml
|
|
@ -0,0 +1,6 @@
|
|||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
labels:
|
||||
name: zigbee2mqtt
|
||||
name: zigbee2mqtt
|
|
@ -0,0 +1,11 @@
|
|||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: zigbee2mqtt
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
storageClassName: longhorn-fast
|
||||
resources:
|
||||
requests:
|
||||
storage: 128Mi
|
|
@ -0,0 +1,20 @@
|
|||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
external-dns.alpha.kubernetes.io/hostname: zigbee2.martyn.berlin
|
||||
labels:
|
||||
app.kubernetes.io/instance: zigbee2mqtt
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: zigbee2mqtt
|
||||
app.kubernetes.io/version: 1.19.1
|
||||
helm.sh/chart: zigbee2mqtt-9.4.2
|
||||
name: zigbee2mqtt
|
||||
spec:
|
||||
ports:
|
||||
- port: 80
|
||||
targetPort: 8080
|
||||
selector:
|
||||
app.kubernetes.io/instance: zigbee2mqtt
|
||||
app.kubernetes.io/name: zigbee2mqtt
|
||||
type: LoadBalancer
|
|
@ -0,0 +1,17 @@
|
|||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: zigbee2mqtt2
|
||||
namespace: argocd
|
||||
spec:
|
||||
destination:
|
||||
namespace: zigbee2mqtt2
|
||||
server: https://kubernetes.default.svc
|
||||
project: infra
|
||||
source:
|
||||
path: apps-kustomized/zigbee2mqtt2
|
||||
repoURL: https://git.martyn.berlin/martyn/infra4talos
|
||||
targetRevision: HEAD
|
||||
syncPolicy:
|
||||
automated:
|
||||
selfHeal: true
|
Loading…
Reference in New Issue