Merge branch 'feature-multi-ldap-servers-merge-master' into 'master'

Feature multi ldap servers

This adds the missing functions to get multiple LDAP servers to fully function

See merge request !198
This commit is contained in:
Dmitriy Zaporozhets
2014-10-15 14:04:30 +00:00
5 changed files with 11 additions and 12 deletions
-4
View File
@@ -233,10 +233,6 @@ module ApplicationHelper
end
end
def ldap_enabled?
Gitlab.config.ldap.enabled
end
def link_to(name = nil, options = nil, html_options = nil, &block)
begin
uri = URI(options)
-1
View File
@@ -52,7 +52,6 @@ class Settings < Settingslogic
end
end
# Default settings
Settings['ldap'] ||= Settingslogic.new({})
Settings.ldap['enabled'] = false if Settings.ldap['enabled'].nil?
+9 -5
View File
@@ -1,9 +1,13 @@
module OmniAuth::Strategies
server = Gitlab.config.ldap.servers.values.first
const_set(server['provider_class'], Class.new(LDAP))
Gitlab::LDAP::Config.servers.each do |server|
# do not redeclare LDAP
next if server['provider_name'] == 'ldap'
const_set(server['provider_class'], Class.new(LDAP))
end
end
OmniauthCallbacksController.class_eval do
server = Gitlab.config.ldap.servers.values.first
alias_method server['provider_name'], :ldap
end
Gitlab::LDAP::Config.servers.each do |server|
alias_method server['provider_name'], :ldap
end
end
+1 -1
View File
@@ -205,7 +205,7 @@ Devise.setup do |config|
# end
if Gitlab.config.ldap.enabled
Gitlab.config.ldap.servers.values.each do |server|
Gitlab::LDAP::Config.servers.each do |server|
if server['allow_username_or_email_login']
email_stripping_proc = ->(name) {name.gsub(/@.*$/,'')}
else
+1 -1
View File
@@ -31,7 +31,7 @@ module Gitlab
#
def groups(cn = "*", size = nil)
options = {
base: config['group_base'],
base: config.group_base,
filter: Net::LDAP::Filter.eq("cn", cn)
}