migrate gps-tracking here

This commit is contained in:
Tobias Brunner 2024-02-25 20:49:09 +01:00
parent 748af75656
commit 8fea29e280
Signed by: tobru
SSH key fingerprint: SHA256:kywVhvCA+MIxL6eBgoQa+BfC/ROJqcfD2bpy1PR6Ebk
8 changed files with 212 additions and 0 deletions

View file

@ -0,0 +1,37 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: gpsd
labels:
app.kubernetes.io/name: gpsd
spec:
replicas: 1
revisionHistoryLimit: 3
strategy:
type: Recreate
selector:
matchLabels:
app.kubernetes.io/name: gpsd
template:
metadata:
labels:
app.kubernetes.io/name: gpsd
spec:
containers:
- image: git.tbrnt.ch/tobru/gpsd-arm:latest
imagePullPolicy: IfNotPresent
name: gpsd
ports:
- containerPort: 2947
name: gpsd
protocol: TCP
args:
- /usr/sbin/gpsd
- --listenany
- --foreground
- -D2
- udp://192.168.3.255:6666
resources: {}
imagePullSecrets:
- name: registry
hostNetwork: true

View file

@ -0,0 +1,14 @@
apiVersion: v1
kind: Service
metadata:
name: gpsd
spec:
ports:
- name: gpsd
port: 2947
protocol: TCP
targetPort: gpsd
selector:
app.kubernetes.io/name: gpsd
sessionAffinity: None
type: ClusterIP

View file

@ -0,0 +1,7 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- gpsd/deployment.yaml
- gpsd/service.yaml
generators:
- secret-generator.yaml

View file

@ -0,0 +1,47 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: otlogger-local
labels:
app.kubernetes.io/name: otlogger-local
spec:
replicas: 1
revisionHistoryLimit: 3
strategy:
type: Recreate
selector:
matchLabels:
app.kubernetes.io/name: otlogger-local
template:
metadata:
labels:
app.kubernetes.io/name: otlogger-local
spec:
containers:
- image: git.tbrnt.ch/tobru/gpsd-logger:latest
imagePullPolicy: IfNotPresent
name: otlogger
env:
- name: GPSD_HOST
value: "10.42.0.191"
- name: MQTT_HOST
value: mqtt-plain.mosquitto
- name: MQTT_PORT
value: "1883"
- name: MQTT_AUTH
value: "no"
- name: MQTT_TLS
value: "no"
- name: MQTT_TOPIC
value: owntracks/tobru/camper
- name: MQTT_TID
value: cr
- name: REPEAT_EVERY
value: "60"
- name: LOG_LEVEL
value: info
resources: {}
command:
- owntrackslogger
imagePullSecrets:
- name: registry

View file

@ -0,0 +1,46 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: otlogger-tbrnt
labels:
app.kubernetes.io/name: otlogger-tbrnt
spec:
replicas: 1
revisionHistoryLimit: 3
strategy:
type: Recreate
selector:
matchLabels:
app.kubernetes.io/name: otlogger-tbrnt
template:
metadata:
labels:
app.kubernetes.io/name: otlogger-tbrnt
spec:
containers:
- image: git.tbrnt.ch/tobru/gpsd-logger:latest
imagePullPolicy: IfNotPresent
name: otlogger
env:
- name: GPSD_HOST
value: "10.42.0.191"
- name: MQTT_HOST
value: mqtt.tbrnt.ch
- name: MQTT_PORT
value: "8883"
- name: MQTT_TOPIC
value: owntracks/tobru/camper
- name: MQTT_TID
value: cr
- name: REPEAT_EVERY
value: "60"
- name: LOG_LEVEL
value: info
envFrom:
- secretRef:
name: tbrnt-mqtt
resources: {}
command:
- owntrackslogger
imagePullSecrets:
- name: registry

View file

