Files
buildpath/helm/buildpath/values.yaml
T
vhaudiquet ff9d88d582
pipeline / lint-and-format (push) Successful in 4m1s
pipeline / build-and-push-images (push) Successful in 2m8s
pipeline / lint-and-publish-chart (push) Successful in 11s
helm: add helm chart
2026-07-26 16:12:17 +02:00

163 lines
4.0 KiB
YAML

# buildpath Helm chart values
# Default values in https://github.com/buildpath/buildpath-chart
# --- Global / image ---
global:
# Registry used for the app images.
imageRegistry: git.vhaudiquet.fr/vhaudiquet
imagePullSecrets: []
imagePullPolicy: IfNotPresent
# Mutually override the chart name (used in resource names).
nameOverride: ""
fullnameOverride: ""
# --- MongoDB ---
mongo:
enabled: true
image:
repository: mongo
tag: "8.2.11"
pullPolicy: IfNotPresent
# If you run MongoDB outside this chart, set enabled=false and hostOverride
# to the address of your external Mongo instance.
hostOverride: ""
# Credentials. The root user is created on first init of the data volume.
auth:
rootUser: root
rootPassword: "change-me-please"
# Database name created on first init (optional).
initialDatabase: ""
# WiredTiger cache size (--wiredTigerCacheSizeGB)
wiredTigerCacheSizeGB: "2"
# Run as root, mirrors the compose `user: root:root`.
runAsUser: 0
runAsGroup: 0
resources:
limits:
memory: 6Gi
requests:
memory: 3Gi
# Data volume for /data/db (StatefulSet volumeClaimTemplates)
dataVolume:
storageClassName: "longhorn"
accessMode: ReadWriteOnce
size: 20Gi
# Config volume for /data/configdb
configVolume:
storageClassName: "longhorn"
accessMode: ReadWriteOnce
size: 1Gi
service:
type: ClusterIP
port: 27017
# Extra env vars to pass to mongo (optional).
extraEnv: []
# --- Shared CDRagon cache (RWX) ---
cdragon:
enabled: true
cacheDir: /cdragon
# RWX volume shared between match_collector (writer) and frontend (reader).
volume:
storageClassName: "longhorn"
accessMode: ReadWriteMany
size: 5Gi
# --- frontend (Nuxt) ---
frontend:
enabled: true
image:
repository: lolstats-frontend
tag: "latest"
pullPolicy: Always
replicaCount: 1
service:
type: ClusterIP
port: 3000
ingress:
enabled: true
className: "" # empty => cluster default ingressClass (Traefik)
annotations: {}
host: buildpath.win
# Path matching; Traefik by default does prefix matching on the prefixed path,
# but the standard ingress is fine with / => Exact or Prefix.
path: /
pathType: Prefix
tls:
enabled: false
# Secret name to reuse an existing TLS cert. If empty and tls.enabled=true,
# you must provision a cert (e.g. cert-manager is left to you to wire).
secretName: ""
resources:
limits:
memory: 512Mi
requests:
cpu: 100m
memory: 256Mi
extraEnv: {}
# --- match_collector ---
# Runs as a CronJob instead of the compose "sleep 12h then run" loop.
matchCollector:
enabled: true
image:
repository: lolstats-match_collector
tag: "latest"
pullPolicy: Always
# Cron schedule in UTC. Default: every 12 hours, mirroring the compose sleep.
schedule: "0 */12 * * *"
# Standard k8s CronJob settings.
concurrencyPolicy: Forbid
successfulJobsHistoryLimit: 3
failedJobsHistoryLimit: 3
jobRestartPolicy: Never
# seconds the Job is allowed to run before being terminated.
activeDeadlineSeconds: 3600
# k8s Job backoffLimit (retries on failure).
backoffLimit: 2
resources:
limits:
memory: 1Gi
requests:
cpu: 200m
memory: 256Mi
extraEnv: {}
# --- Secrets ---
# The Riot API key and Mongo credentials are stored in a single Secret that
# every component mounts as env. Override the values below in your own
# values file / external secret.
secrets:
# Riot Games API key used by match_collector.
riotApiKey: "change-me-please"
# Mongo credentials. They default to the values in mongo.auth above; if you
# want different ones in the Secret, override here.
# These are exposed to frontend + match_collector as MONGO_USER/MONGO_PASS/MONGO_HOST.
mongoUser: ""
mongoPass: ""
# --- Default env vars exposed to frontend and match_collector via a ConfigMap ---
# Anything added here becomes an env var on both pods.
config:
extraEnv: {}
# SOME_VAR: "value"