Skip to content

fix(slurm): use external controller in login pod - #39

Merged
jhu-svg merged 15 commits into
slurm-1.0-together-changesfrom
TCL-6697/fix-managed-slurm-external-login
Aug 3, 2026
Merged

fix(slurm): use external controller in login pod#39
jhu-svg merged 15 commits into
slurm-1.0-together-changesfrom
TCL-6697/fix-managed-slurm-external-login

Conversation

@jhu-svg

@jhu-svg jhu-svg commented Jul 15, 2026

Copy link
Copy Markdown

Summary

  • point hybrid-mode login pods at controller.externalConfig instead of a Service that Slinky intentionally omits
  • mount the externally mirrored Slurm auth Secret so sackd can start
  • version the resulting artifacts as Slurm chart 1.0.3, Slurm operator chart 1.0.1, and operator/webhook images 1.0.13

Dependencies

  • togethercomputer/tcloud-charts#409 packages chart 1.0.3 and operator chart 1.0.1; that PR must retain every production-referenced artifact and resolve its chart-host capacity decision before merge
  • TCCO managed-Slurm transport selects these chart versions and image 1.0.13

Test plan

  • make helm-validate
  • make test
  • internal mode retains the existing controller DNS and auth Secret
  • external mode renders the configured controller host, port, and auth Secret
  • external mode fails rendering when slurmKeyRef.name is missing
  • tcloud-charts packages and verifies Slurm chart 1.0.3 and operator chart 1.0.1
  • build-and-push and Broly CI checks pass

Publication note

  • PR CI publishes development tags. Stable Docker Hub tags slurm-operator:1.0.13 and slurm-operator-webhook:1.0.13 do not exist yet; merging to slurm-1.0-together-changes triggers their immutable publication. Verify both digests before deploying the dependent TCCO change.

Linear: TCL-6697

Render the configured external controller endpoint and mirrored Slurm auth Secret so hybrid managed-Slurm login pods can start without an in-cluster controller Service.
@broly-code-security-scanner

broly-code-security-scanner Bot commented Jul 15, 2026

Copy link
Copy Markdown

Broly Security Scan

Note

Clean scan
No vulnerabilities detected in this PR.

Note

Re-scan this PR anytime with /broly scan — useful after /broly undismiss, or to refresh findings without a new push.

Broly — SAST (zai-org/GLM-5.2) · Secrets · SCA · GH Actions (zizmor) · Containers · SBOM · Powered by Together AI

@jhu-svg
jhu-svg force-pushed the TCL-6697/fix-managed-slurm-external-login branch from 6b0c324 to ac9fe6f Compare July 20, 2026 01:25
@broly-code-security-scanner

broly-code-security-scanner Bot commented Jul 20, 2026

Copy link
Copy Markdown

Broly Security Scan

Note

Clean scan
No vulnerabilities detected in this PR.

Note

Re-scan this PR anytime with /broly scan — useful after /broly undismiss, or to refresh findings without a new push.

Broly — SAST (zai-org/GLM-5.2) · Secrets · SCA · GH Actions (zizmor) · Containers · SBOM · Powered by Together AI

jhu-svg added 6 commits July 20, 2026 13:33
Project the configured auth key to slurm.key and keep same-number TCP and UDP ports distinct during container merges.
Run the chart and operator tests before builds and refuse to overwrite stable operator image tags.
Use Go 1.25.3 in CI so cached standard-library objects match the compiler selected by go.mod.
Record that NodeSet ExtraConf is an intentional argv-level Slurm escape hatch and is never shell-evaluated.
Use commit-scoped concurrency for release pushes so a newer push cannot replace an older pending stable-image publication.
Lock in Kubernetes' empty-protocol-as-TCP behavior while preserving distinct UDP ports.
@jhu-svg
jhu-svg requested review from eb3095 and sagrawal-byte July 21, 2026 20:28
@jhu-svg
jhu-svg merged commit ccc5eb0 into slurm-1.0-together-changes Aug 3, 2026
3 checks passed
@jhu-svg
jhu-svg deleted the TCL-6697/fix-managed-slurm-external-login branch August 3, 2026 17:48
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.

2 participants