github.com/Jeffail/benthos/v3@v3.65.0/internal/impl/nats/auth/auth.go (about)

     1  package auth
     2  
     3  import "github.com/nats-io/nats.go"
     4  
     5  // GetOptions initialises NATS functional options for the auth fields
     6  func GetOptions(auth Config) []nats.Option {
     7  	var opts []nats.Option
     8  	if auth.NKeyFile != "" {
     9  		if opt, err := nats.NkeyOptionFromSeed(auth.NKeyFile); err != nil {
    10  			opts = append(opts, func(*nats.Options) error { return err })
    11  		} else {
    12  			opts = append(opts, opt)
    13  		}
    14  	}
    15  
    16  	if auth.UserCredentialsFile != "" {
    17  		opts = append(opts, nats.UserCredentials(auth.UserCredentialsFile))
    18  	}
    19  	return opts
    20  }