move topics to be defined under events.subscriber

This commit is contained in:
Mike Mason
2023-07-18 13:18:24 +00:00
parent fee4cf94ab
commit 99baf40c20
2 changed files with 10 additions and 4 deletions

View File

@@ -33,7 +33,7 @@ func init() {
events.MustViperFlagsForSubscriber(viper.GetViper(), serveCmd.Flags()) events.MustViperFlagsForSubscriber(viper.GetViper(), serveCmd.Flags())
serveCmd.PersistentFlags().StringSlice("events-topics", []string{}, "event topics to subscribe to") serveCmd.PersistentFlags().StringSlice("events-topics", []string{}, "event topics to subscribe to")
viperx.MustBindFlag(viper.GetViper(), "events.topics", serveCmd.PersistentFlags().Lookup("events-topics")) viperx.MustBindFlag(viper.GetViper(), "events.subscriber.topics", serveCmd.PersistentFlags().Lookup("events-topics"))
oauth2x.MustViperFlags(viper.GetViper(), serveCmd.Flags()) oauth2x.MustViperFlags(viper.GetViper(), serveCmd.Flags())
permissions.MustViperFlags(viper.GetViper(), serveCmd.Flags()) permissions.MustViperFlags(viper.GetViper(), serveCmd.Flags())
@@ -87,14 +87,14 @@ func serve(cmd *cobra.Command, _ []string) {
logger.Fatalw("error initializing service", "error", err) logger.Fatalw("error initializing service", "error", err)
} }
subscriber, err := pubsub.NewSubscriber(cmd.Context(), config.AppConfig.Events.Subscriber, service, subscriber, err := pubsub.NewSubscriber(cmd.Context(), config.AppConfig.Events.Subscriber.SubscriberConfig, service,
pubsub.WithLogger(logger), pubsub.WithLogger(logger),
) )
if err != nil { if err != nil {
logger.Fatalw("unable to initialize event subscriber", "error", err) logger.Fatalw("unable to initialize event subscriber", "error", err)
} }
for _, topic := range viper.GetStringSlice("events.topics") { for _, topic := range config.AppConfig.Events.Subscriber.Topics {
if err := subscriber.Subscribe(topic); err != nil { if err := subscriber.Subscribe(topic); err != nil {
logger.Fatalw("error subscribing to topic: "+topic, "topic", topic, "error", err) logger.Fatalw("error subscribing to topic: "+topic, "topic", topic, "error", err)
} }

View File

@@ -29,10 +29,16 @@ var AppConfig struct {
// EventsConfig defines the configuration setting up both subscriptions and publishing // EventsConfig defines the configuration setting up both subscriptions and publishing
type EventsConfig struct { type EventsConfig struct {
Publisher events.PublisherConfig Publisher events.PublisherConfig
Subscriber events.SubscriberConfig Subscriber SubscriberConfig
} }
// OIDCClientConfig defines the configuration for OIDC Client Credentials. // OIDCClientConfig defines the configuration for OIDC Client Credentials.
type OIDCClientConfig struct { type OIDCClientConfig struct {
Client oauth2x.Config Client oauth2x.Config
} }
// SubscriberConfig extends events SubscriberConfig by adding topics.
type SubscriberConfig struct {
events.SubscriberConfig `mapstructure:",squash"`
Topics []string
}