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
6 changes: 3 additions & 3 deletions charts/mint/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -263,19 +263,19 @@ A Helm chart for MINT
| components.ui.ingress.tls | list | `[]` | |
| components.ui.resources | object | `{}` | Resource specifications for UI |
| components.ui_react.config.auth_callback_origin | string | `""` | Origin to use for the OAuth2 callback. Leave empty to use the deployment's own origin, which is correct for a real cluster host. |
| components.ui_react.config.client_id | string | `""` | OAuth2 client ID for the React UI. Required when this component is enabled. The identity provider allows one callback URL per client, so this must be the client whose callback URL is this deployment's own origin. Where the React UI takes over the legacy UI's host, that is the legacy UI's own client -- the two never serve the origin at once. |
| components.ui_react.config.client_id | string | `"mint-local"` | OAuth2 client ID for the React UI. Defaults to the `mint-local` client, whose callback URL is the `mint.local` development host, and which `auth.client_id` already uses for the legacy UI. Every other deployment must override it: the identity provider allows one callback URL per client, so this must be the client whose callback URL is this deployment's own origin. Where the React UI takes over the legacy UI's host, that is the legacy UI's own client -- the two never serve the origin at once. |
| components.ui_react.config.data_catalog_api | string | `""` | Overrides the data catalog API URL. Left empty, an enabled `external_services.ckan` supplies it -- as it does for the legacy UI -- and the `data_catalog` component's ingress is the last resort. |
| components.ui_react.config.ensemble_manager_api | string | `""` | Overrides the ensemble manager API URL |
| components.ui_react.config.execution_engine | string | `""` | Overrides the execution engine the React UI submits runs to. Leave empty to inherit `components.ensemble_manager.config.execution_engine.type`, which is the engine this chart configures the Ensemble Manager to run and the same value the legacy UI is given. Set this only to point the React UI at a different engine than this chart's Ensemble Manager. |
| components.ui_react.config.hasura_endpoint | string | `""` | Overrides the Hasura GraphQL endpoint URL |
| components.ui_react.enabled | bool | `false` | Enable or disable the React UI. Deployed alongside the legacy `ui` component rather than replacing it; the cutover is a separate decision. Disabled by default because enabling it requires an OAuth2 client registered with the identity provider, and rendering fails without one. |
| components.ui_react.enabled | bool | `true` | Enable or disable the React UI. Deployed alongside the legacy `ui` component rather than replacing it; the cutover is a separate decision. |
| components.ui_react.image.pullPolicy | string | `"Always"` | Image pull policy for the React UI |
| components.ui_react.image.repository | string | `"ghcr.io/mintproject/mint-ui-react"` | Docker image repository for the React UI |
| components.ui_react.image.tag | string | `""` | Docker image tag for the React UI. Empty by default, so `global.imageTag` applies. |
| components.ui_react.ingress.annotations | object | `{}` | |
| components.ui_react.ingress.className | string | `""` | |
| components.ui_react.ingress.enabled | bool | `true` | Enable or disable ingress for the React UI |
| components.ui_react.ingress.hosts[0].host | string | `"next.mint.local"` | |
| components.ui_react.ingress.hosts[0].host | string | `"mint.local"` | |
| components.ui_react.ingress.hosts[0].paths[0].path | string | `"/"` | |
| components.ui_react.ingress.hosts[0].paths[0].pathType | string | `"ImplementationSpecific"` | |
| components.ui_react.ingress.tls | list | `[]` | |
Expand Down
2 changes: 1 addition & 1 deletion charts/mint/templates/ingress-ui.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{{- if .Values.components.ui.ingress.enabled -}}
{{- if and .Values.components.ui.enabled .Values.components.ui.ingress.enabled -}}
{{- $fullName := include "mint.prefix" . -}}
{{- $svcPort := .Values.service.port -}}
{{- if and .Values.components.ui.ingress.className (not (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion)) }}
Expand Down
2 changes: 1 addition & 1 deletion charts/mint/templates/ui-react-config.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{{- if .Values.components.ui_react.enabled }}
{{- $cfg := .Values.components.ui_react.config }}
{{- if not $cfg.client_id }}
{{- fail "components.ui_react.config.client_id is required when components.ui_react.enabled is true. An identity provider allows one callback URL per client, so the client set here must be the one whose callback URL is this deployment's own origin. Where the React UI takes over the legacy UI's host, that is the legacy UI's client -- the two never serve the origin at once. Register or reuse a client for this deployment's host and set components.ui_react.config.client_id." }}
{{- fail "components.ui_react.config.client_id must not be empty when components.ui_react.enabled is true. An identity provider allows one callback URL per client, so the client set here must be the one whose callback URL is this deployment's own origin. Where the React UI takes over the legacy UI's host, that is the legacy UI's client -- the two never serve the origin at once. Register or reuse a client for this deployment's host and set components.ui_react.config.client_id." }}
{{- end }}
{{- /*
CKAN base URL for this deployment, when it is an external CKAN rather than the
Expand Down
26 changes: 14 additions & 12 deletions charts/mint/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -428,9 +428,7 @@ components:
ui_react:
# -- Enable or disable the React UI. Deployed alongside the legacy `ui`
# component rather than replacing it; the cutover is a separate decision.
# Disabled by default because enabling it requires an OAuth2 client
# registered with the identity provider, and rendering fails without one.
enabled: false
enabled: true
image:
# -- Docker image repository for the React UI
repository: ghcr.io/mintproject/mint-ui-react
Expand All @@ -442,12 +440,15 @@ components:
# -- Resource specifications for the React UI
resources: {}
config:
# -- OAuth2 client ID for the React UI. Required when this component is
# enabled. The identity provider allows one callback URL per client, so
# this must be the client whose callback URL is this deployment's own
# origin. Where the React UI takes over the legacy UI's host, that is the
# legacy UI's own client -- the two never serve the origin at once.
client_id: ""
# -- OAuth2 client ID for the React UI. Defaults to the `mint-local`
# client, whose callback URL is the `mint.local` development host, and
# which `auth.client_id` already uses for the legacy UI. Every other
# deployment must override it: the identity provider allows one callback
# URL per client, so this must be the client whose callback URL is this
# deployment's own origin. Where the React UI takes over the legacy UI's
# host, that is the legacy UI's own client -- the two never serve the
# origin at once.
client_id: mint-local
# -- Origin to use for the OAuth2 callback. Leave empty to use the
# deployment's own origin, which is correct for a real cluster host.
auth_callback_origin: ""
Expand Down Expand Up @@ -475,9 +476,10 @@ components:
className: ""
annotations: {}
hosts:
# Its own host rather than a path prefix on the legacy UI's: the
# application is built to be served from the root.
- host: next.mint.local
# The legacy UI's own host. `ui` is off by default, so the two never
# contend for it, and the default `mint-local` client's callback URL
# is this origin. Serve both at once and one of them must move.
- host: mint.local
paths:
- path: /
pathType: ImplementationSpecific
Expand Down
Loading
Loading