apiVersion: v1 kind: ConfigMap metadata: name: heating-controller-config data: MQTT_BROKER: "emqx01-anonymous-cluster-internal.broker.svc.cluster.local" MQTT_PORT: "1883" MQTT_CLIENT_PREFIX: "HeatingController" MQTT_BOX_TOPIC_PREFIXES: | { "high_temp": "heating/config/high_temp/", "cmd": "heating/command/" } MQTT_CENTRAL_TOPICS: | { "general_off": "heating/system/general_off", "maintenance_mode": "heating/system/maintenance_mode", "status": "heating/system/status" } MQTT_STATUS_TOPIC: "heating/status" OFF_TEMPERATURE: "5.0" LOW_TEMPERATURE: "15.0" DEFAULT_HIGH_TEMPERATURE: "21.0" MAINTENANCE_TEMPERATURE: "30.0" BOXES: | { "box1": { "label": "living_room", "windows": [ { "topic": "window/living_room/street_side", "label": "street_side" }, { "topic": "window/living_room/garden_side", "label": "garden_side" } ], "output_topic": "output/living_room" }, "box2": { "label": "kitchen", "windows": [ { "topic": "window/kitchen/street_side", "label": "street_side" }, { "topic": "window/kitchen/garden_side", "label": "garden_side" }, { "topic": "window/kitchen/garden_door", "label": "garden_door" } ], "output_topic": "output/kitchen" } } --- apiVersion: apps/v1 kind: Deployment metadata: name: heating-controller spec: replicas: 1 selector: matchLabels: app: heating-controller template: metadata: labels: app: heating-controller spec: containers: - name: heating-controller image: %IMAGE% envFrom: - configMapRef: name: heating-controller-config