Skip to content

[TCL-6909] feat(slurm): add Model-Aware TorchPass chart support#35

Closed
sagrawal-byte wants to merge 1 commit into
slurm-1.0-together-changesfrom
sagrawal/slurm-torchpass
Closed

[TCL-6909] feat(slurm): add Model-Aware TorchPass chart support#35
sagrawal-byte wants to merge 1 commit into
slurm-1.0-together-changesfrom
sagrawal/slurm-torchpass

Conversation

@sagrawal-byte

Copy link
Copy Markdown

What

Gated, opt-in chart support for the Model-Aware TorchPass ("clockworks") add-on. Default renders unchanged (torchpass.enabled: false, login.initContainers: []).

  • login.initContainers — login Deployment had no initContainers passthrough (unlike controller/nodeset). Added so the torchpass-payload initContainer can populate /opt/torchpass on login pods, matching the worker nodeset.
  • torchpass.enabled block — renders the cluster-scoped pieces the chart owns: the torchpass-login-profile ConfigMap (/etc/profile.d/torchpass.sh, sourced by login + worker shells) and the torchpass-orchestrator Service (:26001, selecting the slurmctld pod).

The clockworks sidecar (controller), torchpass-payload initContainers (nodeset + login) and volumes/mounts are injected by the caller via existing controller.podSpec / nodesets.<name>.podSpec / login.{initContainers,extraVolumes,extraVolumeMounts} values. Companion: together-cloud-cluster-operator PR #658.

Test plan

  • helm lint . → 0 failures.
  • helm template with torchpass.enabled=true + a login.initContainers entry renders the ConfigMap, orchestrator Service, and login initContainer; default values render unchanged.

Follow-up (packaging — not in this PR)

Chart source is vendored into tcloud-charts as substrate/slurm-*.tgz. To ship: bump chart version, helm package, update tcloud-charts index.yaml, bump the operator's pinned chart Version. InstallOnce reconcile = only new clusters adopt it. (A local tcloud-charts checkout had in-flight WIP copying this chart + a slurm-operator-tmp — check for overlap before packaging.)

🤖 Generated with Claude Code

Two additions, both gated/opt-in so default renders are unchanged:

- login: support `login.initContainers` (the login Deployment template had no
  passthrough). Needed so the torchpass-payload initContainer can populate
  /opt/torchpass on login pods, matching the worker nodeset.
- torchpass: new `torchpass.enabled` block rendering the cluster-scoped pieces
  the chart owns -- the torchpass-login-profile ConfigMap (sourced by login +
  worker shells) and the torchpass-orchestrator Service (:26001, selecting the
  slurmctld pod). The clockworks sidecar + payload initContainers + volumes are
  injected by the caller via the controller/nodeset/login podSpec values.

Verified with `helm lint` + `helm template`.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@sagrawal-byte sagrawal-byte changed the title feat(slurm): add Model-Aware TorchPass chart support [TCL-7395] [TCL-6909] feat(slurm): add Model-Aware TorchPass chart support Jul 2, 2026
@sagrawal-byte

Copy link
Copy Markdown
Author

Superseded — combined with #36 into a single PR from the merged branch (sagrawal/torchpass-chart-pkg), which is also the exact source tcloud-charts#354's tgz was packaged from.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant