From 28caebf83053421789a2111ca74ec2b3e269a63c Mon Sep 17 00:00:00 2001 From: Umputun Date: Sun, 4 Feb 2018 22:43:55 -0600 Subject: [PATCH] move makeAuthProviders to ext func --- app/main.go | 43 ++++++++++++++++++++++--------------------- 1 file changed, 22 insertions(+), 21 deletions(-) diff --git a/app/main.go b/app/main.go index 4a4c255d..a19289f1 100644 --- a/app/main.go +++ b/app/main.go @@ -94,27 +94,7 @@ func main() { }() exporter := migrator.Remark{DataStore: dataStore} - - authProviders := func() []auth.Provider { - providers := []auth.Provider{} - - if srvOpts.GoogleCID != "" && srvOpts.GoogleCSEC != "" { - providers = append(providers, auth.NewGoogle(auth.Params{ - Cid: srvOpts.GoogleCID, Csecret: srvOpts.GoogleCSEC, SessionStore: sessionStore, RemarkURL: opts.RemarkURL})) - } - if srvOpts.GithubCID != "" && srvOpts.GithubCSEC != "" { - providers = append(providers, auth.NewGithub(auth.Params{ - Cid: srvOpts.GithubCID, Csecret: srvOpts.GithubCSEC, SessionStore: sessionStore, RemarkURL: opts.RemarkURL})) - } - if srvOpts.FacebookCID != "" && srvOpts.FacebookCSEC != "" { - providers = append(providers, auth.NewFacebook(auth.Params{ - Cid: srvOpts.FacebookCID, Csecret: srvOpts.FacebookCSEC, SessionStore: sessionStore, RemarkURL: opts.RemarkURL})) - } - return providers - }() - if len(authProviders) == 0 { - log.Printf("[WARN] no auth providers defined") - } + authProviders := makeAuthProviders(sessionStore) srv := rest.Server{ Version: revision, @@ -186,6 +166,27 @@ func makeDirs(dirs ...string) error { return nil } +func makeAuthProviders(sessionStore sessions.Store) []auth.Provider { + providers := []auth.Provider{} + srvOpts := opts.ServerCommand + if srvOpts.GoogleCID != "" && srvOpts.GoogleCSEC != "" { + providers = append(providers, auth.NewGoogle(auth.Params{ + Cid: srvOpts.GoogleCID, Csecret: srvOpts.GoogleCSEC, SessionStore: sessionStore, RemarkURL: opts.RemarkURL})) + } + if srvOpts.GithubCID != "" && srvOpts.GithubCSEC != "" { + providers = append(providers, auth.NewGithub(auth.Params{ + Cid: srvOpts.GithubCID, Csecret: srvOpts.GithubCSEC, SessionStore: sessionStore, RemarkURL: opts.RemarkURL})) + } + if srvOpts.FacebookCID != "" && srvOpts.FacebookCSEC != "" { + providers = append(providers, auth.NewFacebook(auth.Params{ + Cid: srvOpts.FacebookCID, Csecret: srvOpts.FacebookCSEC, SessionStore: sessionStore, RemarkURL: opts.RemarkURL})) + } + if len(providers) == 0 { + log.Printf("[WARN] no auth providers defined") + } + return providers +} + func setupLog(dbg bool) { filter := &logutils.LevelFilter{ Levels: []logutils.LogLevel{"DEBUG", "INFO", "WARN", "ERROR"},