Skip to content

GameBench/web-dashboard-helm-chart

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GameBench Web Dashboard Helm Chart

  • Installs the GameBench web dashboard which displays session data recorded using the Android app, desktop app, GBA or SDK.

TL;DR;

# Create a pv (only required if you wish to use disk file storage.)

# Example pv.yaml
apiVersion: v1
kind: PersistentVolume
metadata:
  name: nfs-pv-gamebench
spec:
  capacity:
    storage: 10Gi
  volumeMode: Filesystem
  accessModes:
    - ReadWriteMany
  nfs:
    path: /export/data
    server: 10.154.15.198

kubectl apply -f pv.yaml

# Create namespace
kubectl create ns <namespace>

# Install from Helm

helm repo add gb-helm-charts https://gb-helm-charts.storage.googleapis.com/
helm install --namespace <namespace> --version v2.28.2 gb-helm-charts/gamebench

# Or clone the repo and install the chart

git clone [email protected]:GameBench/web-dashboard-helm-chart.git
helm install --namespace <namespace> --version v2.28.2 gamebench-web-dashboard web-dashboard-helm-chart

Configuration

Parameter Description Default
api.image.repository API image repository quay.io/gamebench/node-backend
api.image.pullSecrets Array of kubernetes pull secret names []
api.livenessProbe API liveness probe {"httpGet":{"path":"/v1/health","port":5000},"initialDelaySeconds":60,"periodSeconds":30}
api.podAnnotations API Pod annotations ""
api.readinessProbe API readiness probe {"httpGet":{"path":"/v1/info/version","port":5000},"initialDelaySeconds":60,"periodSeconds":30}
api.replicas 1
api.resources CPU/Memory resource requests/limits {}
api.service.type API Service Type "ClusterIP"
api.service.annotations API Service annotations {}
apiTokenSecret Key used to hash API tokens ""
application.authJwtSecret Secret key used to sign JWTs ""
application.host Application host. Used to construct URLs to the application ""
application.httpProxy Proxy to use for HTTP requests ""
application.httpsProxy Proxy to use for HTTPS requests ""
application.noProxy Comma separated list of hosts to opt out of proxying ""
application.port Application port. Used to construct URLs to the application "443"
application.urlScheme Application URL scheme. Used to construct URLs to the application "https"
application.legacyLogin Whether to use JWTs for log in. Use this if your backend and frontend are available on different hosts "false"
encryptionKey Key used to hash Jira passwords / tokens ""
fileStorage.cacheType Can be disk or redis. Set to redis in order to share the cache between multiple API replicas "disk"
fileStorage.type Can be disk or gcs "disk"
fileStorage.gcsBucket Google Cloud Storage bucket used for file storage ""
fileStorage.gcsPathPrefix Path prefix for uploaded objects. Useful if the bucket contains other objects not uploaded by the system ""
fileStorage.gcsProjectId Project ID for fileStorage.gcsBucket ""
googleApplicationCredentials Base64 encoded JSON service account key ""
image.tag Image tag v2.28.2
ingress.annotations {}
ingress.enabled false
ingress.hosts Array of hosts []
license.contents gamebench-license from the license zip base64 encoded ""
license.signature gamebench-license.RSA-SHA256 from the license zip base64 encoded ""
logLevel info
persistence.enabled Set to false if you do not wish to use a PVC. Can be used in conjuction with fileStorage.type gcs true
persistence.existingClaim Name of existing PVC. If left empty and persistence.enabled is true, a PVC will be created ""
persistence.storageClass Persistent Disk Storage Class ""
postgres.database Postgres database "gamebench"
postgres.host Postgres host ""
postgres.password Postgres password ""
postgres.port Postgres port "5432"
postgres.username Postgres username ""
redis.auth Redis auth ""
redis.host Redis host ""
redis.port Redis port "6379"
setupPassword /setup password ""
smtp.from SMTP from ""
smtp.host SMTP host ""
smtp.name Optional hostname of the client, used for identifying to the server, defaults to hostname of the machine ""
smtp.pass SMTP pass ""
smtp.port SMTP port ""
smtp.secure If true the connection will use TLS when connecting to server. If false (the default) then TLS is used if server supports the STARTTLS extension. In most cases set this value to true if you are connecting to port 465. For port 587 or 25 keep it false "false"
smtp.tls if this is true and secure is false then Nodemailer tries to use STARTTLS even if the server does not advertise support for it. If the connection can not be encrypted then message is not sent "false"
smtp.user SMTP user ""
smtp.tlsRejectUnauth ""
ui.image.repository Frontend image repository quay.io/gamebench/ang4-frontend
ui.image.pullSecrets Array of kubernetes pull secret names []
ui.podAnnotations UI Pod annotations ""
ui.replicas 1
ui.resources CPU/Memory resource requests/limits {}
ui.service.type UI Service Type "ClusterIP"
ui.service.annotations UI Service annotations {}
worker.podAnnotations Worker Pod annotations ""
worker.replicas 1
worker.resources CPU/Memory resource requests/limits {}

Troubleshooting

Nginx ingress and 413 responses

If you're using the Nginx ingress controller and encounter 413 errors from Nginx when uploading sessions, add this annotation to your ingress annotations:

nginx.ingress.kubernetes.io/proxy-body-size: 4096m

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •