package internal import ( "os" "sync" "github.com/nats-io/nats.go" ) var ( err error nc *nats.Conn once sync.Once ) func NewNatsConnection() *nats.Conn { once.Do(func() { nc, err = nats.Connect( os.Getenv("NATS_URL"), nats.UserInfo(os.Getenv("NATS_USER"), os.Getenv("NATS_PASSWORD")), ) if err != nil { panic(err) } }) return nc }