@ -0,0 +1,27 @@
apiVersion: v1
kind: Secret
metadata:
name: tbrnt-mqtt
stringData:
MQTT_USER: ENC[AES256_GCM,data:hgFMwME=,iv:ETz7xN8zuoW9D4Uo/g2MvycVdUCnxuXqxZdXitQYT6k=,tag:4R7YDSKEQYtDVrB/72qONw==,type:str]
MQTT_PASSWORD: ENC[AES256_GCM,data:p3ipY+X9+0w7xYMUcA==,iv:y9tZNVqnvfrSVpMqB0/HdTArmAHROoNM5+dJxRAA3CM=,tag:vXrNrIISyweTPodB78ztmg==,type:str]
sops:
kms: []
gcp_kms: []
azure_kv: []
hc_vault: []
age:
- recipient: age1dfk8euu7afvw7ge5l2qek45z23hdq5anjd56cy4d7kcsf0e0e5pqfjylx8
enc: |
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBId2k4eDV4WWxSU0dkVzdq
T2lJcEdCTlU5ZWpqUTRVaXlvQ3lSaFpOWEdnCko2cGQ5US9YbkpMUFFYUzZPc3Zn
TlV3bVc3ZEtUYzNGcGVYam5FM1krSnMKLS0tIG9XZ2JjZU5ISUN0QzhWQWg4WUYr
MnFTWnpBOFNVZjBCVDExM0M1QUJndE0KziYwLdEaLbH178sBTb7r3ly9zJOwFCgp
A5DZ+BP3aNP7G2gNGrRM1/6NU6x+Sc1a/+PHTrSqmJhiidrKUlTNYg==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2024-02-25T19:48:30Z"
mac: ENC[AES256_GCM,data:ZBhZnozC0M0W0klZ03eR55Z8RJtmcgPXH1pUbapTj+r1MjmoA4lrkcNQLli50cmOnQJikkjzHtbbJFe7Ln1tCdl++n7+v0+LXIciE6ISvIo3VQUo/a6YrCt6ZtxJtzJsDMz/CKKU+3q/1TIatwN+HM0vbzGHcOFI2bAeoMLw0fo=,iv:Mb8elIFQ63L9wmH3tWc97soatrlMAYbQ6l0R2EvN440=,tag:cD3Y+S/CV1N2GEPTxNreww==,type:str]
pgp: []
encrypted_regex: ^(data|stringData)$
version: 3.8.1

View file

@ -0,0 +1,7 @@
apiVersion: viaduct.ai/v1
kind: ksops
metadata:
name: secret-generator
files:
- secret-registry.sops.yaml
- otlogger/secret-tbrnt.sops.yaml

View file

@ -0,0 +1,27 @@
apiVersion: v1
kind: Secret
metadata:
name: registry
type: kubernetes.io/dockerconfigjson
stringData:
.dockerconfigjson: ENC[AES256_GCM,data:cjrOyEr9V8oIcvwILQwgwDQTMwQWiXohoqVIf9v5KiCgHLUvoW4bgHr+KoeCKsI4Eaga/NEX66KmHPIVTmWzRuuiXrDJ/HavohWgFpq7gyXIrWIKDVkSSrW1MD4nngRf6FMjUkZNZz1e7ifY3ZH20sRohOgdQIL2htR1hKVNSKPrlIEl0I/nYcLa47/lNGBhuVULoelXpOosCteN/oqyRTVNxr0zFjUEYffEE7221B/FRSlGllvtsurUnmVrSmo=,iv:EdHDGTujBUFGY1GyXwg55XGC+LDUGedUtyjHSiwSzE4=,tag:z2Yjg9JgevIOTxaCf47ZVA==,type:str]
sops:
kms: []
gcp_kms: []
azure_kv: []
hc_vault: []
age:
- recipient: age1dfk8euu7afvw7ge5l2qek45z23hdq5anjd56cy4d7kcsf0e0e5pqfjylx8
enc: |
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBWR3pMZVRzTzRaREo3WDh2
eWpucm9vc1lldmtURVVoUW1UaE5CMnFoVzJVCjgwSjQzZlFId3JZUnFYZzZTQUl1
RC9GQVFCMUpmd0d4VlFaTGlKMmFPcWsKLS0tIFdyYWVIUUM1dU5yRVBRZ0owTnQw
cndvOTJHb1VHU3RxdXBIdVVVWmhrSjQKh98htipPIWaTdArtx5Ux8rT2LKLS0hD9
Wndf5gxpTGnXgWuCVyBLFFJWGog+gTRH/E2v8WbV4lJwDXObfO6x6A==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2024-02-25T19:48:24Z"
mac: ENC[AES256_GCM,data:JEuVxTXbwwP1nGEBX/dgl9lY4ezl6oPLPYvO0it3tJy3BC6QRklDkYWSE+gMkaIX6GYBVglAV5kBf2T9Cio0/W0kTcwWm61hIUaDz9LcKC8tgTMjhFiSv7ZzMODYQ8euEaoOyKLAGalG74gziuXh8fC/UAj+i2Zzh2fvSwIGKoA=,iv:LFGsOcE+c81COtrfi7VPjIrwzpd3H8Ufw1iOBUYvnRM=,tag:aPRUe3STeiE7CUcRnDdI6Q==,type:str]
pgp: []
encrypted_regex: ^(data|stringData)$
version: 3.8.1