38 lines
1.1 KiB
Ruby
38 lines
1.1 KiB
Ruby
module Gitlab
|
|
module CurrentSettings
|
|
def current_application_settings
|
|
begin
|
|
if ActiveRecord::Base.connection.table_exists?('application_settings')
|
|
ApplicationSetting.current ||
|
|
ApplicationSetting.create_from_defaults
|
|
else
|
|
fake_application_settings
|
|
end
|
|
rescue ActiveRecord::NoDatabaseError, database_adapter.constantize::Error
|
|
fake_application_settings
|
|
end
|
|
end
|
|
|
|
def fake_application_settings
|
|
OpenStruct.new(
|
|
default_projects_limit: Settings.gitlab['default_projects_limit'],
|
|
signup_enabled: Settings.gitlab['signup_enabled'],
|
|
signin_enabled: Settings.gitlab['signin_enabled'],
|
|
gravatar_enabled: Settings.gravatar['enabled'],
|
|
sign_in_text: Settings.extra['sign_in_text'],
|
|
)
|
|
end
|
|
|
|
# We need to check which database is setup
|
|
# but we cannot assume that the database exists already.
|
|
# Not checking this will break "rake gitlab:setup".
|
|
def database_adapter
|
|
if Rails.configuration.database_configuration[Rails.env]['adapter'] == 'mysql2'
|
|
"Mysql2"
|
|
else
|
|
"PG"
|
|
end
|
|
end
|
|
end
|
|
end
|