diff options
author | Marin Jankovski <marin@gitlab.com> | 2015-09-01 21:14:57 +0000 |
---|---|---|
committer | Marin Jankovski <marin@gitlab.com> | 2015-09-01 21:14:57 +0000 |
commit | 308c6428aef2a46b0370a24d85a97b0e133283a8 (patch) | |
tree | 3b05743958cb2aa7b2fc50df8b4f16202cdd6b22 | |
parent | afb2e6f48548ce3c5dc3279265bfd8b9dedf9e0d (diff) | |
parent | 3a8773fb2f86757ce0a061ef6476b7d91bcb6259 (diff) | |
download | gitlab-ce-308c6428aef2a46b0370a24d85a97b0e133283a8.tar.gz |
Merge branch 'use_db_for_application_settings' into 'master'
Check if database connection exists when loading application settings
!1217 broke omnibus-gitlab nightly builds. In omnibus-gitlab we precompile assets without a running database.
See merge request !1230
-rw-r--r-- | CHANGELOG | 3 | ||||
-rw-r--r-- | lib/gitlab/current_settings.rb | 14 |
2 files changed, 15 insertions, 2 deletions
diff --git a/CHANGELOG b/CHANGELOG index 8c390c16205..f2ac3b979a2 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -30,6 +30,7 @@ v 8.0.0 (unreleased) - Fixed login failure when extern_uid changes (Joel Koglin) - Don't notify users without access to the project when they are (accidentally) mentioned in a note. - Retrieving oauth token with LDAP credentials + - Load Application settings from running database unless env var USE_DB=false v 7.14.1 - Improve abuse reports management from admin area @@ -114,7 +115,7 @@ v 7.13.4 v 7.13.3 - Fix bug causing Bitbucket importer to crash when OAuth application had been removed. - Allow users to send abuse reports - - Remove satellites + - Remove satellites - Link username to profile on Group Members page (Tom Webster) v 7.13.2 diff --git a/lib/gitlab/current_settings.rb b/lib/gitlab/current_settings.rb index 7ad3ed8728f..0ea1b6a2f6f 100644 --- a/lib/gitlab/current_settings.rb +++ b/lib/gitlab/current_settings.rb @@ -4,7 +4,7 @@ module Gitlab key = :current_application_settings RequestStore.store[key] ||= begin - if ActiveRecord::Base.connection.active? && ActiveRecord::Base.connection.table_exists?('application_settings') + if connect_to_db? ApplicationSetting.current || ApplicationSetting.create_from_defaults else fake_application_settings @@ -26,5 +26,17 @@ module Gitlab import_sources: Settings.gitlab['import_sources'] ) end + + private + + def connect_to_db? + use_db = if ENV['USE_DB'] == "false" + false + else + true + end + + use_db && ActiveRecord::Base.connection.active? && ActiveRecord::Base.connection.table_exists?('application_settings') + end end end |