apiVersion: v1
kind: Secret
metadata:
  name: hub-config
type: Opaque
stringData:
  hub.yaml: |-
    log:
      level: {{ .Values.log.level }}
      pretty: {{ .Values.log.pretty }}
    db:
      host: {{ default (printf "%s-postgresql.%s" .Release.Name .Release.Namespace) .Values.db.host }}
      port: {{ .Values.db.port }}
      database: {{ .Values.db.database }}
      user: {{ .Values.db.user }}
      password: {{ .Values.db.password }}
    server:
      allowPrivateRepositories: {{ .Values.hub.server.allowPrivateRepositories }}
      baseURL: {{ .Values.hub.server.baseURL }}
      shutdownTimeout: {{ .Values.hub.server.shutdownTimeout }}
      addr: 0.0.0.0:8000
      metricsAddr: 0.0.0.0:8001
      shutdownTimeout: 30s
      webBuildPath: ./web
      basicAuth:
        enabled: {{ .Values.hub.server.basicAuth.enabled }}
        username: {{ .Values.hub.server.basicAuth.username }}
        password: {{ .Values.hub.server.basicAuth.password }}
      cookie:
        hashKey: {{ .Values.hub.server.cookie.hashKey }}
        secure: {{ .Values.hub.server.cookie.secure }}
      oauth:
        github:
          clientID: {{ .Values.hub.server.oauth.github.clientID }}
          clientSecret: {{ .Values.hub.server.oauth.github.clientSecret }}
          redirectURL: {{ .Values.hub.server.oauth.github.redirectURL }}
          scopes: {{ .Values.hub.server.oauth.github.scopes }}
        google:
          clientID: {{ .Values.hub.server.oauth.google.clientID }}
          clientSecret: {{ .Values.hub.server.oauth.google.clientSecret }}
          redirectURL: {{ .Values.hub.server.oauth.google.redirectURL }}
          scopes: {{ .Values.hub.server.oauth.google.scopes }}
      xffIndex: {{ .Values.hub.server.xffIndex }}
    email:
      fromName: {{ .Values.hub.email.fromName }}
      from: {{ .Values.hub.email.from }}
      replyTo: {{ .Values.hub.email.replyTo }}
      smtp:
        host: {{ .Values.hub.email.smtp.host }}
        port: {{ .Values.hub.email.smtp.port }}
        username: {{ .Values.hub.email.smtp.username }}
        password: {{ .Values.hub.email.smtp.password }}
    analytics:
      gaTrackingID: {{ .Values.hub.analytics.gaTrackingID }}
