Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions charts/oecs-hub/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ apiVersion: v2
name: oecs-hub
description: OECS hub - gRPC registry service for EV charger/manufacturer data
type: application
version: 0.1.5
appVersion: "0.7.0"
version: 0.1.6
appVersion: "0.11.0"
kubeVersion: ">=1.27.0-0"
home: https://github.com/ChargePi/oecs-registry
sources:
Expand Down
1 change: 1 addition & 0 deletions charts/oecs-hub/templates/_helpers.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,7 @@ Remaining sensitive env vars (redis/memgraph/profiling), always sourced per the
{{ include "oecs-hub.secretEnv" (dict "envName" "OECS_HUB_OBSERVABILITY_PROFILING_PASSWORD" "spec" .Values.secrets.profiling.password "defaultSecretName" (include "oecs-hub.secretName" .)) }}
{{ include "oecs-hub.secretEnv" (dict "envName" "OECS_HUB_OBSERVABILITY_PROFILING_AUTHTOKEN" "spec" .Values.secrets.profiling.authToken "defaultSecretName" (include "oecs-hub.secretName" .)) }}
{{ include "oecs-hub.secretEnv" (dict "envName" "OECS_HUB_AUTH_GATEWAY_SECRET" "spec" .Values.secrets.auth.gatewaySecret "defaultSecretName" (include "oecs-hub.secretName" .)) }}
{{ include "oecs-hub.secretEnv" (dict "envName" "OECS_HUB_BIFROST_APIKEY" "spec" .Values.secrets.bifrost.apiKey "defaultSecretName" (include "oecs-hub.secretName" .)) }}
{{- end -}}

{{/*
Expand Down
7 changes: 7 additions & 0 deletions charts/oecs-hub/templates/configmap.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,13 @@ data:
address: {{ include "oecs-hub.memgraphAddress" . | quote }}
kratos:
adminUrl: {{ .Values.kratos.adminUrl | quote }}
bifrost:
baseUrl: {{ .Values.bifrost.baseUrl | quote }}
model: {{ .Values.bifrost.model | quote }}
promptSuggestions:
refreshInterval: {{ .Values.config.promptSuggestions.refreshInterval | quote }}
poolSize: {{ .Values.config.promptSuggestions.poolSize }}
returnCount: {{ .Values.config.promptSuggestions.returnCount }}
observability:
logging:
level: {{ .Values.config.observability.logging.level | quote }}
Expand Down
3 changes: 3 additions & 0 deletions charts/oecs-hub/templates/secret.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,9 @@
{{- if and $secrets.profiling.authToken.value (not $secrets.profiling.authToken.existingSecret) }}
{{- $_ := set $data $secrets.profiling.authToken.existingSecretKey $secrets.profiling.authToken.value }}
{{- end }}
{{- if and $secrets.bifrost.apiKey.value (not $secrets.bifrost.apiKey.existingSecret) }}
{{- $_ := set $data $secrets.bifrost.apiKey.existingSecretKey $secrets.bifrost.apiKey.value }}
{{- end }}
{{- if $data }}
apiVersion: v1
kind: Secret
Expand Down
22 changes: 22 additions & 0 deletions charts/oecs-hub/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,14 @@ config:
profiling:
enabled: false
address: ""
# Chat empty state's suggested-prompt chips (internal/promptsuggestion).
promptSuggestions:
# How long a topic's cached pool stays fresh before the next request regenerates it.
refreshInterval: 30m
# How many distinct suggestions are generated and cached per topic on each regeneration.
poolSize: 10
# How many of a topic's cached pool are randomly sampled and returned per request.
returnCount: 1

## -- Sensitive values. Each field supports either an inline `value` (chart creates/owns a
## Secret key for it) or `existingSecret`/`existingSecretKey` to source it from a Secret you
Expand Down Expand Up @@ -174,13 +182,27 @@ secrets:
value: ""
existingSecret: ""
existingSecretKey: "gateway-secret"
bifrost:
# Bifrost virtual key (sk-bf-...), sent as the Bearer token. Leave empty if Bifrost
# governance is disabled.
apiKey:
value: ""
existingSecret: ""
existingSecretKey: "bifrost-api-key"

## -- Auth edge: proves a request was routed through Traefik/Oathkeeper (see
## secrets.auth.gatewaySecret above) and where to look up identity traits
## Oathkeeper doesn't forward as headers. --
kratos:
adminUrl: ""

## -- Bifrost (OpenAI-API-compatible LLM gateway), used for prompt suggestions. Not bundled -
## point baseUrl at an existing instance. API key lives under secrets.bifrost.apiKey. --
bifrost:
baseUrl: "http://bifrost:8080/v1"
# Bifrost's "provider/model" form.
model: "gemini/gemini-3.1-flash-lite"

## -- PostgreSQL. When internal.enabled, a CloudNativePG `Cluster` is created and this chart
## automatically points the app at the generated `<fullname>-postgresql-app` Secret's `uri` key,
## ignoring secrets.database.dsn. When disabled, set secrets.database.dsn yourself. --
Expand Down
Loading