From 85cd266d3468fc01cb3264d55ae1ccd1c45e5ba6 Mon Sep 17 00:00:00 2001 From: eternal-flame-AD Date: Mon, 12 Aug 2019 00:42:33 +0800 Subject: [PATCH] add config for external authenticators --- config/config.go | 10 +++++++--- config/config_test.go | 5 +++++ 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/config/config.go b/config/config.go index 2e307c3..690d1e8 100644 --- a/config/config.go +++ b/config/config.go @@ -39,9 +39,13 @@ type Configuration struct { Name string `default:"admin"` Pass string `default:"admin"` } - PassStrength int `default:"10"` - UploadedImagesDir string `default:"data/images"` - PluginsDir string `default:"data/plugins"` + PassStrength int `default:"10"` + UploadedImagesDir string `default:"data/images"` + PluginsDir string `default:"data/plugins"` + ExternalAuthenticators []struct { + Name string + Path string + } } // Get returns the configuration extracted from env variables or config file. diff --git a/config/config_test.go b/config/config_test.go index f15fd7d..ec51198 100644 --- a/config/config_test.go +++ b/config/config_test.go @@ -90,6 +90,9 @@ defaultuser: name: nicories pass: 12345 pluginsdir: data/plugins +externalauthenticators: + - name: ldap + path: auth/ldap.so `) file.Close() assert.Nil(t, err) @@ -105,6 +108,8 @@ pluginsdir: data/plugins assert.Equal(t, "GET,POST", conf.Server.ResponseHeaders["Access-Control-Allow-Methods"]) assert.Equal(t, []string{".+.example.com", "otherdomain.com"}, conf.Server.Stream.AllowedOrigins) assert.Equal(t, "data/plugins", conf.PluginsDir) + assert.Len(t, conf.ExternalAuthenticators, 1) + assert.Equal(t, "ldap", conf.ExternalAuthenticators[0].Name) assert.Nil(t, os.Remove("config.yml")) }