helm: add cert-manager wrapper chart#3470
Conversation
|
[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 |
|
Welcome to the Kubeflow Manifests 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 an experimental Helm wrapper chart for cert-manager and wires it into the Helm/Kustomize comparison tooling.
Changes:
- Introduces the cert-manager wrapper chart, values, templates, lock file, and README.
- Adds Kubeflow-specific optional resources for the ClusterIssuer and NetworkPolicies.
- Extends comparison scripts to cover cert-manager base and Kubeflow scenarios.
Reviewed changes
Copilot reviewed 11 out of 13 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
.gitignore |
Ignores generated Helm dependency archives. |
experimental/helm/charts/cert-manager/.helmignore |
Defines files excluded from chart packaging. |
experimental/helm/charts/cert-manager/Chart.lock |
Locks the Jetstack cert-manager chart dependency. |
experimental/helm/charts/cert-manager/Chart.yaml |
Defines the wrapper chart metadata and dependency. |
experimental/helm/charts/cert-manager/README.md |
Documents install and parity validation flow. |
experimental/helm/charts/cert-manager/ci/values-base.yaml |
Adds base comparison values. |
experimental/helm/charts/cert-manager/ci/values-kubeflow.yaml |
Adds Kubeflow comparison values. |
experimental/helm/charts/cert-manager/templates/kubeflow-resources.yaml |
Adds optional Kubeflow ClusterIssuer and NetworkPolicies. |
experimental/helm/charts/cert-manager/templates/namespace.yaml |
Adds the cert-manager namespace template. |
experimental/helm/charts/cert-manager/values.yaml |
Adds default wrapper chart values. |
tests/helm_kustomize_compare.py |
Allows cert-manager in manifest comparison. |
tests/helm_kustomize_compare.sh |
Adds cert-manager scenarios and rendering logic. |
tests/helm_kustomize_compare_all.sh |
Includes cert-manager in all-scenario comparison runs. |
|
|
||
| ```bash | ||
| helm install kubeflow-namespaces ./experimental/helm/charts/kubeflow-namespaces | ||
| helm install kubeflow-platform ./experimental/helm/charts/kubeflow-platform |
There was a problem hiding this comment.
Fixed in the README: kubeflow-platform and cert-manager now use --namespace kubeflow-system.
| namespace = sys.argv[5] if len(sys.argv) > 5 and not sys.argv[5].startswith('--') else "" | ||
|
|
||
| if component not in ["katib", "hub", "kserve-models-web-app"]: | ||
| if component not in ["katib", "hub", "kserve-models-web-app", "cert-manager"]: |
There was a problem hiding this comment.
Fixed by preserving the Kubeflow cert-manager overlay labels on the overlay-owned resources during comparison.
553f9c5 to
6b1d396
Compare
8cf2018 to
e1f141d
Compare
|
Please first update kustomize to the latest available version in a separate PR. |
Signed-off-by: danish9039 <danishsiddiqui040@gmail.com>
Signed-off-by: danish9039 <danishsiddiqui040@gmail.com>
Signed-off-by: danish9039 <danishsiddiqui040@gmail.com>
e1f141d to
a945009
Compare
Signed-off-by: danish9039 <danishsiddiqui040@gmail.com>
Pull Request Template for Kubeflow Manifests
✏️ Summary of Changes
Adds an experimental Helm wrapper chart for cert-manager under
experimental/helm/charts/cert-manager.The chart wraps the upstream Jetstack cert-manager Helm chart at
v1.19.4, keeps the cert-manager workloads in thecert-managernamespace, and adds the Kubeflow-specific resources from the current Kustomize overlay:Namespace/cert-managerwith the restricted Pod Security labelClusterIssuer/kubeflow-self-signing-issuerThe default install renders the cert-manager base only. Kubeflow-specific extras are enabled through the Kubeflow CI values file after cert-manager CRDs are available, because
ClusterIssuercannot be created before the cert-manager CRDs are registered.This PR also extends the Helm/Kustomize comparison tooling with
cert-managerbaseandkubeflowscenarios. The cert-manager comparison renders Helm with release namespacekubeflow-system, while the cert-manager workloads remain incert-manager, matching the platform-first install model.📦 Dependencies
Depends on #3468 for the foundation chart install sequence described in the cert-manager chart README:
kubeflow-namespaceskubeflow-platformThe cert-manager render comparison itself is independent and compares against the existing
common/cert-managerKustomize paths.🐛 Related Issues
Part of the GSoC Project 5 Helm chart work.
✅ Contributor Checklist
Validation
Ran locally:
Also ran a platform-order kind smoke test:
Observed:
kubeflow-platformandcert-managerHelm releases stored inkubeflow-systemcert-managerClusterIssuer/kubeflow-self-signing-issuerready