helm: add Kubeflow Dashboard chart - #3524
Conversation
|
Welcome to the Kubeflow Community Distribution Repository Thanks for opening your first PR. Your contribution means a lot to the Kubeflow community. Before making more PRs: Community Resources:
Thanks again for helping to improve Kubeflow. |
There was a problem hiding this comment.
Pull request overview
Adds a co-located Helm wrapper chart for the Kubeflow Dashboard application and wires it into the existing Helm↔Kustomize render-parity validation and synchronization flow.
Changes:
- Introduce
applications/dashboard/helmas a static, scenario-gated Helm wrapper chart rendering the current Dashboardoverlays/istio(“platform”) install. - Extend Helm/Kustomize comparison scripts to include the new
kubeflow-dashboardcomponent and scenario. - Update the Dashboard synchronization script to also refresh the Helm chart
appVersionand regenerated staticplatform.yamltemplate; update the comparison workflow to install Helm 4.
Reviewed changes
Copilot reviewed 10 out of 11 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
tests/helm_kustomize_compare.sh |
Adds kubeflow-dashboard component wiring for parity comparison. |
tests/helm_kustomize_compare.py |
Allows kubeflow-dashboard as a supported component in the comparison tool. |
tests/helm_kustomize_compare_all.sh |
Adds kubeflow-dashboard to the “all” comparison matrix. |
scripts/synchronize-dashboard-manifests.sh |
Extends upstream sync automation to also refresh Helm chart metadata and static template output. |
applications/dashboard/helm/values.yaml |
Defines default chart values (scenario selection). |
applications/dashboard/helm/templates/validate.yaml |
Adds scenario validation to fail fast on unsupported values. |
applications/dashboard/helm/templates/platform.yaml |
Provides the static Kustomize-parity rendered payload for the “platform” scenario. |
applications/dashboard/helm/README.md |
Documents install shape, caveats, and parity validation commands. |
applications/dashboard/helm/ci/values-platform.yaml |
CI fixture values for the “platform” scenario. |
applications/dashboard/helm/Chart.yaml |
Introduces the Dashboard wrapper chart metadata. |
.github/workflows/helm-kustomize-comparison.yml |
Triggers parity CI for Dashboard changes and installs Helm v4.2.2 via setup action. |
c3c85e9 to
bd02c7a
Compare
6f08852 to
f193623
Compare
juliusvonkohout
left a comment
There was a problem hiding this comment.
You are missing the synchronization script changes
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
The synchronization script now updates |
a76d633 to
d4a53a6
Compare
96cc1b6 to
6e0faaa
Compare
|
@juliusvonkohout for review |
562e60b to
fcce26d
Compare
Signed-off-by: danish9039 <danishsiddiqui040@gmail.com>
Signed-off-by: danish9039 <danishsiddiqui040@gmail.com>
Signed-off-by: danish9039 <danishsiddiqui040@gmail.com>
Signed-off-by: danish9039 <danishsiddiqui040@gmail.com>
Signed-off-by: danish9039 <danishsiddiqui040@gmail.com>
Signed-off-by: danish9039 <danishsiddiqui040@gmail.com>
Signed-off-by: danish9039 <danishsiddiqui040@gmail.com>
Signed-off-by: danish9039 <danishsiddiqui040@gmail.com>
Signed-off-by: danish9039 <danishsiddiqui040@gmail.com>
Signed-off-by: danish9039 <danishsiddiqui040@gmail.com>
Signed-off-by: danish9039 <danishsiddiqui040@gmail.com>
Signed-off-by: danish9039 <danishsiddiqui040@gmail.com>
Signed-off-by: danish9039 <danishsiddiqui040@gmail.com>
Signed-off-by: danish9039 <danishsiddiqui040@gmail.com>
fcce26d to
7a80c56
Compare
|
|
||
| self.assertEqual(selector.find_upstream_scripts([path]), EXPECTED_SCRIPTS) |
There was a problem hiding this comment.
| self.assertEqual(selector.find_upstream_scripts([path]), EXPECTED_SCRIPTS) | |
| self.assertEqual(selector.find_upstream_scripts([path]), EXPECTED_SCRIPTS) | |
| - name: Install Kustomize | ||
| run: ./tests/kustomize_install.sh |
There was a problem hiding this comment.
Is this a duplication ?
|
How can i disable for example the default login flow ? what are the things i can easily configure ? |
Summary of Changes
Adds the Kubeflow Dashboard Helm wrapper chart as a co-located application chart under
applications/dashboard/helm.This PR keeps the first reviewable slice focused on Kustomize parity for the customer-facing Dashboard platform install path. It retains only the
platformscenario, which maps toapplications/dashboard/overlays/istio, and removes the exploratory split Dashboard CI scenarios from the chart PR scope.The PR also updates Helm/Kustomize comparison wiring to the new chart path, uses Helm 4 in the comparison workflow, and extends
scripts/synchronize-dashboard-manifests.shso future Dashboard upstream syncs also refresh the Helm chartappVersionand regenerated static platform template.The chart is placed under
applications/dashboard/helmbecause Dashboard is an official application component, and this is the application-side equivalent of placing common wrappers undercommon/<component>/helm. The sync script ownsapplications/dashboard/upstream, while the Helm chart lives as a sibling underapplications/dashboard/helm.Dependencies
Conceptually follows the foundation and wrapper chart PRs for runtime installation order:
Render parity validation for this PR is self-contained.
Related Issues
Part of the Project 5 Helm chart work.
Contributor Checklist
Synchronization Flow
The platform overlay is rendered once, then every resource is validated and assigned to a deterministic component payload.
flowchart TD A["Kustomize<br/>platform overlay"] --> B["One complete<br/>Kustomize build"] B --> C["Python generator<br/>parses YAML"] C --> D["Validate and classify<br/>every resource"] D --> E["Central Dashboard payload"] D --> F["PodDefaults CRD<br/>and resource payloads"] D --> G["Profile Controller CRD<br/>and resource payloads"] E --> H["Small Helm templates<br/>using .Files.Get"] F --> H G --> H H --> I["Same rendered<br/>Kubernetes resources"]Relevant File Structure
Installation, supported scenarios, and chart configuration are documented in
applications/dashboard/helm/README.md.Validation
Also verified with temporary Helm
v4.2.2: