diff options
author | Jan-Willem van der Meer <mail@jewilmeer.nl> | 2014-10-13 14:04:10 +0200 |
---|---|---|
committer | Jan-Willem van der Meer <mail@jewilmeer.nl> | 2014-10-13 14:04:10 +0200 |
commit | e1cf9c15eb38cd830a52de41b9c242add0b76767 (patch) | |
tree | 8bf15e857ff58766d69741b71ff4a772caee3cce /config/initializers/devise.rb | |
parent | 3cd5abf635d32af0aed5f4160707ee3e10938ab6 (diff) | |
download | gitlab-ce-e1cf9c15eb38cd830a52de41b9c242add0b76767.tar.gz |
Apply configuration changes for Multiple LDAP servers
Diffstat (limited to 'config/initializers/devise.rb')
-rw-r--r-- | config/initializers/devise.rb | 30 |
1 files changed, 16 insertions, 14 deletions
diff --git a/config/initializers/devise.rb b/config/initializers/devise.rb index 34f4f386988..7770f018a15 100644 --- a/config/initializers/devise.rb +++ b/config/initializers/devise.rb @@ -205,21 +205,23 @@ Devise.setup do |config| # end if Gitlab.config.ldap.enabled - if Gitlab.config.ldap.allow_username_or_email_login - email_stripping_proc = ->(name) {name.gsub(/@.*$/,'')} - else - email_stripping_proc = ->(name) {name} + Gitlab.config.ldap.servers.each do |server| + if server['allow_username_or_email_login'] + email_stripping_proc = ->(name) {name.gsub(/@.*$/,'')} + else + email_stripping_proc = ->(name) {name} + end + + config.omniauth server.provider_name, + host: server['host'], + base: server['base'], + uid: server['uid'], + port: server['port'], + method: server['method'], + bind_dn: server['bind_dn'], + password: server['password'], + name_proc: email_stripping_proc end - - config.omniauth :ldap, - host: Gitlab.config.ldap['host'], - base: Gitlab.config.ldap['base'], - uid: Gitlab.config.ldap['uid'], - port: Gitlab.config.ldap['port'], - method: Gitlab.config.ldap['method'], - bind_dn: Gitlab.config.ldap['bind_dn'], - password: Gitlab.config.ldap['password'], - name_proc: email_stripping_proc end Gitlab.config.omniauth.providers.each do |provider| |