feat(nvcf-compute-plane): add kai-scheduler to stack - #607
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: ⛔ Files ignored due to path filters (103)
📒 Files selected for processing (7)
🚧 Files skipped from review as they are similar to previous changes (7)
📝 WalkthroughWalkthroughThe compute-plane stack now optionally installs KAI Scheduler. It adds KAI configuration, Helm deployment settings, Grove dependency wiring, namespace cleanup, and documentation for integrated and standalone installation. ChangesKAI Scheduler integration
Estimated code review effort: 3 (Moderate) | ~25 minutes Sequence Diagram(s)sequenceDiagram
participant Operator
participant ComputePlaneHelmfile
participant OCIHelmRepository
participant KAIScheduler
participant GroveOperator
Operator->>ComputePlaneHelmfile: Enable addons.kaiScheduler
ComputePlaneHelmfile->>OCIHelmRepository: Resolve KAI Scheduler chart
OCIHelmRepository-->>ComputePlaneHelmfile: Return chart v0.14.0
ComputePlaneHelmfile->>KAIScheduler: Install configured release
ComputePlaneHelmfile->>GroveOperator: Apply KAI Scheduler dependency
Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 4
🧹 Nitpick comments (2)
deploy/stacks/nvcf-compute-plane/Makefile.dist (1)
38-38: 🩺 Stability & Availability | 🔵 TrivialDocument the cluster-scoped objects that survive destroy.
The namespace deletion is correct. Helm does not remove CRDs on uninstall, so the KAI CRDs and any
Queueobjects created bydefaultQueueremain aftermake destroy. A later reinstall of a different chart version then reuses the old CRD schema. Consider recording the manual cleanup commands in the stack README, or adding an explicit opt-in target for CRD removal.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@deploy/stacks/nvcf-compute-plane/Makefile.dist` at line 38, Document in the stack README that KAI CRDs and Queue objects created by defaultQueue are cluster-scoped resources left behind by make destroy, including the manual cleanup commands; alternatively, add an explicit opt-in Makefile target for removing those CRDs and objects without changing the existing namespace deletion behavior.deploy/stacks/nvcf-compute-plane/helmfile.d/01-dependencies.yaml.gotmpl (1)
52-79: 📐 Maintainability & Code Quality | 🔵 Trivial | 💤 Low valueConsider generating the per-component resource blocks in a loop and quoting quantities.
The 10 repeated
digtriples add 30 template lines and grow with each new KAI component. A single map of component names to default requests and limits removes the repetition. Quoting each value also keeps overrides valid: Kubernetes resource quantities must be strings, and an override such asmemory: 1e3renders as a float withoutquote.Example shape for the values entry:
- {{- $kai := dig "kaiScheduler" dict .Values.addons }} {{- $defaults := dict "operator" (dict "reqCpu" "50m" "reqMem" "256Mi" "limCpu" "1000m" "limMem" "1Gi") "podgrouper" (dict "reqCpu" "50m" "reqMem" "512Mi" "limCpu" "1000m" "limMem" "4Gi") }} {{- range $name, $d := $defaults }} {{- $res := dig $name "resources" dict $kai }} {{ $name }}: resources: requests: cpu: {{ dig "cpu" $d.reqCpu (dig "requests" dict $res) | quote }} memory: {{ dig "memory" $d.reqMem (dig "requests" dict $res) | quote }} limits: cpu: {{ dig "cpu" $d.limCpu (dig "limits" dict $res) | quote }} memory: {{ dig "memory" $d.limMem (dig "limits" dict $res) | quote }} {{- end }}Note that
scheduleralso carries non-resource keys, so keep that block explicit.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@deploy/stacks/nvcf-compute-plane/helmfile.d/01-dependencies.yaml.gotmpl` around lines 52 - 79, Refactor the repeated resource extraction blocks around the KAI component variables into a shared defaults map and range over it, while keeping the scheduler block explicit because it has non-resource settings. For each ranged component, resolve requests and limits through its resource override and render CPU and memory quantities with quote so numeric-looking overrides remain Kubernetes strings; preserve the existing component names and default values.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@ai-tooling/user/skills/nvcf-self-managed-prerequisite/SKILL.md`:
- Around line 85-86: Update the uninstall section of the prerequisite
instructions to mark the helm uninstall kai-scheduler and kubectl delete
namespace kai-scheduler commands as standalone-install-only. For users with
addons.kaiScheduler.enabled in nvcf-compute-plane, direct them to use the
compute-plane stack’s destroy target instead, preserving the existing standalone
cleanup flow.
In `@deploy/stacks/nvcf-compute-plane/helmfile.d/01-dependencies.yaml.gotmpl`:
- Around line 80-99: Remove the unsupported numaPlacementExporter values block
from the dependency configuration, leaving the rendered global.securityContext,
nodeSelector, imagePullSecrets, and tolerations settings unchanged.
- Around line 234-239: Update the dependency declarations for the grove-operator
and dynamo-operator releases in the Helmfile template to enforce required
add-ons during templating, not only through needs ordering. Reject
configurations where grove is enabled without kai-scheduler, or dynamo is
enabled without both grove-operator and kai-scheduler, using the existing add-on
enablement keys and template-time validation mechanisms.
In `@docs/user/cluster-management/kai-scheduler.md`:
- Around line 10-14: Update the KAI Scheduler guidance to use the NVCF-validated
v0.14.0 release instead of recommending the latest release, keeping the manual
installation instructions, compute-plane version pin, prerequisite references,
and compatibility validation consistent with that version.
---
Nitpick comments:
In `@deploy/stacks/nvcf-compute-plane/helmfile.d/01-dependencies.yaml.gotmpl`:
- Around line 52-79: Refactor the repeated resource extraction blocks around the
KAI component variables into a shared defaults map and range over it, while
keeping the scheduler block explicit because it has non-resource settings. For
each ranged component, resolve requests and limits through its resource override
and render CPU and memory quantities with quote so numeric-looking overrides
remain Kubernetes strings; preserve the existing component names and default
values.
In `@deploy/stacks/nvcf-compute-plane/Makefile.dist`:
- Line 38: Document in the stack README that KAI CRDs and Queue objects created
by defaultQueue are cluster-scoped resources left behind by make destroy,
including the manual cleanup commands; alternatively, add an explicit opt-in
Makefile target for removing those CRDs and objects without changing the
existing namespace deletion behavior.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Enterprise
Run ID: 7b9dccb6-6899-4a1a-ad66-66bb015ef174
⛔ Files ignored due to path filters (103)
deploy/stacks/nvcf-compute-plane/testdata/environments/local.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/dynamo-operator/templates/component-serviceaccount.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/dynamo-operator/templates/deployment.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/dynamo-operator/templates/epp.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/dynamo-operator/templates/gpu-discovery-preflight.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/dynamo-operator/templates/gpu-discovery-rbac.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/dynamo-operator/templates/leader-election-rbac.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/dynamo-operator/templates/manager-rbac.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/dynamo-operator/templates/metrics-auth-rbac.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/dynamo-operator/templates/metrics-service.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/dynamo-operator/templates/operator-config.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/dynamo-operator/templates/operator-servicemonitor.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/dynamo-operator/templates/planner.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/dynamo-operator/templates/profiling-job-rbac.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/dynamo-operator/templates/prometheus.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/dynamo-operator/templates/regcred-secret.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/dynamo-operator/templates/serviceaccount.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/dynamo-operator/templates/validate-values.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/dynamo-operator/templates/webhook-certificates.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/dynamo-operator/templates/webhook-configuration.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/dynamo-operator/templates/webhook-rbac.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/dynamo-operator/templates/webhook-service.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/nats/templates/config-map.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/nats/templates/headless-service.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/nats/templates/pod-disruption-budget.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/nats/templates/service.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/charts/nats/templates/stateful-set.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/templates/kai.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-dynamo-operator/dynamo-platform/templates/validate-values.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-grove-operator/grove-charts/templates/clusterrole.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-grove-operator/grove-charts/templates/clusterrolebinding.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-grove-operator/grove-charts/templates/clustertopology-validating-webhook-config.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-grove-operator/grove-charts/templates/configmap-operator.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-grove-operator/grove-charts/templates/deployment.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-grove-operator/grove-charts/templates/leaderelection-role.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-grove-operator/grove-charts/templates/leaderelection-rolebinding.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-grove-operator/grove-charts/templates/pcs-defaulting-webhook-config.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-grove-operator/grove-charts/templates/pcs-validating-webhook-config.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-grove-operator/grove-charts/templates/service.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-grove-operator/grove-charts/templates/serviceaccount.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/default-queue.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/default-shard.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/hooks/post/post-delete-job.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/hooks/pre/crd-upgrader.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/hooks/pre/topology-migration/configmap.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/hooks/pre/topology-migration/job.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/hooks/pre/topology-migration/rbac.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/kai-config.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/priorityclasses/build-preemptible.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/priorityclasses/build.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/priorityclasses/inference.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/priorityclasses/train.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/admission-binding.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/admission.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/binder-binding.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/binder.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/crd-manager.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/nodescaleadjuster-binding.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/nodescaleadjuster.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/operator-binding.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/operator.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/podgroupcontroller-binding.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/podgroupcontroller.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/podgrouper-binding.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/podgrouper.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/post-delete-binding.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/post-delete-clusterrole.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/prometheus-binding.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/prometheus-pod.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/queuecontroller-binding.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/queuecontroller.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/resourcereservation-binding.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/resourcereservation.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/scc.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/scheduler-binding.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/rbac/scheduler.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/services/operator-serviceaccount.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/services/operator.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/services/post-delete-serviceaccount.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/services/resourcereservation-namespace.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/services/resourcereservation-serviceaccount.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/01-dependencies.yaml-a814432c-kai-scheduler/kai-scheduler/templates/services/scalingpod-namespace.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/02-nvca.yaml-8e61e521-nvca-operator/helm-nvca-operator/templates/agent-config-merge-cm.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/02-nvca.yaml-8e61e521-nvca-operator/helm-nvca-operator/templates/chart-defaults-nvcfbackend-cm.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/02-nvca.yaml-8e61e521-nvca-operator/helm-nvca-operator/templates/cluster-validator-network-checks-cm.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/02-nvca.yaml-8e61e521-nvca-operator/helm-nvca-operator/templates/crds/nvidia.io_nvcfbackends_crd.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/02-nvca.yaml-8e61e521-nvca-operator/helm-nvca-operator/templates/cronjob.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/02-nvca.yaml-8e61e521-nvca-operator/helm-nvca-operator/templates/custom-annotations-configmap.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/02-nvca.yaml-8e61e521-nvca-operator/helm-nvca-operator/templates/custom-network-policies-configmap.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/02-nvca.yaml-8e61e521-nvca-operator/helm-nvca-operator/templates/deployment.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/02-nvca.yaml-8e61e521-nvca-operator/helm-nvca-operator/templates/gpu-profiling-config-configmap.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/02-nvca.yaml-8e61e521-nvca-operator/helm-nvca-operator/templates/helm-managed-nvcfbackend-cm.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/02-nvca.yaml-8e61e521-nvca-operator/helm-nvca-operator/templates/ngc-service-key.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/02-nvca.yaml-8e61e521-nvca-operator/helm-nvca-operator/templates/nvca-operator_rq.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/02-nvca.yaml-8e61e521-nvca-operator/helm-nvca-operator/templates/pre-delete-cleanup-job.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/02-nvca.yaml-8e61e521-nvca-operator/helm-nvca-operator/templates/pre-delete-cleanup-rbac.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/02-nvca.yaml-8e61e521-nvca-operator/helm-nvca-operator/templates/rbac.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/02-nvca.yaml-8e61e521-nvca-operator/helm-nvca-operator/templates/rbac_allowed_extra_types.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/02-nvca.yaml-8e61e521-nvca-operator/helm-nvca-operator/templates/role.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/02-nvca.yaml-8e61e521-nvca-operator/helm-nvca-operator/templates/role_binding.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/02-nvca.yaml-8e61e521-nvca-operator/helm-nvca-operator/templates/sa.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/02-nvca.yaml-8e61e521-nvca-operator/helm-nvca-operator/templates/self-managed-nvcfbackend-cm.yamlis excluded by!**/testdata/**deploy/stacks/nvcf-compute-plane/testdata/golden/local/02-nvca.yaml-8e61e521-nvca-operator/helm-nvca-operator/templates/shutdown-sentinel.yamlis excluded by!**/testdata/**
📒 Files selected for processing (7)
ai-tooling/user/skills/nvcf-self-managed-prerequisite/SKILL.mdai-tooling/user/skills/nvcf-self-managed-prerequisite/references/kai-scheduler.mddeploy/stacks/nvcf-compute-plane/Makefile.distdeploy/stacks/nvcf-compute-plane/README.mddeploy/stacks/nvcf-compute-plane/environments/base.yamldeploy/stacks/nvcf-compute-plane/helmfile.d/01-dependencies.yaml.gotmpldocs/user/cluster-management/kai-scheduler.md
fca12a5 to
9a20895
Compare
Signed-off-by: Eric Stroczynski <estroczynski@nvidia.com>
9a20895 to
0c2dc4f
Compare
TL;DR
Instead of requiring manual install, the compute plane stack should install KAI Scheduler
Additional Details (optional for docs, build, test, refactor, ci, chore, style, and revert PRs)
Enabled by
addons.kaiScheduler.enabled=trueFor the Reviewer
For QA (optional for docs, build, test, refactor, ci, chore, style, and revert PRs)
Issues
Closes #500
Checklist
Summary by CodeRabbit
New Features
Documentation