Skip to content

Conversation

@samuelattwood
Copy link

  • Brings NATS Backend up-to-date
  • Resolves issues with Kubernetes Conformance test suite
  • Adds read-after-write checks
  • Various fixes and enhancements

@samuelattwood samuelattwood requested a review from a team as a code owner November 7, 2025 23:16
@brandond
Copy link
Member

brandond commented Nov 7, 2025

This is great to see! Don't forget to --signoff your commits for DCO.

@samuelattwood samuelattwood force-pushed the sattwood/nats-conformance branch from 801f07f to 9262069 Compare November 7, 2025 23:27
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please uncomment the core apiserver tests to validate that those pass as well:

### Disabled until NATS is validated to pass tests
# KINE_IMAGE=$IMAGE KINE_ENDPOINT="nats://$ip:$port?noEmbed" GO_TEST_EXTRAFLAGS="-tags nats" run-apiserver-tests

@DeanKamali
Copy link

Any update on this? @samuelattwood

I have some time to dedicate for this, let me know if I can do any reviews or pick up any blockers.

@samuelattwood
Copy link
Author

There is a small fix I had to make after enabling the apiserver tests that wasn't caught by the Sonobuoy conformance suite.

I have been at KubeCon this week but I will have that up tomorrow or Monday, in addition to some improvements regarding tombstones.

Signed-off-by: Samuel Attwood <[email protected]>
Signed-off-by: Samuel Attwood <[email protected]>
Signed-off-by: Samuel Attwood <[email protected]>
Signed-off-by: Samuel Attwood <[email protected]>
Signed-off-by: Samuel Attwood <[email protected]>
Signed-off-by: Samuel Attwood <[email protected]>
Signed-off-by: Samuel Attwood <[email protected]>
Signed-off-by: Samuel Attwood <[email protected]>
Signed-off-by: Samuel Attwood <[email protected]>
Signed-off-by: Samuel Attwood <[email protected]>
Signed-off-by: Samuel Attwood <[email protected]>
@samuelattwood samuelattwood force-pushed the sattwood/nats-conformance branch from 6291ab3 to 6c05e8a Compare November 19, 2025 09:18
Comment on lines +98 to +105
// Shutdown on interrupt.
sigch := make(chan os.Signal, 1)
signal.Notify(sigch, os.Interrupt)
go func() {
<-sigch
ns.Shutdown()
logrus.Infof("embedded NATS server shutdown")
}()
Copy link
Member

@brandond brandond Nov 19, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, don't do your own signal handling. This is handled by the CLI or calling application:

  • ctx := signals.SetupSignalContext()
  • // SetupSignalContext is same as SetupSignalHandler, but a context.Context is returned.
    // Only one of SetupSignalContext and SetupSignalHandler should be called, and only can
    // be called once.
    func SetupSignalContext() context.Context {

You should be using the context and waitGroup that you are provided - call wg.Add(1) when starting, do what you're going to do until the context is done, and then call wg.Done() when you've shut down.

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.

3 participants