Skip to content

Spapadop/plt 849 statefulset servicename does not match any generated service#27

Merged
spapa013 merged 1 commit intonauticalab:develop/spapadopfrom
spapa013:spapadop/plt-849-statefulset-servicename-does-not-match-any-generated-service
Mar 6, 2026
Merged

Spapadop/plt 849 statefulset servicename does not match any generated service#27
spapa013 merged 1 commit intonauticalab:develop/spapadopfrom
spapa013:spapadop/plt-849-statefulset-servicename-does-not-match-any-generated-service

Conversation

@spapa013
Copy link
Collaborator

@spapa013 spapa013 commented Mar 5, 2026

Summary
This PR is stacked on #26. It should be rebased after #26 is merged

This PR fixes a manifest mismatch where StatefulSet.spec.serviceName referenced devenv-{{.Name}} but no Service with that name was generated.

Changes:

  • Added devenv-{{.Name}} headless Service (clusterIP: None) in service.tmpl as the StatefulSet governing service.
  • Kept existing devenv-ssh-{{.Name}} NodePort Service unchanged.
  • Kept optional devenv-http-{{.Name}} Service and ingress wiring unchanged.
  • Updated service golden output and regenerated sample manifests.

Why
StatefulSets are expected to reference a governing Service (typically headless) for stable pod network identity. This removes the structural mismatch and ensures valid StatefulSet/Service topology.

Validation

  • go test ./internal/templates -update-golden
  • go run ./cmd/devenv generate stelios --config-dir ./developers --output ./build
  • go test -v -race -covermode=atomic -coverprofile=./coverage.out ./...
  • Validated on the atlab-devenv cluster (stelios) that StatefulSet/service topology is correct (matching serviceName, headless governing service, expected EndpointSlice, unchanged SSH NodePort, and correct HTTP ingress backend), and all checks passed.

@spapa013 spapa013 requested a review from eywalker March 5, 2026 22:45
@codecov
Copy link

codecov bot commented Mar 5, 2026

Codecov Report

❌ Patch coverage is 71.42857% with 8 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
internal/config/validation.go 71.42% 5 Missing and 3 partials ⚠️

📢 Thoughts on this report? Let us know!

@spapa013 spapa013 changed the base branch from main to develop/spapadop March 6, 2026 19:28
…match StatefulSet serviceName while preserving existing SSH/HTTP services
@spapa013 spapa013 force-pushed the spapadop/plt-849-statefulset-servicename-does-not-match-any-generated-service branch from 0cc375e to af9b0dd Compare March 6, 2026 19:55
@spapa013 spapa013 merged commit 5cdaefe into nauticalab:develop/spapadop Mar 6, 2026
@spapa013 spapa013 mentioned this pull request Mar 6, 2026
@spapa013 spapa013 deleted the spapadop/plt-849-statefulset-servicename-does-not-match-any-generated-service branch March 6, 2026 21:36
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