From 81c18a01bd22437457da04b6cdb8d409beb54446 Mon Sep 17 00:00:00 2001 From: Corey Hulen Date: Mon, 25 Sep 2017 13:30:33 -0700 Subject: PLT-7542 Converting LDAP sync to the job server (#7452) * PLT-7542 Converting LDAP sync to the job server * Fixing minor issues * Fixing build failure * Translate error message * Translate error message * Translate error message * Translate error message * Fixing merge * Fixing bad merge --- jobs/schedulers.go | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'jobs/schedulers.go') diff --git a/jobs/schedulers.go b/jobs/schedulers.go index 28cf6808c..1cb4a6f28 100644 --- a/jobs/schedulers.go +++ b/jobs/schedulers.go @@ -18,6 +18,7 @@ type Schedulers struct { DataRetention model.Scheduler ElasticsearchAggregation model.Scheduler + LdapSync model.Scheduler listenerId string } @@ -33,6 +34,10 @@ func InitSchedulers() *Schedulers { schedulers.ElasticsearchAggregation = elasticsearchAggregatorInterface.MakeScheduler() } + if ldaySyncInterface := ejobs.GetLdapSyncInterface(); ldaySyncInterface != nil { + schedulers.LdapSync = ldaySyncInterface.MakeScheduler() + } + return schedulers } @@ -47,6 +52,10 @@ func (schedulers *Schedulers) Start() *Schedulers { if schedulers.ElasticsearchAggregation != nil && *utils.Cfg.ElasticsearchSettings.EnableIndexing { go schedulers.ElasticsearchAggregation.Run() } + + if schedulers.LdapSync != nil && *utils.Cfg.LdapSettings.Enable { + go schedulers.LdapSync.Run() + } }) schedulers.listenerId = utils.AddConfigListener(schedulers.handleConfigChange) @@ -70,6 +79,14 @@ func (schedulers *Schedulers) handleConfigChange(oldConfig *model.Config, newCon schedulers.ElasticsearchAggregation.Stop() } } + + if schedulers.LdapSync != nil { + if !*oldConfig.LdapSettings.Enable && *newConfig.LdapSettings.Enable { + go schedulers.LdapSync.Run() + } else if *oldConfig.LdapSettings.Enable && !*newConfig.LdapSettings.Enable { + schedulers.LdapSync.Stop() + } + } } func (schedulers *Schedulers) Stop() *Schedulers { @@ -83,6 +100,10 @@ func (schedulers *Schedulers) Stop() *Schedulers { schedulers.ElasticsearchAggregation.Stop() } + if schedulers.LdapSync != nil && *utils.Cfg.LdapSettings.Enable { + schedulers.LdapSync.Stop() + } + l4g.Info("Stopped schedulers") return schedulers -- cgit v1.2.3-1-g7c22