Welcome to mirror list, hosted at ThFree Co, Russian Federation.

20150411000035_fix_identities.rb « migrate « db - gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 12526b10e6e397cf36fcee9fe0f3ff178b6a5afd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class FixIdentities < ActiveRecord::Migration
  def up
    new_provider = Gitlab.config.ldap.servers.first.last['provider_name']
	  # Delete duplicate identities
    Identity.connection.select_one("DELETE FROM identities WHERE provider = 'ldap' AND user_id IN (SELECT user_id FROM identities WHERE provider = '#{new_provider}')")
	  # Update legacy identities
    Identity.where(provider: 'ldap').update_all(provider: new_provider)

    if defined?(LdapGroupLink)
      LdapGroupLink.where('provider IS NULL').update_all(provider: new_provider)
    end
  end

  def down
  end
end