From 83f1a81ac7b15d83f69b65bd5c8172c352a7071f Mon Sep 17 00:00:00 2001 From: Philip Meier Date: Thu, 2 Jul 2026 14:46:22 +0200 Subject: [PATCH 1/9] depend on nebari-app chart --- helm/nebari-chat/Chart.lock | 7 +- helm/nebari-chat/Chart.yaml | 8 +- helm/nebari-chat/templates/_helpers.tpl | 120 ++---------------- .../templates/nebariapp-backend.yaml | 12 -- .../templates/nebariapp-frontend.yaml | 12 -- .../templates/nebariapp-namespace.yaml | 8 -- helm/nebari-chat/templates/nebariapp.yaml | 34 +++++ helm/nebari-chat/values.schema.json | 12 +- helm/nebari-chat/values.yaml | 4 +- 9 files changed, 62 insertions(+), 155 deletions(-) delete mode 100644 helm/nebari-chat/templates/nebariapp-backend.yaml delete mode 100644 helm/nebari-chat/templates/nebariapp-frontend.yaml delete mode 100644 helm/nebari-chat/templates/nebariapp-namespace.yaml create mode 100644 helm/nebari-chat/templates/nebariapp.yaml diff --git a/helm/nebari-chat/Chart.lock b/helm/nebari-chat/Chart.lock index 6c2d3ba..f8a6ee6 100644 --- a/helm/nebari-chat/Chart.lock +++ b/helm/nebari-chat/Chart.lock @@ -2,5 +2,8 @@ dependencies: - name: ravnar repository: oci://quay.io/nebari/charts version: 0.0.10 -digest: sha256:16e9b54afd12cde72ab68e652f10a7e2e87b3bc9f59e7f7f03676e2761607301 -generated: "2026-06-17T09:00:17.172822057+02:00" +- name: nebari-app + repository: file://../../../nebari-operator/charts/nebari-app + version: 0.1.0 +digest: sha256:0610b6475dddc0e46eac759504f05beb275db5dc9f41f4ff62179b6893420fa6 +generated: "2026-07-02T14:49:59.075241316+02:00" diff --git a/helm/nebari-chat/Chart.yaml b/helm/nebari-chat/Chart.yaml index 3e069d5..c557e69 100644 --- a/helm/nebari-chat/Chart.yaml +++ b/helm/nebari-chat/Chart.yaml @@ -2,8 +2,8 @@ apiVersion: v2 name: nebari-chat type: application description: chat pack for nebari -version: "set-by-cd" -appVersion: "set-by-cd" +version: "0.0.0" +appVersion: "0.0.0" keywords: - nebari home: https://github.com/nebari-dev/nebari-chat-pack @@ -17,3 +17,7 @@ dependencies: - name: ravnar repository: oci://quay.io/nebari/charts version: "0.0.10" + - name: nebari-app + repository: file://../../../nebari-operator/charts/nebari-app + # repository: oci://quay.io/nebari/charts + version: "0.1.0" diff --git a/helm/nebari-chat/templates/_helpers.tpl b/helm/nebari-chat/templates/_helpers.tpl index bb1ec10..535dc92 100644 --- a/helm/nebari-chat/templates/_helpers.tpl +++ b/helm/nebari-chat/templates/_helpers.tpl @@ -2,119 +2,17 @@ NebariApp helper template. Expects a dict with keys: top, component, service, nebariapp */}} -{{- define "nebari-chat.nebariapp" -}} +{{- define "nebari-chat.nebariApp" -}} {{- $top := .top -}} {{- $component := .component -}} -{{- $service := .service -}} -{{- $nebariapp := .nebariapp -}} -apiVersion: reconcilers.nebari.dev/v1 -kind: NebariApp -metadata: - name: {{ include "ravnar.component-name" (dict "top" $top "component" $component) }} - namespace: {{ $top.Release.Namespace }} - labels: - {{- include "ravnar.labels" (dict "top" $top "component" $component) | nindent 4 }} -spec: - hostname: {{ required (printf "%s.nebariapp.hostname is required" $component) $nebariapp.hostname }} - service: - name: {{ $service.name }} - port: {{ $service.port }} - {{- with $service.namespace }} - namespace: {{ . }} - {{- end }} - {{- with $nebariapp.serviceAccountName }} - serviceAccountName: {{ . }} - {{- end }} - {{- with $nebariapp.routing }} - routing: - {{- toYaml . | nindent 4 }} - {{- end }} - {{- with $nebariapp.auth }} - auth: - enabled: {{ .enabled }} - provider: {{ .provider }} - provisionClient: {{ .provisionClient }} - enforceAtGateway: {{ .enforceAtGateway }} - redirectURI: {{ .redirectURI }} - {{- with .clientSecretRef }} - clientSecretRef: {{ . }} - {{- end }} - {{- with .scopes }} - scopes: - {{- toYaml . | nindent 6 }} - {{- end }} - {{- with .groups }} - groups: - {{- toYaml . | nindent 6 }} - {{- end }} - {{- with .forwardAccessToken }} - forwardAccessToken: {{ . }} - {{- end }} - {{- with .denyRedirect }} - denyRedirect: - {{- toYaml . | nindent 6 }} - {{- end }} - {{- with .issuerURL }} - issuerURL: {{ . }} - {{- end }} - {{- with .spaClient }} - spaClient: - {{- toYaml . | nindent 6 }} - {{- end }} - {{- with .deviceFlowClient }} - deviceFlowClient: - {{- toYaml . | nindent 6 }} - {{- end }} - {{- with .keycloakConfig }} - keycloakConfig: - {{- toYaml . | nindent 6 }} - {{- end }} - {{- with .tokenExchange }} - tokenExchange: - {{- toYaml . | nindent 6 }} - {{- end }} - {{- end }} - {{- with $nebariapp.gateway }} - gateway: {{ . }} - {{- end }} - {{- with .nebariapp.landingPage }} - landingPage: - enabled: {{ .enabled | default false }} - {{- with .displayName }} - displayName: {{ . | quote }} - {{- end }} - {{- with .description }} - description: {{ . | quote }} - {{- end }} - {{- with .icon }} - icon: {{ . | quote }} - {{- end }} - {{- with .category }} - category: {{ . | quote }} - {{- end }} - {{- if kindIs "float64" .priority }} - priority: {{ .priority }} - {{- end }} - {{- with .externalUrl }} - externalUrl: {{ . | quote }} - {{- end }} - {{- with .healthCheck }} - healthCheck: - enabled: {{ .enabled | default false }} - {{- with .path }} - path: {{ . | quote }} - {{- end }} - {{- if .intervalSeconds }} - intervalSeconds: {{ .intervalSeconds }} - {{- end }} - {{- if .timeoutSeconds }} - timeoutSeconds: {{ .timeoutSeconds }} - {{- end }} - {{- if .port }} - port: {{ .port }} - {{- end }} - {{- end }} - {{- end }} +{{- include "nebari-app.nebariApp" (dict + "metadata" (dict + "name" (include "ravnar.component-name" (dict "top" $top "component" $component)) + "namespace" $top.Release.Namespace + "labels" (include "ravnar.labels" (dict "top" $top "component" $component) | fromYaml) + ) + "spec" .spec +) -}} {{- end -}} {{/* diff --git a/helm/nebari-chat/templates/nebariapp-backend.yaml b/helm/nebari-chat/templates/nebariapp-backend.yaml deleted file mode 100644 index 5e86a34..0000000 --- a/helm/nebari-chat/templates/nebariapp-backend.yaml +++ /dev/null @@ -1,12 +0,0 @@ -{{- $component := "backend" }} -{{- with include "nebari-chat.ravnarContextJson" . | fromJson }} -{{- include "nebari-chat.nebariapp" (dict - "top" $ - "component" $component - "service" (dict - "name" (include "ravnar.fullname" .) - "port" .Values.service.port - ) - "nebariapp" $.Values.backend.nebariapp -) }} -{{- end }} diff --git a/helm/nebari-chat/templates/nebariapp-frontend.yaml b/helm/nebari-chat/templates/nebariapp-frontend.yaml deleted file mode 100644 index 12e6ae0..0000000 --- a/helm/nebari-chat/templates/nebariapp-frontend.yaml +++ /dev/null @@ -1,12 +0,0 @@ -{{- if .Values.frontend.enabled }} -{{- $component := "frontend" }} -{{- include "nebari-chat.nebariapp" (dict - "top" . - "component" $component - "service" (dict - "name" (include "ravnar.component-name" (dict "top" . "component" $component)) - "port" .Values.frontend.service.port - ) - "nebariapp" .Values.frontend.nebariapp -) }} -{{- end }} diff --git a/helm/nebari-chat/templates/nebariapp-namespace.yaml b/helm/nebari-chat/templates/nebariapp-namespace.yaml deleted file mode 100644 index e6090cf..0000000 --- a/helm/nebari-chat/templates/nebariapp-namespace.yaml +++ /dev/null @@ -1,8 +0,0 @@ -{{- $component := "nebariapp" }} -apiVersion: v1 -kind: Namespace -metadata: - name: {{ .Release.Namespace }} - labels: - nebari.dev/managed: "true" - {{- include "ravnar.labels" (dict "top" . "component" $component) | nindent 4 }} diff --git a/helm/nebari-chat/templates/nebariapp.yaml b/helm/nebari-chat/templates/nebariapp.yaml new file mode 100644 index 0000000..4d98667 --- /dev/null +++ b/helm/nebari-chat/templates/nebariapp.yaml @@ -0,0 +1,34 @@ +{{- $component := "nebariapp" }} +apiVersion: v1 +kind: Namespace +metadata: + name: {{ .Release.Namespace }} + labels: + nebari.dev/managed: "true" + {{- include "ravnar.labels" (dict "top" . "component" $component) | nindent 4 }} +--- +{{- $component := "backend" }} +{{- with include "nebari-chat.ravnarContextJson" . | fromJson }} +{{- include "nebari-chat.nebariApp" (dict + "top" $ + "component" $component + "spec" (mergeOverwrite (dict + "service" (dict + "name" (include "ravnar.fullname" .) + "port" .Values.service.port + ) + ) $.Values.backend.nebariApp) +) }} +{{- end }} +--- +{{- $component := "frontend" }} +{{- include "nebari-chat.nebariApp" (dict + "top" $ + "component" $component + "spec" (mergeOverwrite (dict + "service" (dict + "name" (include "ravnar.component-name" (dict "top" . "component" $component)) + "port" .Values.frontend.service.port + ) + ) .Values.frontend.nebariApp) +) }} diff --git a/helm/nebari-chat/values.schema.json b/helm/nebari-chat/values.schema.json index 3cc24e1..3bef719 100644 --- a/helm/nebari-chat/values.schema.json +++ b/helm/nebari-chat/values.schema.json @@ -70,11 +70,11 @@ "backend": { "type": "object", "properties": { - "nebariapp": { - "$ref": "#/definitions/nebariapp" + "nebariApp": { + "$ref": "#/definitions/nebariApp" } }, - "required": ["nebariapp"] + "required": ["nebariApp"] }, "frontend": { "type": "object", @@ -185,14 +185,14 @@ } } }, - "nebariapp": { - "$ref": "#/definitions/nebariapp" + "nebariApp": { + "$ref": "#/definitions/nebariApp" } } } }, "definitions": { - "nebariapp": { + "nebariApp": { "type": "object", "properties": { "hostname": { diff --git a/helm/nebari-chat/values.yaml b/helm/nebari-chat/values.yaml index 7b98bc7..44505d4 100644 --- a/helm/nebari-chat/values.yaml +++ b/helm/nebari-chat/values.yaml @@ -30,7 +30,7 @@ ravnar: enabled: false backend: - nebariapp: + nebariApp: # -- The hostname for the backend NebariApp hostname: "" # -- Routing configuration for the backend NebariApp @@ -107,7 +107,7 @@ frontend: # -- The URL of the backend API. Auto-detected if not set url: "" - nebariapp: + nebariApp: # -- The hostname for the frontend NebariApp hostname: "" # -- Authentication configuration for the frontend NebariApp From 47c74a80baf934bd5b3ffc26dc970acef366754e Mon Sep 17 00:00:00 2001 From: Philip Meier Date: Mon, 17 Aug 2026 13:53:59 +0200 Subject: [PATCH 2/9] cleanup --- helm/nebari-chat/Chart.lock | 6 +- helm/nebari-chat/Chart.yaml | 7 +- helm/nebari-chat/values.schema.json | 267 +--------------------------- 3 files changed, 8 insertions(+), 272 deletions(-) diff --git a/helm/nebari-chat/Chart.lock b/helm/nebari-chat/Chart.lock index f8a6ee6..fe28741 100644 --- a/helm/nebari-chat/Chart.lock +++ b/helm/nebari-chat/Chart.lock @@ -3,7 +3,7 @@ dependencies: repository: oci://quay.io/nebari/charts version: 0.0.10 - name: nebari-app - repository: file://../../../nebari-operator/charts/nebari-app + repository: oci://quay.io/nebari/charts version: 0.1.0 -digest: sha256:0610b6475dddc0e46eac759504f05beb275db5dc9f41f4ff62179b6893420fa6 -generated: "2026-07-02T14:49:59.075241316+02:00" +digest: sha256:fdb6aecc0dc502cdd64fdf79e658e9945e373fdac4db644dad9e57e23f81fbde +generated: "2026-08-17T13:43:21.007090913+02:00" diff --git a/helm/nebari-chat/Chart.yaml b/helm/nebari-chat/Chart.yaml index c557e69..0a5e424 100644 --- a/helm/nebari-chat/Chart.yaml +++ b/helm/nebari-chat/Chart.yaml @@ -2,8 +2,8 @@ apiVersion: v2 name: nebari-chat type: application description: chat pack for nebari -version: "0.0.0" -appVersion: "0.0.0" +version: "set-by-cd" +appVersion: "set-by-cd" keywords: - nebari home: https://github.com/nebari-dev/nebari-chat-pack @@ -18,6 +18,5 @@ dependencies: repository: oci://quay.io/nebari/charts version: "0.0.10" - name: nebari-app - repository: file://../../../nebari-operator/charts/nebari-app - # repository: oci://quay.io/nebari/charts + repository: oci://quay.io/nebari/charts version: "0.1.0" diff --git a/helm/nebari-chat/values.schema.json b/helm/nebari-chat/values.schema.json index 3bef719..531376a 100644 --- a/helm/nebari-chat/values.schema.json +++ b/helm/nebari-chat/values.schema.json @@ -194,271 +194,8 @@ "definitions": { "nebariApp": { "type": "object", - "properties": { - "hostname": { - "type": "string", - "anyOf": [ - { "maxLength": 0 }, - { "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$" } - ] - }, - "serviceAccountName": { - "type": "string", - "minLength": 1 - }, - "routing": { - "type": "object", - "properties": { - "routes": { - "type": "array", - "items": { - "$ref": "#/definitions/routeMatch" - } - }, - "publicRoutes": { - "type": "array", - "items": { - "$ref": "#/definitions/routeMatch" - } - }, - "tls": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean" - } - } - }, - "annotations": { - "type": "object", - "additionalProperties": { - "type": "string" - } - } - } - }, - "auth": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean" - }, - "provider": { - "type": "string", - "enum": ["keycloak", "generic-oidc"] - }, - "redirectURI": { - "type": "string" - }, - "clientSecretRef": { - "type": "string" - }, - "scopes": { - "type": "array", - "items": { - "type": "string" - } - }, - "groups": { - "type": "array", - "items": { - "type": "string" - } - }, - "provisionClient": { - "type": "boolean" - }, - "enforceAtGateway": { - "type": "boolean" - }, - "forwardAccessToken": { - "type": "boolean" - }, - "denyRedirect": { - "type": "array", - "items": { - "$ref": "#/definitions/denyRedirectHeader" - } - }, - "issuerURL": { - "type": "string" - }, - "spaClient": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean" - }, - "clientId": { - "type": "string" - } - } - }, - "deviceFlowClient": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean" - } - } - }, - "keycloakConfig": { - "type": "object", - "properties": { - "groups": { - "type": "array", - "items": { - "$ref": "#/definitions/keycloakGroup" - } - }, - "protocolMappers": { - "type": "array", - "items": { - "$ref": "#/definitions/keycloakProtocolMapperConfig" - } - } - } - }, - "tokenExchange": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean" - } - } - } - } - }, - "gateway": { - "type": "string", - "enum": ["public", "internal"] - }, - "landingPage": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean" - }, - "displayName": { - "type": "string", - "maxLength": 64 - }, - "description": { - "type": "string", - "maxLength": 256 - }, - "icon": { - "type": "string" - }, - "category": { - "type": "string" - }, - "priority": { - "type": "integer", - "minimum": 0, - "maximum": 1000 - }, - "externalUrl": { - "type": "string" - }, - "healthCheck": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean" - }, - "path": { - "type": "string" - }, - "port": { - "type": "integer", - "minimum": 1, - "maximum": 65535 - }, - "intervalSeconds": { - "type": "integer", - "minimum": 10, - "maximum": 300 - }, - "timeoutSeconds": { - "type": "integer", - "minimum": 1, - "maximum": 30 - } - } - } - } - } - }, - "required": ["hostname"] - }, - "routeMatch": { - "type": "object", - "properties": { - "pathPrefix": { - "type": "string", - "pattern": "^/.*" - }, - "pathType": { - "type": "string", - "enum": ["PathPrefix", "Exact"] - } - }, - "required": ["pathPrefix"] - }, - "denyRedirectHeader": { - "type": "object", - "properties": { - "name": { - "type": "string", - "minLength": 1 - }, - "type": { - "type": "string", - "enum": ["Exact", "Prefix", "Suffix", "RegularExpression"] - }, - "value": { - "type": "string", - "minLength": 1 - } - }, - "required": ["name", "value"] - }, - "keycloakGroup": { - "type": "object", - "properties": { - "name": { - "type": "string", - "minLength": 1 - }, - "members": { - "type": "array", - "items": { - "type": "string" - } - } - }, - "required": ["name"] - }, - "keycloakProtocolMapperConfig": { - "type": "object", - "properties": { - "name": { - "type": "string", - "minLength": 1 - }, - "protocolMapper": { - "type": "string", - "minLength": 1 - }, - "config": { - "type": "object", - "additionalProperties": { - "type": "string" - } - } - }, - "required": ["name", "protocolMapper"] + "additionalProperties": true } + } } From 9bab3346f0d0093c80d055cc58999427930bf1e7 Mon Sep 17 00:00:00 2001 From: Philip Meier Date: Mon, 17 Aug 2026 14:05:52 +0200 Subject: [PATCH 3/9] cleanup --- helm/nebari-chat/values-debug.yaml | 106 ----------------------------- 1 file changed, 106 deletions(-) delete mode 100644 helm/nebari-chat/values-debug.yaml diff --git a/helm/nebari-chat/values-debug.yaml b/helm/nebari-chat/values-debug.yaml deleted file mode 100644 index c013a3c..0000000 --- a/helm/nebari-chat/values-debug.yaml +++ /dev/null @@ -1,106 +0,0 @@ -ravnar: - image: - tag: "main" - postgres: - password: - valueFrom: - secretKeyRef: - name: postgres-password - key: password - extraEnv: - OPENROUTER_API_KEY: - valueFrom: - secretKeyRef: - name: api-keys - key: openrouter - AUSTIN_PERMITS_DB_PASSWORD: - valueFrom: - secretKeyRef: - name: austin-permits-password - key: password - -keycloak: - url: "https://keycloak.nebari.openteams.ai" - -backend: - nebariApp: - hostname: "ravnar.nebari.openteams.ai" - -frontend: - image: - tag: "main" - nebariApp: - hostname: "chat.nebari.openteams.ai" - -config: - inline: - agents: - claude: - cls_or_fn: ravnar.agents.PydanticAiAgentWrapper - params: - agent: &pydantic-claude - cls_or_fn: pydantic_ai.Agent - params: - model: - cls_or_fn: pydantic_ai.models.openrouter.OpenRouterModel - params: - model_name: anthropic/claude-sonnet-4.6 - provider: - cls_or_fn: pydantic_ai.providers.openrouter.OpenRouterProvider - params: - api_key: '{{ include "ravnar.env.templateLiteral" "OPENROUTER_API_KEY" }}' - capabilities: - identity: - name: "Chat Agent (Claude Sonnet 4.6)" - provider: "OpenAI" - description: "Claude Sonnet 4.6 is a powerful language model developed by Anthropic." - gpt: - cls_or_fn: ravnar.agents.PydanticAiAgentWrapper - params: - agent: - cls_or_fn: pydantic_ai.Agent - params: - model: - cls_or_fn: pydantic_ai.models.openrouter.OpenRouterModel - params: - model_name: openai/gpt-5.5 - provider: - cls_or_fn: pydantic_ai.providers.openrouter.OpenRouterProvider - params: - api_key: '{{ include "ravnar.env.templateLiteral" "OPENROUTER_API_KEY" }}' - capabilities: - identity: - name: "Chat Agent (OpenAI GPT 5.5)" - provider: "OpenAI" - description: "GPT-5.5 is the latest iteration of OpenAI's Generative Pre-trained Transformer series." - nemo: - cls_or_fn: ravnar.agents.PydanticAiAgentWrapper - params: - agent: - cls_or_fn: pydantic_ai.Agent - params: - model: - cls_or_fn: pydantic_ai.models.openrouter.OpenRouterModel - params: - model_name: nvidia/nemotron-3-super-120b-a12b - provider: - cls_or_fn: pydantic_ai.providers.openrouter.OpenRouterProvider - params: - api_key: '{{ include "ravnar.env.templateLiteral" "OPENROUTER_API_KEY" }}' - capabilities: - identity: - name: "Chat Agent (NVidia Nemotrom 3 Super)" - provider: "OpenAI" - description: "NVIDIA NeMo is a powerful language model developed by NVIDIA." - permits-claude: - cls_or_fn: ravnar_nebari_chat.make_austin_permits_agent - params: - agent: *pydantic-claude - database_url: '{{ - printf "postgresql+psycopg://%s:%s@%s:%s/%s" - "postgres" - (include "ravnar.env.templateLiteral" "AUSTIN_PERMITS_DB_PASSWORD") - "35.239.102.65" - "5432" - "austin_permits" - -}}' From 0e9ab6c360589f565ff7e626a96c3e30ee013bad Mon Sep 17 00:00:00 2001 From: Philip Meier Date: Tue, 18 Aug 2026 09:32:09 +0200 Subject: [PATCH 4/9] cleanup --- helm/nebari-chat/templates/_helpers.tpl | 17 ----------------- helm/nebari-chat/templates/nebariapp.yaml | 16 ++++++++++++++-- 2 files changed, 14 insertions(+), 19 deletions(-) diff --git a/helm/nebari-chat/templates/_helpers.tpl b/helm/nebari-chat/templates/_helpers.tpl index 535dc92..538adf7 100644 --- a/helm/nebari-chat/templates/_helpers.tpl +++ b/helm/nebari-chat/templates/_helpers.tpl @@ -1,20 +1,3 @@ -{{/* -NebariApp helper template. -Expects a dict with keys: top, component, service, nebariapp -*/}} -{{- define "nebari-chat.nebariApp" -}} -{{- $top := .top -}} -{{- $component := .component -}} -{{- include "nebari-app.nebariApp" (dict - "metadata" (dict - "name" (include "ravnar.component-name" (dict "top" $top "component" $component)) - "namespace" $top.Release.Namespace - "labels" (include "ravnar.labels" (dict "top" $top "component" $component) | fromYaml) - ) - "spec" .spec -) -}} -{{- end -}} - {{/* Construct a JSON representation of the ravnar subchart context. Useful for evaluating ravnar templates that depend on subchart scope. diff --git a/helm/nebari-chat/templates/nebariapp.yaml b/helm/nebari-chat/templates/nebariapp.yaml index 4d98667..9936e37 100644 --- a/helm/nebari-chat/templates/nebariapp.yaml +++ b/helm/nebari-chat/templates/nebariapp.yaml @@ -1,3 +1,15 @@ +{{- define "nebariApp" -}} +{{- $top := .top -}} +{{- $component := .component -}} +{{- include "nebari-app.nebariApp" (dict + "metadata" (dict + "name" (include "ravnar.component-name" (dict "top" $top "component" $component)) + "namespace" $top.Release.Namespace + "labels" (include "ravnar.labels" (dict "top" $top "component" $component) | fromYaml) + ) + "spec" .spec +) -}} +{{- end -}} {{- $component := "nebariapp" }} apiVersion: v1 kind: Namespace @@ -9,7 +21,7 @@ metadata: --- {{- $component := "backend" }} {{- with include "nebari-chat.ravnarContextJson" . | fromJson }} -{{- include "nebari-chat.nebariApp" (dict +{{- include "nebariApp" (dict "top" $ "component" $component "spec" (mergeOverwrite (dict @@ -22,7 +34,7 @@ metadata: {{- end }} --- {{- $component := "frontend" }} -{{- include "nebari-chat.nebariApp" (dict +{{- include "nebariApp" (dict "top" $ "component" $component "spec" (mergeOverwrite (dict From 687f89c20e42cabd6fdee930693934a91ef51031 Mon Sep 17 00:00:00 2001 From: Philip Meier Date: Thu, 20 Aug 2026 09:12:44 +0200 Subject: [PATCH 5/9] address comments --- helm/nebari-chat/templates/nebariapp.yaml | 14 ++++++++------ helm/nebari-chat/values.schema.json | 12 ++++++------ helm/nebari-chat/values.yaml | 18 +++++++++--------- 3 files changed, 23 insertions(+), 21 deletions(-) diff --git a/helm/nebari-chat/templates/nebariapp.yaml b/helm/nebari-chat/templates/nebariapp.yaml index 9936e37..d2501df 100644 --- a/helm/nebari-chat/templates/nebariapp.yaml +++ b/helm/nebari-chat/templates/nebariapp.yaml @@ -1,4 +1,4 @@ -{{- define "nebariApp" -}} +{{- define "nebari-chat.nebariapp" -}} {{- $top := .top -}} {{- $component := .component -}} {{- include "nebari-app.nebariApp" (dict @@ -19,9 +19,9 @@ metadata: nebari.dev/managed: "true" {{- include "ravnar.labels" (dict "top" . "component" $component) | nindent 4 }} --- -{{- $component := "backend" }} +{{ $component := "backend" }} {{- with include "nebari-chat.ravnarContextJson" . | fromJson }} -{{- include "nebariApp" (dict +{{- include "nebari-chat.nebariapp" (dict "top" $ "component" $component "spec" (mergeOverwrite (dict @@ -29,12 +29,13 @@ metadata: "name" (include "ravnar.fullname" .) "port" .Values.service.port ) - ) $.Values.backend.nebariApp) + ) $.Values.backend.nebariapp) ) }} {{- end }} --- +{{ if .Values.frontend.enabled }} {{- $component := "frontend" }} -{{- include "nebariApp" (dict +{{- include "nebari-chat.nebariapp" (dict "top" $ "component" $component "spec" (mergeOverwrite (dict @@ -42,5 +43,6 @@ metadata: "name" (include "ravnar.component-name" (dict "top" . "component" $component)) "port" .Values.frontend.service.port ) - ) .Values.frontend.nebariApp) + ) .Values.frontend.nebariapp) ) }} +{{- end }} \ No newline at end of file diff --git a/helm/nebari-chat/values.schema.json b/helm/nebari-chat/values.schema.json index e7bab43..1869ee0 100644 --- a/helm/nebari-chat/values.schema.json +++ b/helm/nebari-chat/values.schema.json @@ -70,11 +70,11 @@ "backend": { "type": "object", "properties": { - "nebariApp": { - "$ref": "#/definitions/nebariApp" + "nebariapp": { + "$ref": "#/definitions/nebariapp" } }, - "required": ["nebariApp"] + "required": ["nebariapp"] }, "frontend": { "type": "object", @@ -213,8 +213,8 @@ } } }, - "nebariApp": { - "$ref": "#/definitions/nebariApp" + "nebariapp": { + "$ref": "#/definitions/nebariapp" } } } @@ -226,7 +226,7 @@ "type": "string" } }, - "nebariApp": { + "nebariapp": { "type": "object", "additionalProperties": true } diff --git a/helm/nebari-chat/values.yaml b/helm/nebari-chat/values.yaml index b20d006..8c08f1b 100644 --- a/helm/nebari-chat/values.yaml +++ b/helm/nebari-chat/values.yaml @@ -30,10 +30,10 @@ ravnar: enabled: false backend: - nebariApp: - # -- The hostname for the backend NebariApp + nebariapp: + # -- The hostname for the backend nebariapp hostname: "" - # -- Routing configuration for the backend NebariApp + # -- Routing configuration for the backend nebariapp routing: routes: - pathPrefix: / @@ -132,12 +132,12 @@ frontend: light: {} dark: {} - nebariApp: - # -- The hostname for the frontend NebariApp + nebariapp: + # -- The hostname for the frontend nebariapp hostname: "" - # -- Authentication configuration for the frontend NebariApp + # -- Authentication configuration for the frontend nebariapp auth: - # -- Whether authentication is enabled for the frontend NebariApp + # -- Whether authentication is enabled for the frontend nebariapp enabled: true # -- The OIDC authentication provider provider: keycloak @@ -156,12 +156,12 @@ frontend: spaClient: # -- Whether to provision a public OIDC client for SPA use enabled: true - # -- Routing configuration for the frontend NebariApp + # -- Routing configuration for the frontend nebariapp routing: routes: - pathPrefix: / pathType: PathPrefix - # -- Landing page configuration for the frontend NebariApp + # -- Landing page configuration for the frontend nebariapp landingPage: # -- Whether to show the service on the landing page enabled: true From 7b861b5612aaacedb7cd689198597b17088d9aec Mon Sep 17 00:00:00 2001 From: Philip Meier Date: Thu, 20 Aug 2026 11:12:38 +0200 Subject: [PATCH 6/9] tmp depend on dev version of chart --- helm/nebari-chat/Chart.lock | 8 +++--- helm/nebari-chat/Chart.yaml | 8 +++--- helm/nebari-chat/templates/nebariapp.yaml | 35 +++++++---------------- helm/nebari-chat/values.yaml | 12 ++++++-- 4 files changed, 29 insertions(+), 34 deletions(-) diff --git a/helm/nebari-chat/Chart.lock b/helm/nebari-chat/Chart.lock index 5134540..0e4811d 100644 --- a/helm/nebari-chat/Chart.lock +++ b/helm/nebari-chat/Chart.lock @@ -3,7 +3,7 @@ dependencies: repository: oci://quay.io/nebari/charts version: 0.0.11 - name: nebari-app - repository: oci://quay.io/nebari/charts - version: 0.1.0 -digest: sha256:60107a7b454ef6aa3accc6667ba2b3bba155fded7185cc9973442a12c9788d13 -generated: "2026-08-17T14:00:48.634702922+02:00" + repository: oci://quay.io/reiemp/charts + version: 0.1.1 +digest: sha256:c8841015566684d5585432a35523db06d8bda4554d9417b26c91a75d2ef5a1e3 +generated: "2026-08-20T11:11:02.402520997+02:00" diff --git a/helm/nebari-chat/Chart.yaml b/helm/nebari-chat/Chart.yaml index ab4e9c6..8633f2c 100644 --- a/helm/nebari-chat/Chart.yaml +++ b/helm/nebari-chat/Chart.yaml @@ -2,8 +2,8 @@ apiVersion: v2 name: nebari-chat type: application description: chat pack for nebari -version: "set-by-cd" -appVersion: "set-by-cd" +version: "0.0.0" +appVersion: "0.0.0" keywords: - nebari home: https://github.com/nebari-dev/nebari-chat-pack @@ -18,5 +18,5 @@ dependencies: repository: oci://quay.io/nebari/charts version: "0.0.11" - name: nebari-app - repository: oci://quay.io/nebari/charts - version: "0.1.0" + repository: oci://quay.io/reiemp/charts + version: "0.1.1" diff --git a/helm/nebari-chat/templates/nebariapp.yaml b/helm/nebari-chat/templates/nebariapp.yaml index d2501df..157a3bc 100644 --- a/helm/nebari-chat/templates/nebariapp.yaml +++ b/helm/nebari-chat/templates/nebariapp.yaml @@ -1,48 +1,35 @@ {{- define "nebari-chat.nebariapp" -}} {{- $top := .top -}} {{- $component := .component -}} +{{- $spec := .spec -}} {{- include "nebari-app.nebariApp" (dict "metadata" (dict "name" (include "ravnar.component-name" (dict "top" $top "component" $component)) "namespace" $top.Release.Namespace "labels" (include "ravnar.labels" (dict "top" $top "component" $component) | fromYaml) ) - "spec" .spec + "spec" $spec + "ctx" $top ) -}} {{- end -}} -{{- $component := "nebariapp" }} apiVersion: v1 kind: Namespace metadata: name: {{ .Release.Namespace }} labels: nebari.dev/managed: "true" - {{- include "ravnar.labels" (dict "top" . "component" $component) | nindent 4 }} + {{- include "ravnar.labels" (dict "top" . "component" "nebariapp") | nindent 4 }} --- -{{ $component := "backend" }} -{{- with include "nebari-chat.ravnarContextJson" . | fromJson }} -{{- include "nebari-chat.nebariapp" (dict - "top" $ - "component" $component - "spec" (mergeOverwrite (dict - "service" (dict - "name" (include "ravnar.fullname" .) - "port" .Values.service.port - ) - ) $.Values.backend.nebariapp) +{{ include "nebari-chat.nebariapp" (dict + "top" . + "component" "backend" + "spec" .Values.backend.nebariapp ) }} -{{- end }} --- {{ if .Values.frontend.enabled }} -{{- $component := "frontend" }} {{- include "nebari-chat.nebariapp" (dict - "top" $ - "component" $component - "spec" (mergeOverwrite (dict - "service" (dict - "name" (include "ravnar.component-name" (dict "top" . "component" $component)) - "port" .Values.frontend.service.port - ) - ) .Values.frontend.nebariapp) + "top" . + "component" "frontend" + "spec" .Values.frontend.nebariapp ) }} {{- end }} \ No newline at end of file diff --git a/helm/nebari-chat/values.yaml b/helm/nebari-chat/values.yaml index 8c08f1b..0bccdfb 100644 --- a/helm/nebari-chat/values.yaml +++ b/helm/nebari-chat/values.yaml @@ -32,7 +32,11 @@ ravnar: backend: nebariapp: # -- The hostname for the backend nebariapp - hostname: "" + hostname: '{{ fail "backend.nebariapp.hostname is required" }}' + # -- The service for the backend nebariapp + service: + name: '{{ include "ravnar.fullname" (include "nebari-chat.ravnarContextJson" . | fromJson) }}' + port: '{{ .Values.ravnar.service.port }}' # -- Routing configuration for the backend nebariapp routing: routes: @@ -134,7 +138,11 @@ frontend: nebariapp: # -- The hostname for the frontend nebariapp - hostname: "" + hostname: '{{ fail "if frontend.enabled, frontend.nebariapp.hostname is required" }}' + # -- The service for the frontend nebariapp + service: + name: '{{ include "ravnar.component-name" (dict "top" . "component" "frontend") }}' + port: '{{ .Values.frontend.service.port }}' # -- Authentication configuration for the frontend nebariapp auth: # -- Whether authentication is enabled for the frontend nebariapp From 1874e30d9ab1ba54849bdb24128d5f743ccb4160 Mon Sep 17 00:00:00 2001 From: Philip Meier Date: Thu, 20 Aug 2026 11:14:30 +0200 Subject: [PATCH 7/9] newlinw --- helm/nebari-chat/templates/nebariapp.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/helm/nebari-chat/templates/nebariapp.yaml b/helm/nebari-chat/templates/nebariapp.yaml index 157a3bc..357ed4d 100644 --- a/helm/nebari-chat/templates/nebariapp.yaml +++ b/helm/nebari-chat/templates/nebariapp.yaml @@ -32,4 +32,4 @@ metadata: "component" "frontend" "spec" .Values.frontend.nebariapp ) }} -{{- end }} \ No newline at end of file +{{- end }} From e7d647d4c1d3b92e9fd470df06a0372a54ffada4 Mon Sep 17 00:00:00 2001 From: Philip Meier Date: Wed, 26 Aug 2026 16:41:24 +0200 Subject: [PATCH 8/9] depend on next dev version --- helm/nebari-chat/Chart.lock | 6 +++--- helm/nebari-chat/Chart.yaml | 2 +- helm/nebari-chat/templates/nebariapp.yaml | 2 +- helm/nebari-chat/values.yaml | 4 ++-- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/helm/nebari-chat/Chart.lock b/helm/nebari-chat/Chart.lock index 0e4811d..fc9a29c 100644 --- a/helm/nebari-chat/Chart.lock +++ b/helm/nebari-chat/Chart.lock @@ -4,6 +4,6 @@ dependencies: version: 0.0.11 - name: nebari-app repository: oci://quay.io/reiemp/charts - version: 0.1.1 -digest: sha256:c8841015566684d5585432a35523db06d8bda4554d9417b26c91a75d2ef5a1e3 -generated: "2026-08-20T11:11:02.402520997+02:00" + version: 0.1.2 +digest: sha256:46cc2b87bd555cca2304ff747bb6026f91a3246549233c7ed5ba1b0f1f21cfd6 +generated: "2026-08-26T16:25:31.582473789+02:00" diff --git a/helm/nebari-chat/Chart.yaml b/helm/nebari-chat/Chart.yaml index 8633f2c..1008490 100644 --- a/helm/nebari-chat/Chart.yaml +++ b/helm/nebari-chat/Chart.yaml @@ -19,4 +19,4 @@ dependencies: version: "0.0.11" - name: nebari-app repository: oci://quay.io/reiemp/charts - version: "0.1.1" + version: "0.1.2" diff --git a/helm/nebari-chat/templates/nebariapp.yaml b/helm/nebari-chat/templates/nebariapp.yaml index 357ed4d..78ce1a2 100644 --- a/helm/nebari-chat/templates/nebariapp.yaml +++ b/helm/nebari-chat/templates/nebariapp.yaml @@ -9,7 +9,7 @@ "labels" (include "ravnar.labels" (dict "top" $top "component" $component) | fromYaml) ) "spec" $spec - "ctx" $top + "tplCtx" $top ) -}} {{- end -}} apiVersion: v1 diff --git a/helm/nebari-chat/values.yaml b/helm/nebari-chat/values.yaml index 0bccdfb..5616cf0 100644 --- a/helm/nebari-chat/values.yaml +++ b/helm/nebari-chat/values.yaml @@ -35,7 +35,7 @@ backend: hostname: '{{ fail "backend.nebariapp.hostname is required" }}' # -- The service for the backend nebariapp service: - name: '{{ include "ravnar.fullname" (include "nebari-chat.ravnarContextJson" . | fromJson) }}' + name: '{{ include "ravnar.fullname" (include "nebari-chat.ravnarContextJson" . | fromJson) | toJson }}' port: '{{ .Values.ravnar.service.port }}' # -- Routing configuration for the backend nebariapp routing: @@ -141,7 +141,7 @@ frontend: hostname: '{{ fail "if frontend.enabled, frontend.nebariapp.hostname is required" }}' # -- The service for the frontend nebariapp service: - name: '{{ include "ravnar.component-name" (dict "top" . "component" "frontend") }}' + name: '{{ include "ravnar.component-name" (dict "top" . "component" "frontend") | toJson }}' port: '{{ .Values.frontend.service.port }}' # -- Authentication configuration for the frontend nebariapp auth: From edfda347962f815f1d62957ec9f6a9206b5a5539 Mon Sep 17 00:00:00 2001 From: Philip Meier Date: Mon, 31 Aug 2026 17:12:54 +0200 Subject: [PATCH 9/9] final dev chart --- helm/nebari-chat/Chart.lock | 6 +++--- helm/nebari-chat/Chart.yaml | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/helm/nebari-chat/Chart.lock b/helm/nebari-chat/Chart.lock index fc9a29c..de0dea6 100644 --- a/helm/nebari-chat/Chart.lock +++ b/helm/nebari-chat/Chart.lock @@ -4,6 +4,6 @@ dependencies: version: 0.0.11 - name: nebari-app repository: oci://quay.io/reiemp/charts - version: 0.1.2 -digest: sha256:46cc2b87bd555cca2304ff747bb6026f91a3246549233c7ed5ba1b0f1f21cfd6 -generated: "2026-08-26T16:25:31.582473789+02:00" + version: 0.1.3 +digest: sha256:4c9732b7205a3f5077047412c6c388d4aa66d4552ee4836d92cb7ff407ded73d +generated: "2026-08-31T17:04:25.070075068+02:00" diff --git a/helm/nebari-chat/Chart.yaml b/helm/nebari-chat/Chart.yaml index 1008490..f1a322d 100644 --- a/helm/nebari-chat/Chart.yaml +++ b/helm/nebari-chat/Chart.yaml @@ -19,4 +19,4 @@ dependencies: version: "0.0.11" - name: nebari-app repository: oci://quay.io/reiemp/charts - version: "0.1.2" + version: "0.1.3"