From 3b8d20896c26527f3a737915fdd13a5cb06a2fc8 Mon Sep 17 00:00:00 2001 From: Swordsteel Date: Wed, 23 Jul 2025 17:16:25 +0200 Subject: [PATCH] k8s hlaeja device data --- doc/k8s-testing.md | 44 +++++++++++++++++++ kube/03-hlaeja/04-device-data/01-secret.yaml | 12 +++++ .../04-device-data/02-configmap.yaml | 12 +++++ .../04-device-data/03-deployment.yaml | 32 ++++++++++++++ kube/03-hlaeja/04-device-data/04-service.yaml | 20 +++++++++ 5 files changed, 120 insertions(+) create mode 100644 kube/03-hlaeja/04-device-data/01-secret.yaml create mode 100644 kube/03-hlaeja/04-device-data/02-configmap.yaml create mode 100644 kube/03-hlaeja/04-device-data/03-deployment.yaml create mode 100644 kube/03-hlaeja/04-device-data/04-service.yaml diff --git a/doc/k8s-testing.md b/doc/k8s-testing.md index efe8769..f030d58 100644 --- a/doc/k8s-testing.md +++ b/doc/k8s-testing.md @@ -40,6 +40,11 @@ * [Config Map](#config-map-4) * [Deployment](#deployment-2) * [Service](#service-5) + * [Device Data](#device-data) + * [Secret](#secret-5) + * [Config Map](#config-map-5) + * [Deployment](#deployment-3) + * [Service](#service-6) ---- @@ -410,3 +415,42 @@ this service should not be accessible from world only open in testing ```bash kubectl apply -f .\kube\03-hlaeja\03-device-configuration\04-service.yaml ``` + +--- + +### Device Data + +#### Secret + +```bash +kubectl apply -f .\kube\03-hlaeja\04-device-data\01-secret.yaml +``` + +Set values: + +- influxdb token + +#### Config Map + +```bash +kubectl apply -f .\kube\03-hlaeja\04-device-data\02-configmap.yaml +``` + +Set values: + +- spring profile +- influxdb url + +#### Deployment + +```bash +kubectl apply -f .\kube\03-hlaeja\04-device-data\03-deployment.yaml +``` + +#### Service + +this service should not be accessible from world only open in testing + +```bash +kubectl apply -f .\kube\03-hlaeja\04-device-data\04-service.yaml +``` diff --git a/kube/03-hlaeja/04-device-data/01-secret.yaml b/kube/03-hlaeja/04-device-data/01-secret.yaml new file mode 100644 index 0000000..e5f197a --- /dev/null +++ b/kube/03-hlaeja/04-device-data/01-secret.yaml @@ -0,0 +1,12 @@ +apiVersion: v1 +kind: Secret +metadata: + name: device-data + namespace: hlaeja + labels: + app: device-data + environment: testing + tier: backend +type: Opaque +stringData: + INFLUXDB_TOKEN: "influxdbToken==" diff --git a/kube/03-hlaeja/04-device-data/02-configmap.yaml b/kube/03-hlaeja/04-device-data/02-configmap.yaml new file mode 100644 index 0000000..8ea394d --- /dev/null +++ b/kube/03-hlaeja/04-device-data/02-configmap.yaml @@ -0,0 +1,12 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: device-data + namespace: hlaeja + labels: + app: device-data + environment: testing + tier: backend +data: + SPRING_PROFILES_ACTIVE: "testing" + INFLUXDB_URL: "http://influxdb" diff --git a/kube/03-hlaeja/04-device-data/03-deployment.yaml b/kube/03-hlaeja/04-device-data/03-deployment.yaml new file mode 100644 index 0000000..2ec51d2 --- /dev/null +++ b/kube/03-hlaeja/04-device-data/03-deployment.yaml @@ -0,0 +1,32 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: device-data + namespace: hlaeja + labels: + app: device-data + environment: testing + tier: backend +spec: + replicas: 1 + selector: + matchLabels: + app: device-data + template: + metadata: + labels: + app: device-data + spec: + imagePullSecrets: + - name: github + containers: + - name: device-data-app + image: ghcr.io/swordsteel/hlaeja-device-data:0.1.1 + imagePullPolicy: IfNotPresent + envFrom: + - configMapRef: + name: device-data + - secretRef: + name: device-data + ports: + - containerPort: 8080 diff --git a/kube/03-hlaeja/04-device-data/04-service.yaml b/kube/03-hlaeja/04-device-data/04-service.yaml new file mode 100644 index 0000000..de7dfe1 --- /dev/null +++ b/kube/03-hlaeja/04-device-data/04-service.yaml @@ -0,0 +1,20 @@ +apiVersion: v1 +kind: Service +metadata: + name: device-data + namespace: hlaeja + annotations: + metallb.universe.tf/address-pool: default + labels: + app: device-data + environment: testing + tier: backend +spec: + type: LoadBalancer + loadBalancerIP: 10.0.3.114 + selector: + app: device-data + ports: + - protocol: TCP + port: 80 + targetPort: 8080