Merge branch 'backport-2844-ldap-ee-license-checks' into 'master'

Backport some recent changes related to LDAP from EE

See merge request !13119
This commit is contained in:
Douwe Maan 2017-07-28 09:13:50 +00:00
commit da3100254f
3 changed files with 15 additions and 11 deletions

View File

@ -23,12 +23,7 @@ class SessionsController < Devise::SessionsController
def new def new
set_minimum_password_length set_minimum_password_length
@ldap_servers = @ldap_servers = Gitlab::LDAP::Config.available_servers
if Gitlab.config.ldap.enabled
Gitlab::LDAP::Config.servers
else
[]
end
super super
end end

View File

@ -1,13 +1,16 @@
if Gitlab::LDAP::Config.enabled? if Gitlab::LDAP::Config.enabled?
module OmniAuth::Strategies module OmniAuth::Strategies
server = Gitlab.config.ldap.servers.values.first Gitlab::LDAP::Config.available_servers.each do |server|
klass = server['provider_class'] # do not redeclare LDAP
const_set(klass, Class.new(LDAP)) unless klass == 'LDAP' next if server['provider_name'] == 'ldap'
const_set(server['provider_class'], Class.new(LDAP))
end
end end
OmniauthCallbacksController.class_eval do OmniauthCallbacksController.class_eval do
server = Gitlab.config.ldap.servers.values.first Gitlab::LDAP::Config.available_servers.each do |server|
alias_method server['provider_name'], :ldap alias_method server['provider_name'], :ldap
end
end end
end end

View File

@ -18,6 +18,12 @@ module Gitlab
Gitlab.config.ldap.servers.values Gitlab.config.ldap.servers.values
end end
def self.available_servers
return [] unless enabled?
Array.wrap(servers.first)
end
def self.providers def self.providers
servers.map { |server| server['provider_name'] } servers.map { |server| server['provider_name'] }
end end