32 lines
1.1 KiB
Ruby
32 lines
1.1 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
# The purpose of this code is to set the migrations path
|
|
# for the Geo tracking database and the embedding database.
|
|
module Gitlab
|
|
module Patch
|
|
module DatabaseConfig
|
|
extend ActiveSupport::Concern
|
|
|
|
def database_configuration
|
|
super.to_h do |env, configs|
|
|
if Gitlab.ee?
|
|
ee_databases = %w[embedding geo]
|
|
|
|
ee_databases.each do |ee_db_name|
|
|
next unless configs.key?(ee_db_name)
|
|
|
|
migrations_paths = Array(configs[ee_db_name]['migrations_paths'])
|
|
migrations_paths << File.join('ee', 'db', ee_db_name, 'migrate') if migrations_paths.empty?
|
|
migrations_paths << File.join('ee', 'db', ee_db_name, 'post_migrate') unless ENV['SKIP_POST_DEPLOYMENT_MIGRATIONS']
|
|
|
|
configs[ee_db_name]['migrations_paths'] = migrations_paths.uniq
|
|
configs[ee_db_name]['schema_migrations_path'] = File.join('ee', 'db', ee_db_name, 'schema_migrations') if configs[ee_db_name]['schema_migrations_path'].blank?
|
|
end
|
|
end
|
|
|
|
[env, configs]
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|