From d8cfa7a2950a6a08639e4ab16d01abb156ffcc47 Mon Sep 17 00:00:00 2001 From: Asim Aslam Date: Thu, 12 Mar 2020 18:47:40 +0000 Subject: [PATCH] add config to cmd (#1337) * add config to cmd * fix build --- config/cmd/options.go | 10 ++++++++-- options.go | 2 +- service.go | 1 + 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/config/cmd/options.go b/config/cmd/options.go index 2e4956ff..d105ee2e 100644 --- a/config/cmd/options.go +++ b/config/cmd/options.go @@ -28,6 +28,7 @@ type Options struct { Registry *registry.Registry Selector *selector.Selector Transport *transport.Transport + Config *config.Config Client *client.Client Server *server.Server Runtime *runtime.Runtime @@ -35,9 +36,9 @@ type Options struct { Tracer *trace.Tracer Auth *auth.Auth Profile *profile.Profile - Config *config.Config Brokers map[string]func(...broker.Option) broker.Broker + Configs map[string]func(...config.Option) (config.Config, error) Clients map[string]func(...client.Option) client.Client Registries map[string]func(...registry.Option) registry.Registry Selectors map[string]func(...selector.Option) selector.Selector @@ -48,7 +49,6 @@ type Options struct { Tracers map[string]func(...trace.Option) trace.Tracer Auths map[string]func(...auth.Option) auth.Auth Profiles map[string]func(...profile.Option) profile.Profile - Configs map[string]func(...config.Option) (config.Config, error) // Other options for implementations of the interface // can be stored in a context @@ -82,6 +82,12 @@ func Broker(b *broker.Broker) Option { } } +func Config(c *config.Config) Option { + return func(o *Options) { + o.Config = c + } +} + func Selector(s *selector.Selector) Option { return func(o *Options) { o.Selector = s diff --git a/options.go b/options.go index c90c17f3..36e290a3 100644 --- a/options.go +++ b/options.go @@ -23,12 +23,12 @@ type Options struct { Auth auth.Auth Broker broker.Broker Cmd cmd.Cmd + Config config.Config Client client.Client Server server.Server Registry registry.Registry Transport transport.Transport Profile profile.Profile - Config config.Config // Before and After funcs BeforeStart []func() error diff --git a/service.go b/service.go index 9f5b6344..a47a38de 100644 --- a/service.go +++ b/service.go @@ -99,6 +99,7 @@ func (s *service) Init(opts ...Option) { cmd.Registry(&s.opts.Registry), cmd.Transport(&s.opts.Transport), cmd.Client(&s.opts.Client), + cmd.Config(&s.opts.Config), cmd.Server(&s.opts.Server), cmd.Profile(&s.opts.Profile), ); err != nil {