diff --git a/integrations/access/servicenow/app.go b/integrations/access/servicenow/app.go index 548c0bce7fa1d..aa87f42c1b9c4 100644 --- a/integrations/access/servicenow/app.go +++ b/integrations/access/servicenow/app.go @@ -140,10 +140,9 @@ func (a *App) init(ctx context.Context) error { log := logger.Get(ctx) var err error - if a.teleport == nil { - if a.teleport, err = common.GetTeleportClient(ctx, a.conf.Teleport); err != nil { - return trace.Wrap(err) - } + a.teleport, err = a.conf.GetTeleportClient(ctx) + if err != nil { + return trace.Wrap(err, "getting teleport client") } pong, err := a.checkTeleportVersion(ctx) diff --git a/integrations/access/servicenow/config.go b/integrations/access/servicenow/config.go index e1eb99a4c9955..c1d53fdde7406 100644 --- a/integrations/access/servicenow/config.go +++ b/integrations/access/servicenow/config.go @@ -19,6 +19,7 @@ package servicenow import ( + "context" "net/url" "github.com/gravitational/trace" @@ -69,6 +70,13 @@ func (c *Config) CheckAndSetDefaults() error { return nil } +func (c *Config) GetTeleportClient(ctx context.Context) (teleport.Client, error) { + if c.Client != nil { + return c.Client, nil + } + return c.BaseConfig.GetTeleportClient(ctx) +} + // NewBot initializes the new Servicenow message generator (ServicenowBot) // takes GenericAPIConfig as an argument. func (c *Config) NewBot(clusterName, webProxyAddr string) (common.MessagingBot, error) {