mirror of
https://github.com/NVIDIA/OpenShell.git
synced 2026-10-22 06:19:47 +08:00
* feat(helm): add generic gateway TOML serializer Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * docs(architecture): define Helm gateway configuration boundary Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * feat(helm): define default gateway configuration map Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * refactor(helm): render gateway config from values map Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * test(helm): cover generic gateway TOML rendering Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * feat(helm): protect gateway config secret boundary Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * docs(helm): classify legacy gateway configuration values Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * refactor(helm): derive dual-use resources from gateway config Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * test(helm): migrate gateway config scenarios Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * refactor(helm): derive credential resources from gateway config Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * refactor(helm): migrate gateway config overlays Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * refactor(helm): remove gateway configuration shadow values Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * refactor(helm): align runtime config with resources Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * docs(helm): add gateway config migration guide Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * test(helm): validate rendered gateway config Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * test(helm): cover config resource coherence Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * fix(helm): make Kubernetes E2E deployable Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * fix(e2e): pass host aliases through gateway config Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * docs(e2e): reference gateway config host alias Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * fix(helm): enforce gateway resource ownership Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * test(e2e): cover chart host gateway input Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * fix(helm): address gateway config review findings Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * fix(helm): repair RFC 0012 migration integration Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * fix(e2e): align Kubernetes parity with RFC 0012 Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * fix(helm): complete gateway config migration Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * chore(helm): add SPDX header to TOML template * fix(helm): preserve legacy gateway configuration aliases Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * fix(helm): complete legacy gateway config compatibility Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * feat(helm): support gateway config arrays of tables * fix(helm): preserve sandbox identity aliases * fix(helm): address gateway config review findings Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> * fix(helm): preserve gateway config migration settings Signed-off-by: Taylor Mutch <taylormutch@gmail.com> * test(helm): validate extension arrays in CI values Signed-off-by: Taylor Mutch <taylormutch@gmail.com> * fix(helm): restore unconditional SPDX headers Signed-off-by: Taylor Mutch <taylormutch@gmail.com> * fix(helm): restore route SPDX header placement Signed-off-by: Taylor Mutch <taylormutch@gmail.com> * docs(helm): simplify configuration and migration examples Signed-off-by: Taylor Mutch <taylormutch@gmail.com> * docs(helm): remove redundant flag explanations Signed-off-by: Taylor Mutch <taylormutch@gmail.com> * docs(helm): move chart configuration guidance to Kubernetes setup Signed-off-by: Taylor Mutch <taylormutch@gmail.com> --------- Signed-off-by: Gaizka Menendez Hernandez <gmenende@redhat.com> Signed-off-by: Taylor Mutch <taylormutch@gmail.com> Co-authored-by: Taylor Mutch <taylormutch@gmail.com>
44 lines
1.9 KiB
YAML
44 lines
1.9 KiB
YAML
# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
# OIDC configuration overlay for a local Keycloak instance in k3s.
|
|
#
|
|
# Run the setup task first (rerun it to rotate the development CA):
|
|
# mise run keycloak:k8s:setup
|
|
#
|
|
# Then layer this file on top of values.yaml when deploying:
|
|
# helm upgrade --install openshell . \
|
|
# -f values.yaml -f ci/values-skaffold.yaml -f ci/values-keycloak.yaml
|
|
#
|
|
# Or add this file to skaffold.yaml valuesFiles for iterative dev.
|
|
#
|
|
# Issuer note: the setup task configures Keycloak with KC_HOSTNAME set to the
|
|
# in-cluster service hostname, so tokens always carry that hostname as `iss`
|
|
# regardless of how they were obtained (e.g. via a localhost port-forward).
|
|
# The gateway fetches JWKS over TLS from this URL inside the cluster. The setup
|
|
# task creates the Keycloak development CA ConfigMap referenced below.
|
|
#
|
|
# CLI token acquisition: keep a port-forward running while using openshell login:
|
|
# kubectl -n keycloak port-forward svc/keycloak 9090:80
|
|
|
|
gatewayConfig:
|
|
openshell.gateway.oidc:
|
|
# Must match KC_HOSTNAME set by keycloak:k8s:setup (in-cluster service hostname).
|
|
issuer: "https://keycloak.keycloak.svc.cluster.local:443/realms/openshell"
|
|
# Must match the client ID in the imported realm (openshell-cli).
|
|
audience: "openshell-cli"
|
|
# Short TTL for dev so JWKS key rotation is picked up quickly.
|
|
# Use 3600 (default) in production.
|
|
jwks_ttl_secs: 60
|
|
# Keycloak puts realm roles at realm_access.roles in the JWT.
|
|
roles_claim: "realm_access.roles"
|
|
# Leave both empty for authentication-only mode (any valid token is accepted).
|
|
admin_role: "openshell-admin"
|
|
user_role: "openshell-user"
|
|
|
|
# This is a Kubernetes ConfigMap mounted by the chart, not a gateway TOML
|
|
# field, so it remains a chart-owned resource reference.
|
|
server:
|
|
oidc:
|
|
caConfigMapName: "openshell-keycloak-ca"
|