Tested artifacts:
- SolAr chart:
0.0.0-pr.729.5c911b7
- SolAr chart digest:
sha256:ba6cf319791518f741031f6522ea52bf31fdb3c7272e4d5acbaaa127b71d1a2b
- Discovery chart:
0.0.0-pr.729.5c911b7
- Discovery chart digest:
sha256:f060e926f576e656fff02546b5f674f9a080b412e55e467cbaf4b71b3e0b156f
- Kubernetes runtime used for validation:
v1.33.5
Summary
solar-ui supports operation without OIDC:
If no --oidc-issuer argument is configured, the server selects auth.NewNoopProvider().
The Helm chart nevertheless requires OIDC values whenever ui.enabled=true and always renders OIDC arguments 🤷🏻♂️
This prevents users from selecting the existing no-OIDC mode through Helm.
The chart template currently renders mandatory values:
- --oidc-issuer={{ required "ui.oidc.issuer is required when ui.enabled=true" .Values.ui.oidc.issuer }}
- --oidc-client-id={{ .Values.ui.oidc.clientID }}
- --oidc-redirect-url={{ required "ui.oidc.redirectURL is required when ui.enabled=true" .Values.ui.oidc.redirectURL }}
Reproduction
Just Enable the UI without configuring an OIDC issuer:
ui:
enabled: true
oidc:
issuer: ""
redirectURL: ""
Render the chart:
helm template solar ./charts/solar --set ui.enabled=true
Actual behavior
Helm rendering fails because ui.oidc.issuer and ui.oidc.redirectURL are
required.
Supplying placeholder values makes the chart render, but the UI then attempts OIDC discovery and exits when the placeholder issuer is unreachable.
Expected behavior
When ui.enabled=true and ui.oidc.issuer is empty, the Deployment should omit all --oidc-* arguments and allow the binary to use NoopProvider 🤔 ?
Suggested fix
- Render OIDC arguments only when
ui.oidc.issuer is non-empty.
- Require
redirectURL only inside that OIDC-enabled branch.
- please add Helm rendering tests for UI with and without OIDC :)
Tested artifacts:
0.0.0-pr.729.5c911b7sha256:ba6cf319791518f741031f6522ea52bf31fdb3c7272e4d5acbaaa127b71d1a2b0.0.0-pr.729.5c911b7sha256:f060e926f576e656fff02546b5f674f9a080b412e55e467cbaf4b71b3e0b156fv1.33.5Summary
solar-uisupports operation without OIDC:If no
--oidc-issuerargument is configured, the server selectsauth.NewNoopProvider().The Helm chart nevertheless requires OIDC values whenever
ui.enabled=trueand always renders OIDC arguments 🤷🏻♂️This prevents users from selecting the existing no-OIDC mode through Helm.
The chart template currently renders mandatory values:
Reproduction
Just Enable the UI without configuring an OIDC issuer:
Render the chart:
Actual behavior
Helm rendering fails because
ui.oidc.issuerandui.oidc.redirectURLarerequired.
Supplying placeholder values makes the chart render, but the UI then attempts OIDC discovery and exits when the placeholder issuer is unreachable.
Expected behavior
When
ui.enabled=trueandui.oidc.issueris empty, the Deployment should omit all--oidc-*arguments and allow the binary to useNoopProvider🤔 ?Suggested fix
ui.oidc.issueris non-empty.redirectURLonly inside that OIDC-enabled branch.