Add optimiser deployment to garm stack

This commit is contained in:
Martin McCaffery 2026-02-12 16:11:26 +01:00
parent 19b1c120e2
commit f7bab3b2c6
Signed by: martin.mccaffery
GPG key ID: 7C4D0F375BCEE533
2 changed files with 118 additions and 0 deletions

View file

@ -0,0 +1,25 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: optimiser-receiver
namespace: argocd
labels:
env: dev
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
project: default
syncPolicy:
automated:
selfHeal: true
syncOptions:
- CreateNamespace=true
retry:
limit: -1
destination:
name: in-cluster
namespace: garm
source:
repoURL: https://{{{ .Env.CLIENT_REPO_DOMAIN }}}/{{{ .Env.CLIENT_REPO_ORG_NAME }}}
targetRevision: HEAD
path: "{{{ .Env.CLIENT_REPO_ID }}}/{{{ .Env.DOMAIN }}}/stacks/garm/optimiser-receiver"

View file

@ -0,0 +1,93 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: optimiser-receiver
labels:
app: optimiser-receiver
spec:
replicas: 1
selector:
matchLabels:
app: optimiser-receiver
template:
metadata:
labels:
app: optimiser-receiver
spec:
containers:
- name: receiver
image: edp.buildth.ing/devfw-cicd/forgejo-runner-optimiser-receiver:0.0.3
args:
- --db=/data/metrics.db
ports:
- name: http
containerPort: 8080
protocol: TCP
env:
- name: RECEIVER_READ_TOKEN
valueFrom:
secretKeyRef:
name: optimiser-tokens
key: read-token
- name: RECEIVER_HMAC_KEY
valueFrom:
secretKeyRef:
name: optimiser-tokens
key: hmac-key
volumeMounts:
- name: data
mountPath: /data
livenessProbe:
httpGet:
path: /health
port: http
initialDelaySeconds: 5
periodSeconds: 30
readinessProbe:
httpGet:
path: /health
port: http
initialDelaySeconds: 2
periodSeconds: 10
resources:
requests:
cpu: 50m
memory: 64Mi
limits:
cpu: 200m
memory: 128Mi
volumes:
- name: data
persistentVolumeClaim:
claimName: optimiser-receiver-data
---
apiVersion: v1
kind: Service
metadata:
name: optimiser-receiver
labels:
app: optimiser-receiver
spec:
selector:
app: optimiser-receiver
ports:
- name: http
port: 8080
targetPort: http
protocol: TCP
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: optimiser-receiver-data
labels:
app: optimiser-receiver
annotations:
everest.io/disk-volume-type: GPSSD
spec:
storageClassName: csi-disk
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi