use Gitlab::UserSettings directly as a singleton instead of including/extending it
This commit is contained in:
parent
8fa2932dc5
commit
eaada9d706
|
|
@ -1,6 +1,6 @@
|
|||
class Admin::CohortsController < Admin::ApplicationController
|
||||
def index
|
||||
if current_application_settings.usage_ping_enabled
|
||||
if Gitlab::CurrentSettings.usage_ping_enabled
|
||||
cohorts_results = Rails.cache.fetch('cohorts', expires_in: 1.day) do
|
||||
CohortsService.new.execute
|
||||
end
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@ require 'gon'
|
|||
require 'fogbugz'
|
||||
|
||||
class ApplicationController < ActionController::Base
|
||||
include Gitlab::CurrentSettings
|
||||
include Gitlab::GonHelper
|
||||
include GitlabRoutingHelper
|
||||
include PageLayoutHelper
|
||||
|
|
@ -28,7 +27,7 @@ class ApplicationController < ActionController::Base
|
|||
|
||||
protect_from_forgery with: :exception
|
||||
|
||||
helper_method :can?, :current_application_settings
|
||||
helper_method :can?
|
||||
helper_method :import_sources_enabled?, :github_import_enabled?, :gitea_import_enabled?, :github_import_configured?, :gitlab_import_enabled?, :gitlab_import_configured?, :bitbucket_import_enabled?, :bitbucket_import_configured?, :google_code_import_enabled?, :fogbugz_import_enabled?, :git_import_enabled?, :gitlab_project_import_enabled?
|
||||
|
||||
rescue_from Encoding::CompatibilityError do |exception|
|
||||
|
|
@ -120,7 +119,7 @@ class ApplicationController < ActionController::Base
|
|||
end
|
||||
|
||||
def after_sign_out_path_for(resource)
|
||||
current_application_settings.after_sign_out_path.presence || new_user_session_path
|
||||
Gitlab::CurrentSettings.after_sign_out_path.presence || new_user_session_path
|
||||
end
|
||||
|
||||
def can?(object, action, subject = :global)
|
||||
|
|
@ -268,15 +267,15 @@ class ApplicationController < ActionController::Base
|
|||
end
|
||||
|
||||
def import_sources_enabled?
|
||||
!current_application_settings.import_sources.empty?
|
||||
!Gitlab::CurrentSettings.import_sources.empty?
|
||||
end
|
||||
|
||||
def github_import_enabled?
|
||||
current_application_settings.import_sources.include?('github')
|
||||
Gitlab::CurrentSettings.import_sources.include?('github')
|
||||
end
|
||||
|
||||
def gitea_import_enabled?
|
||||
current_application_settings.import_sources.include?('gitea')
|
||||
Gitlab::CurrentSettings.import_sources.include?('gitea')
|
||||
end
|
||||
|
||||
def github_import_configured?
|
||||
|
|
@ -284,7 +283,7 @@ class ApplicationController < ActionController::Base
|
|||
end
|
||||
|
||||
def gitlab_import_enabled?
|
||||
request.host != 'gitlab.com' && current_application_settings.import_sources.include?('gitlab')
|
||||
request.host != 'gitlab.com' && Gitlab::CurrentSettings.import_sources.include?('gitlab')
|
||||
end
|
||||
|
||||
def gitlab_import_configured?
|
||||
|
|
@ -292,7 +291,7 @@ class ApplicationController < ActionController::Base
|
|||
end
|
||||
|
||||
def bitbucket_import_enabled?
|
||||
current_application_settings.import_sources.include?('bitbucket')
|
||||
Gitlab::CurrentSettings.import_sources.include?('bitbucket')
|
||||
end
|
||||
|
||||
def bitbucket_import_configured?
|
||||
|
|
@ -300,19 +299,19 @@ class ApplicationController < ActionController::Base
|
|||
end
|
||||
|
||||
def google_code_import_enabled?
|
||||
current_application_settings.import_sources.include?('google_code')
|
||||
Gitlab::CurrentSettings.import_sources.include?('google_code')
|
||||
end
|
||||
|
||||
def fogbugz_import_enabled?
|
||||
current_application_settings.import_sources.include?('fogbugz')
|
||||
Gitlab::CurrentSettings.import_sources.include?('fogbugz')
|
||||
end
|
||||
|
||||
def git_import_enabled?
|
||||
current_application_settings.import_sources.include?('git')
|
||||
Gitlab::CurrentSettings.import_sources.include?('git')
|
||||
end
|
||||
|
||||
def gitlab_project_import_enabled?
|
||||
current_application_settings.import_sources.include?('gitlab_project')
|
||||
Gitlab::CurrentSettings.import_sources.include?('gitlab_project')
|
||||
end
|
||||
|
||||
# U2F (universal 2nd factor) devices need a unique identifier for the application
|
||||
|
|
|
|||
|
|
@ -20,13 +20,13 @@ module EnforcesTwoFactorAuthentication
|
|||
end
|
||||
|
||||
def two_factor_authentication_required?
|
||||
current_application_settings.require_two_factor_authentication? ||
|
||||
Gitlab::CurrentSettings.require_two_factor_authentication? ||
|
||||
current_user.try(:require_two_factor_authentication_from_group?)
|
||||
end
|
||||
|
||||
def two_factor_authentication_reason(global: -> {}, group: -> {})
|
||||
if two_factor_authentication_required?
|
||||
if current_application_settings.require_two_factor_authentication?
|
||||
if Gitlab::CurrentSettings.require_two_factor_authentication?
|
||||
global.call
|
||||
else
|
||||
groups = current_user.expanded_groups_requiring_two_factor_authentication.reorder(name: :asc)
|
||||
|
|
@ -36,7 +36,7 @@ module EnforcesTwoFactorAuthentication
|
|||
end
|
||||
|
||||
def two_factor_grace_period
|
||||
periods = [current_application_settings.two_factor_grace_period]
|
||||
periods = [Gitlab::CurrentSettings.two_factor_grace_period]
|
||||
periods << current_user.two_factor_grace_period if current_user.try(:require_two_factor_authentication_from_group?)
|
||||
periods.min
|
||||
end
|
||||
|
|
|
|||
|
|
@ -1,8 +1,6 @@
|
|||
module RequiresWhitelistedMonitoringClient
|
||||
extend ActiveSupport::Concern
|
||||
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
included do
|
||||
before_action :validate_ip_whitelisted_or_valid_token!
|
||||
end
|
||||
|
|
@ -26,7 +24,7 @@ module RequiresWhitelistedMonitoringClient
|
|||
token.present? &&
|
||||
ActiveSupport::SecurityUtils.variable_size_secure_compare(
|
||||
token,
|
||||
current_application_settings.health_check_access_token
|
||||
Gitlab::CurrentSettings.health_check_access_token
|
||||
)
|
||||
end
|
||||
|
||||
|
|
|
|||
|
|
@ -51,7 +51,7 @@ class InvitesController < ApplicationController
|
|||
return if current_user
|
||||
|
||||
notice = "To accept this invitation, sign in"
|
||||
notice << " or create an account" if current_application_settings.allow_signup?
|
||||
notice << " or create an account" if Gitlab::CurrentSettings.allow_signup?
|
||||
notice << "."
|
||||
|
||||
store_location_for :user, request.fullpath
|
||||
|
|
|
|||
|
|
@ -10,6 +10,6 @@ class KodingController < ApplicationController
|
|||
private
|
||||
|
||||
def check_integration!
|
||||
render_404 unless current_application_settings.koding_enabled?
|
||||
render_404 unless Gitlab::CurrentSettings.koding_enabled?
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
class Oauth::ApplicationsController < Doorkeeper::ApplicationsController
|
||||
include Gitlab::CurrentSettings
|
||||
include Gitlab::GonHelper
|
||||
include PageLayoutHelper
|
||||
include OauthApplications
|
||||
|
|
@ -31,7 +30,7 @@ class Oauth::ApplicationsController < Doorkeeper::ApplicationsController
|
|||
private
|
||||
|
||||
def verify_user_oauth_applications_enabled
|
||||
return if current_application_settings.user_oauth_applications?
|
||||
return if Gitlab::CurrentSettings.user_oauth_applications?
|
||||
|
||||
redirect_to profile_path
|
||||
end
|
||||
|
|
|
|||
|
|
@ -145,7 +145,7 @@ class OmniauthCallbacksController < Devise::OmniauthCallbacksController
|
|||
label = Gitlab::OAuth::Provider.label_for(oauth['provider'])
|
||||
message = "Signing in using your #{label} account without a pre-existing GitLab account is not allowed."
|
||||
|
||||
if current_application_settings.allow_signup?
|
||||
if Gitlab::CurrentSettings.allow_signup?
|
||||
message << " Create a GitLab account first, and then connect it to your #{label} account."
|
||||
end
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,4 @@
|
|||
class PasswordsController < Devise::PasswordsController
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
skip_before_action :require_no_authentication, only: [:edit, :update]
|
||||
|
||||
before_action :resource_from_email, only: [:create]
|
||||
|
|
@ -46,7 +44,7 @@ class PasswordsController < Devise::PasswordsController
|
|||
if resource
|
||||
return if resource.allow_password_authentication?
|
||||
else
|
||||
return if current_application_settings.password_authentication_enabled?
|
||||
return if Gitlab::CurrentSettings.password_authentication_enabled?
|
||||
end
|
||||
|
||||
redirect_to after_sending_reset_password_instructions_path_for(resource_name),
|
||||
|
|
|
|||
|
|
@ -394,7 +394,7 @@ class ProjectsController < Projects::ApplicationController
|
|||
end
|
||||
|
||||
def project_export_enabled
|
||||
render_404 unless current_application_settings.project_export_enabled?
|
||||
render_404 unless Gitlab::CurrentSettings.project_export_enabled?
|
||||
end
|
||||
|
||||
def redirect_git_extension
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ class RootController < Dashboard::ProjectsController
|
|||
|
||||
def redirect_unlogged_user
|
||||
if redirect_to_home_page_url?
|
||||
redirect_to(current_application_settings.home_page_url)
|
||||
redirect_to(Gitlab::CurrentSettings.home_page_url)
|
||||
else
|
||||
redirect_to(new_user_session_path)
|
||||
end
|
||||
|
|
@ -48,9 +48,9 @@ class RootController < Dashboard::ProjectsController
|
|||
def redirect_to_home_page_url?
|
||||
# If user is not signed-in and tries to access root_path - redirect him to landing page
|
||||
# Don't redirect to the default URL to prevent endless redirections
|
||||
return false unless current_application_settings.home_page_url.present?
|
||||
return false unless Gitlab::CurrentSettings.home_page_url.present?
|
||||
|
||||
home_page_url = current_application_settings.home_page_url.chomp('/')
|
||||
home_page_url = Gitlab::CurrentSettings.home_page_url.chomp('/')
|
||||
root_urls = [Gitlab.config.gitlab['url'].chomp('/'), root_url.chomp('/')]
|
||||
|
||||
root_urls.exclude?(home_page_url)
|
||||
|
|
|
|||
|
|
@ -1,25 +1,23 @@
|
|||
module ApplicationSettingsHelper
|
||||
extend self
|
||||
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
delegate :allow_signup?,
|
||||
:gravatar_enabled?,
|
||||
:password_authentication_enabled_for_web?,
|
||||
:akismet_enabled?,
|
||||
:koding_enabled?,
|
||||
to: :current_application_settings
|
||||
to: :'Gitlab::CurrentSettings.current_application_settings'
|
||||
|
||||
def user_oauth_applications?
|
||||
current_application_settings.user_oauth_applications
|
||||
Gitlab::CurrentSettings.user_oauth_applications
|
||||
end
|
||||
|
||||
def allowed_protocols_present?
|
||||
current_application_settings.enabled_git_access_protocol.present?
|
||||
Gitlab::CurrentSettings.enabled_git_access_protocol.present?
|
||||
end
|
||||
|
||||
def enabled_protocol
|
||||
case current_application_settings.enabled_git_access_protocol
|
||||
case Gitlab::CurrentSettings.enabled_git_access_protocol
|
||||
when 'http'
|
||||
gitlab_config.protocol
|
||||
when 'ssh'
|
||||
|
|
@ -57,7 +55,7 @@ module ApplicationSettingsHelper
|
|||
# toggle button effect.
|
||||
def import_sources_checkboxes(help_block_id)
|
||||
Gitlab::ImportSources.options.map do |name, source|
|
||||
checked = current_application_settings.import_sources.include?(source)
|
||||
checked = Gitlab::CurrentSettings.import_sources.include?(source)
|
||||
css_class = checked ? 'active' : ''
|
||||
checkbox_name = 'application_setting[import_sources][]'
|
||||
|
||||
|
|
@ -72,7 +70,7 @@ module ApplicationSettingsHelper
|
|||
|
||||
def oauth_providers_checkboxes
|
||||
button_based_providers.map do |source|
|
||||
disabled = current_application_settings.disabled_oauth_sign_in_sources.include?(source.to_s)
|
||||
disabled = Gitlab::CurrentSettings.disabled_oauth_sign_in_sources.include?(source.to_s)
|
||||
css_class = 'btn'
|
||||
css_class << ' active' unless disabled
|
||||
checkbox_name = 'application_setting[enabled_oauth_sign_in_sources][]'
|
||||
|
|
|
|||
|
|
@ -1,6 +1,4 @@
|
|||
module AuthHelper
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
PROVIDERS_WITH_ICONS = %w(twitter github gitlab bitbucket google_oauth2 facebook azure_oauth2 authentiq).freeze
|
||||
FORM_BASED_PROVIDERS = [/\Aldap/, 'crowd'].freeze
|
||||
|
||||
|
|
@ -41,7 +39,7 @@ module AuthHelper
|
|||
end
|
||||
|
||||
def enabled_button_based_providers
|
||||
disabled_providers = current_application_settings.disabled_oauth_sign_in_sources || []
|
||||
disabled_providers = Gitlab::CurrentSettings.disabled_oauth_sign_in_sources || []
|
||||
|
||||
button_based_providers.map(&:to_s) - disabled_providers
|
||||
end
|
||||
|
|
|
|||
|
|
@ -1,6 +1,4 @@
|
|||
module ProjectsHelper
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
def link_to_project(project)
|
||||
link_to [project.namespace.becomes(Namespace), project], title: h(project.name) do
|
||||
title = content_tag(:span, project.name, class: 'project-name')
|
||||
|
|
@ -214,7 +212,7 @@ module ProjectsHelper
|
|||
project.cache_key,
|
||||
controller.controller_name,
|
||||
controller.action_name,
|
||||
current_application_settings.cache_key,
|
||||
Gitlab::CurrentSettings.cache_key,
|
||||
'v2.5'
|
||||
]
|
||||
|
||||
|
|
@ -447,10 +445,10 @@ module ProjectsHelper
|
|||
|
||||
path = "#{import_path}?repo=#{repo}&branch=#{branch}&sha=#{sha}"
|
||||
|
||||
return URI.join(current_application_settings.koding_url, path).to_s
|
||||
return URI.join(Gitlab::CurrentSettings.koding_url, path).to_s
|
||||
end
|
||||
|
||||
current_application_settings.koding_url
|
||||
Gitlab::CurrentSettings.koding_url
|
||||
end
|
||||
|
||||
def contribution_guide_path(project)
|
||||
|
|
@ -559,7 +557,7 @@ module ProjectsHelper
|
|||
def restricted_levels
|
||||
return [] if current_user.admin?
|
||||
|
||||
current_application_settings.restricted_visibility_levels || []
|
||||
Gitlab::CurrentSettings.restricted_visibility_levels || []
|
||||
end
|
||||
|
||||
def project_permissions_settings(project)
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
module VersionCheckHelper
|
||||
def version_status_badge
|
||||
if Rails.env.production? && current_application_settings.version_check_enabled
|
||||
if Rails.env.production? && Gitlab::CurrentSettings.version_check_enabled
|
||||
image_url = VersionCheck.new.url
|
||||
image_tag image_url, class: 'js-version-status-badge'
|
||||
end
|
||||
|
|
|
|||
|
|
@ -151,12 +151,12 @@ module VisibilityLevelHelper
|
|||
def restricted_visibility_levels(show_all = false)
|
||||
return [] if current_user.admin? && !show_all
|
||||
|
||||
current_application_settings.restricted_visibility_levels || []
|
||||
Gitlab::CurrentSettings.restricted_visibility_levels || []
|
||||
end
|
||||
|
||||
delegate :default_project_visibility,
|
||||
:default_group_visibility,
|
||||
to: :current_application_settings
|
||||
to: :'Gitlab::CurrentSettings.current_application_settings'
|
||||
|
||||
def disallowed_visibility_level?(form_model, level)
|
||||
return false unless form_model.respond_to?(:visibility_level_allowed?)
|
||||
|
|
|
|||
|
|
@ -1,13 +1,11 @@
|
|||
class AbuseReportMailer < BaseMailer
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
def notify(abuse_report_id)
|
||||
return unless deliverable?
|
||||
|
||||
@abuse_report = AbuseReport.find(abuse_report_id)
|
||||
|
||||
mail(
|
||||
to: current_application_settings.admin_notification_email,
|
||||
to: Gitlab::CurrentSettings.admin_notification_email,
|
||||
subject: "#{@abuse_report.user.name} (#{@abuse_report.user.username}) was reported for abuse"
|
||||
)
|
||||
end
|
||||
|
|
@ -15,6 +13,6 @@ class AbuseReportMailer < BaseMailer
|
|||
private
|
||||
|
||||
def deliverable?
|
||||
current_application_settings.admin_notification_email.present?
|
||||
Gitlab::CurrentSettings.admin_notification_email.present?
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -1,13 +1,11 @@
|
|||
class BaseMailer < ActionMailer::Base
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
around_action :render_with_default_locale
|
||||
|
||||
helper ApplicationHelper
|
||||
helper MarkupHelper
|
||||
|
||||
attr_accessor :current_user
|
||||
helper_method :current_user, :can?, :current_application_settings
|
||||
helper_method :current_user, :can?
|
||||
|
||||
default from: proc { default_sender_address.format }
|
||||
default reply_to: proc { default_reply_to_address.format }
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
module Clusters
|
||||
module Platforms
|
||||
class Kubernetes < ActiveRecord::Base
|
||||
include Gitlab::CurrentSettings
|
||||
include Gitlab::Kubernetes
|
||||
include ReactiveCaching
|
||||
|
||||
|
|
@ -169,7 +168,7 @@ module Clusters
|
|||
{
|
||||
token: token,
|
||||
ca_pem: ca_pem,
|
||||
max_session_time: current_application_settings.terminal_max_session_time
|
||||
max_session_time: Gitlab::CurrentSettings.terminal_max_session_time
|
||||
}
|
||||
end
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,4 @@
|
|||
class IssueAssignee < ActiveRecord::Base
|
||||
extend Gitlab::CurrentSettings
|
||||
|
||||
belongs_to :issue
|
||||
belongs_to :assignee, class_name: "User", foreign_key: :user_id
|
||||
end
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
require 'digest/md5'
|
||||
|
||||
class Key < ActiveRecord::Base
|
||||
include Gitlab::CurrentSettings
|
||||
include AfterCommitQueue
|
||||
include Sortable
|
||||
|
||||
|
|
@ -104,7 +103,7 @@ class Key < ActiveRecord::Base
|
|||
end
|
||||
|
||||
def key_meets_restrictions
|
||||
restriction = current_application_settings.key_restriction_for(public_key.type)
|
||||
restriction = Gitlab::CurrentSettings.key_restriction_for(public_key.type)
|
||||
|
||||
if restriction == ApplicationSetting::FORBIDDEN_KEY_VALUE
|
||||
errors.add(:key, forbidden_key_type_message)
|
||||
|
|
@ -115,7 +114,7 @@ class Key < ActiveRecord::Base
|
|||
|
||||
def forbidden_key_type_message
|
||||
allowed_types =
|
||||
current_application_settings
|
||||
Gitlab::CurrentSettings
|
||||
.allowed_key_types
|
||||
.map(&:upcase)
|
||||
.to_sentence(last_word_connector: ', or ', two_words_connector: ' or ')
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@ class Namespace < ActiveRecord::Base
|
|||
include CacheMarkdownField
|
||||
include Sortable
|
||||
include Gitlab::ShellAdapter
|
||||
include Gitlab::CurrentSettings
|
||||
include Gitlab::VisibilityLevel
|
||||
include Routable
|
||||
include AfterCommitQueue
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@
|
|||
# A note of this type is never resolvable.
|
||||
class Note < ActiveRecord::Base
|
||||
extend ActiveModel::Naming
|
||||
include Gitlab::CurrentSettings
|
||||
include Participable
|
||||
include Mentionable
|
||||
include Awardable
|
||||
|
|
@ -196,7 +195,7 @@ class Note < ActiveRecord::Base
|
|||
end
|
||||
|
||||
def max_attachment_size
|
||||
current_application_settings.max_attachment_size.megabytes.to_i
|
||||
Gitlab::CurrentSettings.max_attachment_size.megabytes.to_i
|
||||
end
|
||||
|
||||
def hook_attrs
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@ class Project < ActiveRecord::Base
|
|||
include Gitlab::ConfigHelper
|
||||
include Gitlab::ShellAdapter
|
||||
include Gitlab::VisibilityLevel
|
||||
include Gitlab::CurrentSettings
|
||||
include AccessRequestable
|
||||
include Avatarable
|
||||
include CacheMarkdownField
|
||||
|
|
@ -23,7 +22,6 @@ class Project < ActiveRecord::Base
|
|||
include ::Gitlab::Utils::StrongMemoize
|
||||
|
||||
extend Gitlab::ConfigHelper
|
||||
extend Gitlab::CurrentSettings
|
||||
|
||||
BoardLimitExceeded = Class.new(StandardError)
|
||||
|
||||
|
|
@ -51,8 +49,8 @@ class Project < ActiveRecord::Base
|
|||
default_value_for :visibility_level, gitlab_config_features.visibility_level
|
||||
default_value_for :resolve_outdated_diff_discussions, false
|
||||
default_value_for :container_registry_enabled, gitlab_config_features.container_registry
|
||||
default_value_for(:repository_storage) { current_application_settings.pick_repository_storage }
|
||||
default_value_for(:shared_runners_enabled) { current_application_settings.shared_runners_enabled }
|
||||
default_value_for(:repository_storage) { Gitlab::CurrentSettings.pick_repository_storage }
|
||||
default_value_for(:shared_runners_enabled) { Gitlab::CurrentSettings.shared_runners_enabled }
|
||||
default_value_for :issues_enabled, gitlab_config_features.issues
|
||||
default_value_for :merge_requests_enabled, gitlab_config_features.merge_requests
|
||||
default_value_for :builds_enabled, gitlab_config_features.builds
|
||||
|
|
@ -486,14 +484,14 @@ class Project < ActiveRecord::Base
|
|||
|
||||
def auto_devops_enabled?
|
||||
if auto_devops&.enabled.nil?
|
||||
current_application_settings.auto_devops_enabled?
|
||||
Gitlab::CurrentSettings.auto_devops_enabled?
|
||||
else
|
||||
auto_devops.enabled?
|
||||
end
|
||||
end
|
||||
|
||||
def has_auto_devops_implicitly_disabled?
|
||||
auto_devops&.enabled.nil? && !current_application_settings.auto_devops_enabled?
|
||||
auto_devops&.enabled.nil? && !Gitlab::CurrentSettings.auto_devops_enabled?
|
||||
end
|
||||
|
||||
def empty_repo?
|
||||
|
|
@ -1471,14 +1469,14 @@ class Project < ActiveRecord::Base
|
|||
# Ensure HEAD points to the default branch in case it is not master
|
||||
change_head(default_branch)
|
||||
|
||||
if current_application_settings.default_branch_protection != Gitlab::Access::PROTECTION_NONE && !ProtectedBranch.protected?(self, default_branch)
|
||||
if Gitlab::CurrentSettings.default_branch_protection != Gitlab::Access::PROTECTION_NONE && !ProtectedBranch.protected?(self, default_branch)
|
||||
params = {
|
||||
name: default_branch,
|
||||
push_access_levels_attributes: [{
|
||||
access_level: current_application_settings.default_branch_protection == Gitlab::Access::PROTECTION_DEV_CAN_PUSH ? Gitlab::Access::DEVELOPER : Gitlab::Access::MASTER
|
||||
access_level: Gitlab::CurrentSettings.default_branch_protection == Gitlab::Access::PROTECTION_DEV_CAN_PUSH ? Gitlab::Access::DEVELOPER : Gitlab::Access::MASTER
|
||||
}],
|
||||
merge_access_levels_attributes: [{
|
||||
access_level: current_application_settings.default_branch_protection == Gitlab::Access::PROTECTION_DEV_CAN_MERGE ? Gitlab::Access::DEVELOPER : Gitlab::Access::MASTER
|
||||
access_level: Gitlab::CurrentSettings.default_branch_protection == Gitlab::Access::PROTECTION_DEV_CAN_MERGE ? Gitlab::Access::DEVELOPER : Gitlab::Access::MASTER
|
||||
}]
|
||||
}
|
||||
|
||||
|
|
@ -1773,7 +1771,7 @@ class Project < ActiveRecord::Base
|
|||
end
|
||||
|
||||
def use_hashed_storage
|
||||
if self.new_record? && current_application_settings.hashed_storage_enabled
|
||||
if self.new_record? && Gitlab::CurrentSettings.hashed_storage_enabled
|
||||
self.storage_version = LATEST_STORAGE_VERSION
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@
|
|||
# After we've migrated data, we'll remove KubernetesService. This would happen in a few months.
|
||||
# If you're modyfiyng this class, please note that you should update the same change in Clusters::Platforms::Kubernetes.
|
||||
class KubernetesService < DeploymentService
|
||||
include Gitlab::CurrentSettings
|
||||
include Gitlab::Kubernetes
|
||||
include ReactiveCaching
|
||||
|
||||
|
|
@ -231,7 +230,7 @@ class KubernetesService < DeploymentService
|
|||
{
|
||||
token: token,
|
||||
ca_pem: ca_pem,
|
||||
max_session_time: current_application_settings.terminal_max_session_time
|
||||
max_session_time: Gitlab::CurrentSettings.terminal_max_session_time
|
||||
}
|
||||
end
|
||||
|
||||
|
|
|
|||
|
|
@ -2,8 +2,6 @@ class ProtectedBranch < ActiveRecord::Base
|
|||
include Gitlab::ShellAdapter
|
||||
include ProtectedRef
|
||||
|
||||
extend Gitlab::CurrentSettings
|
||||
|
||||
protected_ref_access_levels :merge, :push
|
||||
|
||||
# Check if branch name is marked as protected in the system
|
||||
|
|
@ -16,7 +14,7 @@ class ProtectedBranch < ActiveRecord::Base
|
|||
end
|
||||
|
||||
def self.default_branch_protected?
|
||||
current_application_settings.default_branch_protection == Gitlab::Access::PROTECTION_FULL ||
|
||||
current_application_settings.default_branch_protection == Gitlab::Access::PROTECTION_DEV_CAN_MERGE
|
||||
Gitlab::CurrentSettings.default_branch_protection == Gitlab::Access::PROTECTION_FULL ||
|
||||
Gitlab::CurrentSettings.default_branch_protection == Gitlab::Access::PROTECTION_DEV_CAN_MERGE
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -11,8 +11,6 @@ class Snippet < ActiveRecord::Base
|
|||
include Editable
|
||||
include Gitlab::SQL::Pattern
|
||||
|
||||
extend Gitlab::CurrentSettings
|
||||
|
||||
cache_markdown_field :title, pipeline: :single_line
|
||||
cache_markdown_field :description
|
||||
cache_markdown_field :content
|
||||
|
|
@ -28,7 +26,7 @@ class Snippet < ActiveRecord::Base
|
|||
default_content_html_invalidator || file_name_changed?
|
||||
end
|
||||
|
||||
default_value_for(:visibility_level) { current_application_settings.default_snippet_visibility }
|
||||
default_value_for(:visibility_level) { Gitlab::CurrentSettings.default_snippet_visibility }
|
||||
|
||||
belongs_to :author, class_name: 'User'
|
||||
belongs_to :project
|
||||
|
|
|
|||
|
|
@ -2,10 +2,8 @@ require 'carrierwave/orm/activerecord'
|
|||
|
||||
class User < ActiveRecord::Base
|
||||
extend Gitlab::ConfigHelper
|
||||
extend Gitlab::CurrentSettings
|
||||
|
||||
include Gitlab::ConfigHelper
|
||||
include Gitlab::CurrentSettings
|
||||
include Gitlab::SQL::Pattern
|
||||
include AfterCommitQueue
|
||||
include Avatarable
|
||||
|
|
@ -30,7 +28,7 @@ class User < ActiveRecord::Base
|
|||
add_authentication_token_field :rss_token
|
||||
|
||||
default_value_for :admin, false
|
||||
default_value_for(:external) { current_application_settings.user_default_external }
|
||||
default_value_for(:external) { Gitlab::CurrentSettings.user_default_external }
|
||||
default_value_for :can_create_group, gitlab_config.default_can_create_group
|
||||
default_value_for :can_create_team, false
|
||||
default_value_for :hide_no_ssh_key, false
|
||||
|
|
@ -660,11 +658,11 @@ class User < ActiveRecord::Base
|
|||
end
|
||||
|
||||
def allow_password_authentication_for_web?
|
||||
current_application_settings.password_authentication_enabled_for_web? && !ldap_user?
|
||||
Gitlab::CurrentSettings.password_authentication_enabled_for_web? && !ldap_user?
|
||||
end
|
||||
|
||||
def allow_password_authentication_for_git?
|
||||
current_application_settings.password_authentication_enabled_for_git? && !ldap_user?
|
||||
Gitlab::CurrentSettings.password_authentication_enabled_for_git? && !ldap_user?
|
||||
end
|
||||
|
||||
def can_change_username?
|
||||
|
|
@ -792,7 +790,7 @@ class User < ActiveRecord::Base
|
|||
# without this safeguard!
|
||||
return unless has_attribute?(:projects_limit) && projects_limit.nil?
|
||||
|
||||
self.projects_limit = current_application_settings.default_projects_limit
|
||||
self.projects_limit = Gitlab::CurrentSettings.default_projects_limit
|
||||
end
|
||||
|
||||
def requires_ldap_check?
|
||||
|
|
@ -1215,7 +1213,7 @@ class User < ActiveRecord::Base
|
|||
else
|
||||
# Only revert these back to the default if they weren't specifically changed in this update.
|
||||
self.can_create_group = gitlab_config.default_can_create_group unless can_create_group_changed?
|
||||
self.projects_limit = current_application_settings.default_projects_limit unless projects_limit_changed?
|
||||
self.projects_limit = Gitlab::CurrentSettings.default_projects_limit unless projects_limit_changed?
|
||||
end
|
||||
end
|
||||
|
||||
|
|
@ -1223,15 +1221,15 @@ class User < ActiveRecord::Base
|
|||
valid = true
|
||||
error = nil
|
||||
|
||||
if current_application_settings.domain_blacklist_enabled?
|
||||
blocked_domains = current_application_settings.domain_blacklist
|
||||
if Gitlab::CurrentSettings.domain_blacklist_enabled?
|
||||
blocked_domains = Gitlab::CurrentSettings.domain_blacklist
|
||||
if domain_matches?(blocked_domains, email)
|
||||
error = 'is not from an allowed domain.'
|
||||
valid = false
|
||||
end
|
||||
end
|
||||
|
||||
allowed_domains = current_application_settings.domain_whitelist
|
||||
allowed_domains = Gitlab::CurrentSettings.domain_whitelist
|
||||
unless allowed_domains.blank?
|
||||
if domain_matches?(allowed_domains, email)
|
||||
valid = true
|
||||
|
|
|
|||
|
|
@ -1,6 +1,4 @@
|
|||
class AkismetService
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
attr_accessor :owner, :text, :options
|
||||
|
||||
def initialize(owner, text, options = {})
|
||||
|
|
@ -41,12 +39,12 @@ class AkismetService
|
|||
private
|
||||
|
||||
def akismet_client
|
||||
@akismet_client ||= ::Akismet::Client.new(current_application_settings.akismet_api_key,
|
||||
@akismet_client ||= ::Akismet::Client.new(Gitlab::CurrentSettings.akismet_api_key,
|
||||
Gitlab.config.gitlab.url)
|
||||
end
|
||||
|
||||
def akismet_enabled?
|
||||
current_application_settings.akismet_enabled
|
||||
Gitlab::CurrentSettings.akismet_enabled
|
||||
end
|
||||
|
||||
def submit(type)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,5 @@
|
|||
module Auth
|
||||
class ContainerRegistryAuthenticationService < BaseService
|
||||
extend Gitlab::CurrentSettings
|
||||
|
||||
AUDIENCE = 'container_registry'.freeze
|
||||
|
||||
def execute(authentication_abilities:)
|
||||
|
|
@ -32,7 +30,7 @@ module Auth
|
|||
end
|
||||
|
||||
def self.token_expire_at
|
||||
Time.now + current_application_settings.container_registry_token_expire_delay.minutes
|
||||
Time.now + Gitlab::CurrentSettings.container_registry_token_expire_delay.minutes
|
||||
end
|
||||
|
||||
private
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
class BaseService
|
||||
include Gitlab::Allowable
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
attr_accessor :project, :current_user, :params
|
||||
|
||||
|
|
|
|||
|
|
@ -2,8 +2,6 @@ module Ci
|
|||
# This class responsible for assigning
|
||||
# proper pending build to runner on runner API request
|
||||
class RegisterJobService
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
attr_reader :runner
|
||||
|
||||
Result = Struct.new(:build, :valid?)
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
class GitPushService < BaseService
|
||||
attr_accessor :push_data, :push_commits
|
||||
include Gitlab::CurrentSettings
|
||||
include Gitlab::Access
|
||||
|
||||
# The N most recent commits to process in a single push payload.
|
||||
|
|
|
|||
|
|
@ -1,8 +1,6 @@
|
|||
class GravatarService
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
def execute(email, size = nil, scale = 2, username: nil)
|
||||
return unless current_application_settings.gravatar_enabled?
|
||||
return unless Gitlab::CurrentSettings.gravatar_enabled?
|
||||
|
||||
identifier = email.presence || username.presence
|
||||
return unless identifier
|
||||
|
|
|
|||
|
|
@ -7,8 +7,6 @@
|
|||
#
|
||||
module Projects
|
||||
class HousekeepingService < BaseService
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
# Timeout set to 24h
|
||||
LEASE_TIMEOUT = 86400
|
||||
|
||||
|
|
@ -83,19 +81,19 @@ module Projects
|
|||
end
|
||||
|
||||
def housekeeping_enabled?
|
||||
current_application_settings.housekeeping_enabled
|
||||
Gitlab::CurrentSettings.housekeeping_enabled
|
||||
end
|
||||
|
||||
def gc_period
|
||||
current_application_settings.housekeeping_gc_period
|
||||
Gitlab::CurrentSettings.housekeeping_gc_period
|
||||
end
|
||||
|
||||
def full_repack_period
|
||||
current_application_settings.housekeeping_full_repack_period
|
||||
Gitlab::CurrentSettings.housekeeping_full_repack_period
|
||||
end
|
||||
|
||||
def repack_period
|
||||
current_application_settings.housekeeping_incremental_repack_period
|
||||
Gitlab::CurrentSettings.housekeeping_incremental_repack_period
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -1,7 +1,5 @@
|
|||
module Projects
|
||||
class UpdatePagesService < BaseService
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
BLOCK_SIZE = 32.kilobytes
|
||||
MAX_SIZE = 1.terabyte
|
||||
SITE_PATH = 'public/'.freeze
|
||||
|
|
@ -134,7 +132,7 @@ module Projects
|
|||
end
|
||||
|
||||
def max_size
|
||||
max_pages_size = current_application_settings.max_pages_size.megabytes
|
||||
max_pages_size = Gitlab::CurrentSettings.max_pages_size.megabytes
|
||||
|
||||
return MAX_SIZE if max_pages_size.zero?
|
||||
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ module Projects
|
|||
def run_auto_devops_pipeline?
|
||||
return false if project.repository.gitlab_ci_yml || !project.auto_devops.previous_changes.include?('enabled')
|
||||
|
||||
project.auto_devops.enabled? || (project.auto_devops.enabled.nil? && current_application_settings.auto_devops_enabled?)
|
||||
project.auto_devops.enabled? || (project.auto_devops.enabled.nil? && Gitlab::CurrentSettings.auto_devops_enabled?)
|
||||
end
|
||||
|
||||
private
|
||||
|
|
|
|||
|
|
@ -11,10 +11,8 @@ class SubmitUsagePingService
|
|||
percentage_projects_prometheus_active leader_service_desk_issues instance_service_desk_issues
|
||||
percentage_service_desk_issues].freeze
|
||||
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
def execute
|
||||
return false unless current_application_settings.usage_ping_enabled?
|
||||
return false unless Gitlab::CurrentSettings.usage_ping_enabled?
|
||||
|
||||
response = HTTParty.post(
|
||||
URL,
|
||||
|
|
|
|||
|
|
@ -1,6 +1,4 @@
|
|||
class UploadService
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
def initialize(model, file, uploader_class = FileUploader)
|
||||
@model, @file, @uploader_class = model, file, uploader_class
|
||||
end
|
||||
|
|
@ -17,6 +15,6 @@ class UploadService
|
|||
private
|
||||
|
||||
def max_attachment_size
|
||||
current_application_settings.max_attachment_size.megabytes.to_i
|
||||
Gitlab::CurrentSettings.max_attachment_size.megabytes.to_i
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -1,7 +1,5 @@
|
|||
module Users
|
||||
class BuildService < BaseService
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
def initialize(current_user, params = {})
|
||||
@current_user = current_user
|
||||
@params = params.dup
|
||||
|
|
@ -34,7 +32,7 @@ module Users
|
|||
private
|
||||
|
||||
def can_create_user?
|
||||
(current_user.nil? && current_application_settings.allow_signup?) || current_user&.admin?
|
||||
(current_user.nil? && Gitlab::CurrentSettings.allow_signup?) || current_user&.admin?
|
||||
end
|
||||
|
||||
# Allowed params for creating a user (admins only)
|
||||
|
|
@ -102,7 +100,7 @@ module Users
|
|||
end
|
||||
|
||||
def skip_user_confirmation_email_from_setting
|
||||
!current_application_settings.send_user_confirmation_email
|
||||
!Gitlab::CurrentSettings.send_user_confirmation_email
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
= render 'callout'
|
||||
|
||||
.prepend-top-default
|
||||
- if !current_application_settings.usage_ping_enabled
|
||||
- if !Gitlab::CurrentSettings.usage_ping_enabled
|
||||
= render 'disabled'
|
||||
- elsif @metric.blank?
|
||||
= render 'no_data'
|
||||
|
|
|
|||
|
|
@ -119,7 +119,7 @@
|
|||
.well-segment.admin-well
|
||||
%h4
|
||||
Components
|
||||
- if current_application_settings.version_check_enabled
|
||||
- if Gitlab::CurrentSettings.version_check_enabled
|
||||
.pull-right
|
||||
= version_status_badge
|
||||
%p
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
.pull-left
|
||||
%p
|
||||
#{ s_('HealthCheck|Access token is') }
|
||||
%code#health-check-token= current_application_settings.health_check_access_token
|
||||
%code#health-check-token= Gitlab::CurrentSettings.health_check_access_token
|
||||
.prepend-top-10
|
||||
= button_to _("Reset health check access token"), reset_health_check_token_admin_application_settings_path,
|
||||
method: :put, class: 'btn btn-default',
|
||||
|
|
@ -18,11 +18,11 @@
|
|||
= link_to s_('More information is available|here'), help_page_path('user/admin_area/monitoring/health_check')
|
||||
%ul
|
||||
%li
|
||||
%code= readiness_url(token: current_application_settings.health_check_access_token)
|
||||
%code= readiness_url(token: Gitlab::CurrentSettings.health_check_access_token)
|
||||
%li
|
||||
%code= liveness_url(token: current_application_settings.health_check_access_token)
|
||||
%code= liveness_url(token: Gitlab::CurrentSettings.health_check_access_token)
|
||||
%li
|
||||
%code= metrics_url(token: current_application_settings.health_check_access_token)
|
||||
%code= metrics_url(token: Gitlab::CurrentSettings.health_check_access_token)
|
||||
|
||||
%hr
|
||||
.panel.panel-default
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@
|
|||
data: { confirm: _("Are you sure you want to reset registration token?") }
|
||||
|
||||
= render partial: 'ci/runner/how_to_setup_runner',
|
||||
locals: { registration_token: current_application_settings.runners_registration_token,
|
||||
locals: { registration_token: Gitlab::CurrentSettings.runners_registration_token,
|
||||
type: 'shared' }
|
||||
|
||||
.append-bottom-20.clearfix
|
||||
|
|
|
|||
|
|
@ -4,9 +4,9 @@
|
|||
%p.lead.append-bottom-20
|
||||
Please check your email to confirm your account
|
||||
%hr
|
||||
- if current_application_settings.after_sign_up_text.present?
|
||||
- if Gitlab::CurrentSettings.after_sign_up_text.present?
|
||||
.well-confirmation.text-center
|
||||
= markdown_field(current_application_settings, :after_sign_up_text)
|
||||
= markdown_field(Gitlab::CurrentSettings, :after_sign_up_text)
|
||||
%p.text-center
|
||||
No confirmation email received? Please check your spam folder or
|
||||
.append-bottom-20.prepend-top-20.text-center
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
= webpack_bundle_tag 'docs'
|
||||
|
||||
%div
|
||||
- if current_application_settings.help_page_text.present?
|
||||
= markdown_field(current_application_settings, :help_page_text)
|
||||
- if Gitlab::CurrentSettings.help_page_text.present?
|
||||
= markdown_field(Gitlab::CurrentSettings.current_application_settings, :help_page_text)
|
||||
%hr
|
||||
|
||||
%h1
|
||||
|
|
@ -14,7 +14,7 @@
|
|||
= version_status_badge
|
||||
%hr
|
||||
|
||||
- unless current_application_settings.help_page_hide_commercial_content?
|
||||
- unless Gitlab::CurrentSettings.help_page_hide_commercial_content?
|
||||
%p.slead
|
||||
GitLab is open source software to collaborate on code.
|
||||
%br
|
||||
|
|
@ -46,6 +46,6 @@
|
|||
%li
|
||||
%button.btn-blank.btn-link.js-trigger-shortcut{ type: 'button' }
|
||||
Use shortcuts
|
||||
- unless current_application_settings.help_page_hide_commercial_content?
|
||||
- unless Gitlab::CurrentSettings.help_page_hide_commercial_content?
|
||||
%li= link_to 'Get a support subscription', 'https://about.gitlab.com/pricing/'
|
||||
%li= link_to 'Compare GitLab editions', 'https://about.gitlab.com/features/#compare'
|
||||
|
|
|
|||
|
|
@ -3,4 +3,4 @@
|
|||
= icon('circle', class: 'cgreen')
|
||||
Integration is active for
|
||||
= link_to koding_project_url, target: '_blank', rel: 'noopener noreferrer' do
|
||||
#{current_application_settings.koding_url}
|
||||
#{Gitlab::CurrentSettings.koding_url}
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@
|
|||
= webpack_bundle_tag "webpack_runtime"
|
||||
= webpack_bundle_tag "common"
|
||||
= webpack_bundle_tag "main"
|
||||
= webpack_bundle_tag "raven" if current_application_settings.clientside_sentry_enabled
|
||||
= webpack_bundle_tag "raven" if Gitlab::CurrentSettings.clientside_sentry_enabled
|
||||
= webpack_bundle_tag "test" if Rails.env.test?
|
||||
|
||||
- if content_for?(:page_specific_javascripts)
|
||||
|
|
|
|||
|
|
@ -26,8 +26,8 @@
|
|||
Perform code reviews and enhance collaboration with merge requests.
|
||||
Each project can also have an issue tracker and a wiki.
|
||||
|
||||
- if current_application_settings.sign_in_text.present?
|
||||
= markdown_field(current_application_settings, :sign_in_text)
|
||||
- if Gitlab::CurrentSettings.sign_in_text.present?
|
||||
= markdown_field(Gitlab::CurrentSettings.current_application_settings, :sign_in_text)
|
||||
|
||||
%hr.footer-fixed
|
||||
.container.footer-container
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@
|
|||
= link_to profile_account_path do
|
||||
%strong.fly-out-top-item-name
|
||||
#{ _('Account') }
|
||||
- if current_application_settings.user_oauth_applications?
|
||||
- if Gitlab::CurrentSettings.user_oauth_applications?
|
||||
= nav_link(controller: 'oauth/applications') do
|
||||
= link_to applications_profile_path do
|
||||
.nav-icon-container
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@
|
|||
- else
|
||||
commented on a #{link_to 'discussion', @target_url}
|
||||
|
||||
- elsif current_application_settings.email_author_in_body
|
||||
- elsif Gitlab::CurrentSettings.email_author_in_body
|
||||
%p.details
|
||||
#{link_to @note.author_name, user_url(@note.author)} commented:
|
||||
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@
|
|||
<%= ":" -%>
|
||||
|
||||
|
||||
<% elsif current_application_settings.email_author_in_body -%>
|
||||
<% elsif Gitlab::CurrentSettings.email_author_in_body -%>
|
||||
<%= "#{@note.author_name} commented:" -%>
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
- if current_application_settings.email_author_in_body
|
||||
- if Gitlab::CurrentSettings.email_author_in_body
|
||||
%p.details
|
||||
#{link_to @issue.author_name, user_url(@issue.author)} created an issue:
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
- if current_application_settings.email_author_in_body
|
||||
- if Gitlab::CurrentSettings.email_author_in_body
|
||||
%p.details
|
||||
#{link_to @merge_request.author_name, user_url(@merge_request.author)} created a merge request:
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
%p
|
||||
Hi #{@user['name']}!
|
||||
%p
|
||||
- if current_application_settings.allow_signup?
|
||||
- if Gitlab::CurrentSettings.allow_signup?
|
||||
Your account has been created successfully.
|
||||
- else
|
||||
The Administrator created an account for you. Now you are a member of the company GitLab application.
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
- return unless current_application_settings.project_export_enabled?
|
||||
- return unless Gitlab::CurrentSettings.project_export_enabled?
|
||||
|
||||
- project = local_assigns.fetch(:project)
|
||||
- expanded = Rails.env.test?
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
- link = commit_path(project, commit, merge_request: merge_request)
|
||||
- cache_key = [project.full_path,
|
||||
commit.id,
|
||||
current_application_settings,
|
||||
Gitlab::CurrentSettings.current_application_settings,
|
||||
@path.presence,
|
||||
current_controller?(:commits),
|
||||
merge_request&.iid,
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@
|
|||
.radio
|
||||
= form.label :enabled_ do
|
||||
= form.radio_button :enabled, ''
|
||||
%strong Instance default (#{current_application_settings.auto_devops_enabled? ? 'enabled' : 'disabled'})
|
||||
%strong Instance default (#{Gitlab::CurrentSettings.auto_devops_enabled? ? 'enabled' : 'disabled'})
|
||||
%br
|
||||
%span.descr
|
||||
Follow the instance default to either have Auto DevOps enabled or disabled when there is no project specific <code>.gitlab-ci.yml</code>.
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
%h3 Shared Runners
|
||||
|
||||
.bs-callout.bs-callout-warning.shared-runners-description
|
||||
- if current_application_settings.shared_runners_text.present?
|
||||
= markdown_field(current_application_settings, :shared_runners_text)
|
||||
- if Gitlab::CurrentSettings.shared_runners_text.present?
|
||||
= markdown_field(Gitlab::CurrentSettings.current_application_settings, :shared_runners_text)
|
||||
- else
|
||||
GitLab Shared Runners execute code of different projects on the same Runner
|
||||
unless you configure GitLab Runner Autoscale with MaxBuilds 1 (which it is
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
class GitGarbageCollectWorker
|
||||
include ApplicationWorker
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
sidekiq_options retry: false
|
||||
|
||||
|
|
@ -102,7 +101,7 @@ class GitGarbageCollectWorker
|
|||
end
|
||||
|
||||
def bitmaps_enabled?
|
||||
current_application_settings.housekeeping_bitmaps_enabled
|
||||
Gitlab::CurrentSettings.housekeeping_bitmaps_enabled
|
||||
end
|
||||
|
||||
def git(write_bitmaps:)
|
||||
|
|
|
|||
|
|
@ -1,15 +1,13 @@
|
|||
module API
|
||||
module Helpers
|
||||
module Runner
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
JOB_TOKEN_HEADER = 'HTTP_JOB_TOKEN'.freeze
|
||||
JOB_TOKEN_PARAM = :token
|
||||
UPDATE_RUNNER_EVERY = 10 * 60
|
||||
|
||||
def runner_registration_token_valid?
|
||||
ActiveSupport::SecurityUtils.variable_size_secure_compare(params[:token],
|
||||
current_application_settings.runners_registration_token)
|
||||
Gitlab::CurrentSettings.runners_registration_token)
|
||||
end
|
||||
|
||||
def get_runner_version_from_params
|
||||
|
|
@ -70,7 +68,7 @@ module API
|
|||
end
|
||||
|
||||
def max_artifacts_size
|
||||
current_application_settings.max_artifacts_size.megabytes.to_i
|
||||
Gitlab::CurrentSettings.max_artifacts_size.megabytes.to_i
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -1,10 +1,8 @@
|
|||
# Read about interceptors in http://guides.rubyonrails.org/action_mailer_basics.html#intercepting-emails
|
||||
class EmailTemplateInterceptor
|
||||
extend Gitlab::CurrentSettings
|
||||
|
||||
def self.delivering_email(message)
|
||||
# Remove HTML part if HTML emails are disabled.
|
||||
unless current_application_settings.html_emails_enabled
|
||||
unless Gitlab::CurrentSettings.html_emails_enabled
|
||||
message.parts.delete_if do |part|
|
||||
part.content_type.start_with?('text/html')
|
||||
end
|
||||
|
|
|
|||
|
|
@ -6,8 +6,6 @@ module Gitlab
|
|||
# Parser/renderer for the AsciiDoc format that uses Asciidoctor and filters
|
||||
# the resulting HTML through HTML pipeline filters.
|
||||
module Asciidoc
|
||||
extend Gitlab::CurrentSettings
|
||||
|
||||
DEFAULT_ADOC_ATTRS = [
|
||||
'showtitle', 'idprefix=user-content-', 'idseparator=-', 'env=gitlab',
|
||||
'env-gitlab', 'source-highlighter=html-pipeline', 'icons=font'
|
||||
|
|
@ -33,9 +31,9 @@ module Gitlab
|
|||
|
||||
def self.plantuml_setup
|
||||
Asciidoctor::PlantUml.configure do |conf|
|
||||
conf.url = current_application_settings.plantuml_url
|
||||
conf.svg_enable = current_application_settings.plantuml_enabled
|
||||
conf.png_enable = current_application_settings.plantuml_enabled
|
||||
conf.url = Gitlab::CurrentSettings.plantuml_url
|
||||
conf.svg_enable = Gitlab::CurrentSettings.plantuml_enabled
|
||||
conf.png_enable = Gitlab::CurrentSettings.plantuml_enabled
|
||||
conf.txt_enable = false
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -14,8 +14,6 @@ module Gitlab
|
|||
DEFAULT_SCOPES = [:api].freeze
|
||||
|
||||
class << self
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
def find_for_git_client(login, password, project:, ip:)
|
||||
raise "Must provide an IP for rate limiting" if ip.nil?
|
||||
|
||||
|
|
@ -57,7 +55,7 @@ module Gitlab
|
|||
if user.nil? || user.ldap_user?
|
||||
# Second chance - try LDAP authentication
|
||||
Gitlab::LDAP::Authentication.login(login, password)
|
||||
elsif current_application_settings.password_authentication_enabled_for_git?
|
||||
elsif Gitlab::CurrentSettings.password_authentication_enabled_for_git?
|
||||
user if user.active? && user.valid_password?(password)
|
||||
end
|
||||
end
|
||||
|
|
@ -87,7 +85,7 @@ module Gitlab
|
|||
private
|
||||
|
||||
def authenticate_using_internal_or_ldap_password?
|
||||
current_application_settings.password_authentication_enabled_for_git? || Gitlab::LDAP::Config.enabled?
|
||||
Gitlab::CurrentSettings.password_authentication_enabled_for_git? || Gitlab::LDAP::Config.enabled?
|
||||
end
|
||||
|
||||
def service_request_check(login, password, project)
|
||||
|
|
|
|||
|
|
@ -1,73 +1,79 @@
|
|||
module Gitlab
|
||||
module CurrentSettings
|
||||
extend self
|
||||
|
||||
def current_application_settings
|
||||
if RequestStore.active?
|
||||
RequestStore.fetch(:current_application_settings) { ensure_application_settings! }
|
||||
else
|
||||
ensure_application_settings!
|
||||
end
|
||||
end
|
||||
|
||||
delegate :sidekiq_throttling_enabled?, to: :current_application_settings
|
||||
|
||||
def fake_application_settings(defaults = ::ApplicationSetting.defaults)
|
||||
FakeApplicationSettings.new(defaults)
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def ensure_application_settings!
|
||||
return in_memory_application_settings if ENV['IN_MEMORY_APPLICATION_SETTINGS'] == 'true'
|
||||
|
||||
cached_application_settings || uncached_application_settings
|
||||
end
|
||||
|
||||
def cached_application_settings
|
||||
begin
|
||||
::ApplicationSetting.cached
|
||||
rescue ::Redis::BaseError, ::Errno::ENOENT, ::Errno::EADDRNOTAVAIL
|
||||
# In case Redis isn't running or the Redis UNIX socket file is not available
|
||||
end
|
||||
end
|
||||
|
||||
def uncached_application_settings
|
||||
return fake_application_settings unless connect_to_db?
|
||||
|
||||
db_settings = ::ApplicationSetting.current
|
||||
|
||||
# If there are pending migrations, it's possible there are columns that
|
||||
# need to be added to the application settings. To prevent Rake tasks
|
||||
# and other callers from failing, use any loaded settings and return
|
||||
# defaults for missing columns.
|
||||
if ActiveRecord::Migrator.needs_migration?
|
||||
defaults = ::ApplicationSetting.defaults
|
||||
defaults.merge!(db_settings.attributes.symbolize_keys) if db_settings.present?
|
||||
return fake_application_settings(defaults)
|
||||
class << self
|
||||
def current_application_settings
|
||||
if RequestStore.active?
|
||||
RequestStore.fetch(:current_application_settings) { ensure_application_settings! }
|
||||
else
|
||||
ensure_application_settings!
|
||||
end
|
||||
end
|
||||
|
||||
return db_settings if db_settings.present?
|
||||
def fake_application_settings(defaults = ::ApplicationSetting.defaults)
|
||||
Gitlab::FakeApplicationSettings.new(defaults)
|
||||
end
|
||||
|
||||
::ApplicationSetting.create_from_defaults || in_memory_application_settings
|
||||
end
|
||||
def method_missing(name, *args, &block)
|
||||
current_application_settings.send(name, *args, &block) # rubocop:disable GitlabSecurity/PublicSend
|
||||
end
|
||||
|
||||
def in_memory_application_settings
|
||||
@in_memory_application_settings ||= ::ApplicationSetting.new(::ApplicationSetting.defaults) # rubocop:disable Gitlab/ModuleWithInstanceVariables
|
||||
rescue ActiveRecord::StatementInvalid, ActiveRecord::UnknownAttributeError
|
||||
# In case migrations the application_settings table is not created yet,
|
||||
# we fallback to a simple OpenStruct
|
||||
fake_application_settings
|
||||
end
|
||||
def respond_to_missing?(name, include_private = false)
|
||||
current_application_settings.respond_to?(name, include_private) || super
|
||||
end
|
||||
|
||||
def connect_to_db?
|
||||
# When the DBMS is not available, an exception (e.g. PG::ConnectionBad) is raised
|
||||
active_db_connection = ActiveRecord::Base.connection.active? rescue false
|
||||
private
|
||||
|
||||
active_db_connection &&
|
||||
ActiveRecord::Base.connection.table_exists?('application_settings')
|
||||
rescue ActiveRecord::NoDatabaseError
|
||||
false
|
||||
def ensure_application_settings!
|
||||
return in_memory_application_settings if ENV['IN_MEMORY_APPLICATION_SETTINGS'] == 'true'
|
||||
|
||||
cached_application_settings || uncached_application_settings
|
||||
end
|
||||
|
||||
def cached_application_settings
|
||||
begin
|
||||
::ApplicationSetting.cached
|
||||
rescue ::Redis::BaseError, ::Errno::ENOENT, ::Errno::EADDRNOTAVAIL
|
||||
# In case Redis isn't running or the Redis UNIX socket file is not available
|
||||
end
|
||||
end
|
||||
|
||||
def uncached_application_settings
|
||||
return fake_application_settings unless connect_to_db?
|
||||
|
||||
db_settings = ::ApplicationSetting.current
|
||||
|
||||
# If there are pending migrations, it's possible there are columns that
|
||||
# need to be added to the application settings. To prevent Rake tasks
|
||||
# and other callers from failing, use any loaded settings and return
|
||||
# defaults for missing columns.
|
||||
if ActiveRecord::Migrator.needs_migration?
|
||||
defaults = ::ApplicationSetting.defaults
|
||||
defaults.merge!(db_settings.attributes.symbolize_keys) if db_settings.present?
|
||||
return fake_application_settings(defaults)
|
||||
end
|
||||
|
||||
return db_settings if db_settings.present?
|
||||
|
||||
::ApplicationSetting.create_from_defaults || in_memory_application_settings
|
||||
end
|
||||
|
||||
def in_memory_application_settings
|
||||
@in_memory_application_settings ||= ::ApplicationSetting.new(::ApplicationSetting.defaults) # rubocop:disable Gitlab/ModuleWithInstanceVariables
|
||||
rescue ActiveRecord::StatementInvalid, ActiveRecord::UnknownAttributeError
|
||||
# In case migrations the application_settings table is not created yet,
|
||||
# we fallback to a simple OpenStruct
|
||||
fake_application_settings
|
||||
end
|
||||
|
||||
def connect_to_db?
|
||||
# When the DBMS is not available, an exception (e.g. PG::ConnectionBad) is raised
|
||||
active_db_connection = ActiveRecord::Base.connection.active? rescue false
|
||||
|
||||
active_db_connection &&
|
||||
ActiveRecord::Base.connection.table_exists?('application_settings')
|
||||
rescue ActiveRecord::NoDatabaseError
|
||||
false
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -3,12 +3,11 @@
|
|||
module Gitlab
|
||||
module GonHelper
|
||||
include WebpackHelper
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
def add_gon_variables
|
||||
gon.api_version = 'v4'
|
||||
gon.default_avatar_url = URI.join(Gitlab.config.gitlab.url, ActionController::Base.helpers.image_path('no_avatar.png')).to_s
|
||||
gon.max_file_size = current_application_settings.max_attachment_size
|
||||
gon.max_file_size = Gitlab::CurrentSettings.max_attachment_size
|
||||
gon.asset_host = ActionController::Base.asset_host
|
||||
gon.webpack_public_path = webpack_public_path
|
||||
gon.relative_url_root = Gitlab.config.gitlab.relative_url_root
|
||||
|
|
@ -16,7 +15,7 @@ module Gitlab
|
|||
gon.user_color_scheme = Gitlab::ColorSchemes.for_user(current_user).css_class
|
||||
gon.katex_css_url = ActionController::Base.helpers.asset_path('katex.css')
|
||||
gon.katex_js_url = ActionController::Base.helpers.asset_path('katex.js')
|
||||
gon.sentry_dsn = current_application_settings.clientside_sentry_dsn if current_application_settings.clientside_sentry_enabled
|
||||
gon.sentry_dsn = Gitlab::CurrentSettings.clientside_sentry_dsn if Gitlab::CurrentSettings.clientside_sentry_enabled
|
||||
gon.gitlab_url = Gitlab.config.gitlab.url
|
||||
gon.revision = Gitlab::REVISION
|
||||
gon.gitlab_logo = ActionController::Base.helpers.asset_path('gitlab_logo.png')
|
||||
|
|
|
|||
|
|
@ -1,8 +1,6 @@
|
|||
module Gitlab
|
||||
module LegacyGithubImport
|
||||
class ProjectCreator
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
attr_reader :repo, :name, :namespace, :current_user, :session_data, :type
|
||||
|
||||
def initialize(repo, name, namespace, current_user, session_data, type: 'github')
|
||||
|
|
@ -36,7 +34,7 @@ module Gitlab
|
|||
end
|
||||
|
||||
def visibility_level
|
||||
repo.private ? Gitlab::VisibilityLevel::PRIVATE : current_application_settings.default_project_visibility
|
||||
repo.private ? Gitlab::VisibilityLevel::PRIVATE : Gitlab::CurrentSettings.default_project_visibility
|
||||
end
|
||||
|
||||
#
|
||||
|
|
|
|||
|
|
@ -71,8 +71,7 @@ module Gitlab
|
|||
end
|
||||
|
||||
def prometheus_metrics_enabled_unmemoized
|
||||
metrics_folder_present? &&
|
||||
Gitlab::CurrentSettings.current_application_settings[:prometheus_metrics_enabled] || false
|
||||
metrics_folder_present? && Gitlab::CurrentSettings.prometheus_metrics_enabled || false
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@ module Gitlab
|
|||
module Middleware
|
||||
class Go
|
||||
include ActionView::Helpers::TagHelper
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
PROJECT_PATH_REGEX = %r{\A(#{Gitlab::PathRegex.full_namespace_route_regex}/#{Gitlab::PathRegex.project_route_regex})/}.freeze
|
||||
|
||||
|
|
@ -42,7 +41,7 @@ module Gitlab
|
|||
project_url = URI.join(config.gitlab.url, path)
|
||||
import_prefix = strip_url(project_url.to_s)
|
||||
|
||||
repository_url = if current_application_settings.enabled_git_access_protocol == 'ssh'
|
||||
repository_url = if Gitlab::CurrentSettings.enabled_git_access_protocol == 'ssh'
|
||||
shell = config.gitlab_shell
|
||||
port = ":#{shell.ssh_port}" unless shell.ssh_port == 22
|
||||
"ssh://#{shell.ssh_user}@#{shell.ssh_host}#{port}/#{path}.git"
|
||||
|
|
|
|||
|
|
@ -1,7 +1,5 @@
|
|||
module Gitlab
|
||||
module PerformanceBar
|
||||
extend Gitlab::CurrentSettings
|
||||
|
||||
ALLOWED_USER_IDS_KEY = 'performance_bar_allowed_user_ids:v2'.freeze
|
||||
EXPIRY_TIME = 5.minutes
|
||||
|
||||
|
|
@ -13,7 +11,7 @@ module Gitlab
|
|||
end
|
||||
|
||||
def self.allowed_group_id
|
||||
current_application_settings.performance_bar_allowed_group_id
|
||||
Gitlab::CurrentSettings.performance_bar_allowed_group_id
|
||||
end
|
||||
|
||||
def self.allowed_user_ids
|
||||
|
|
|
|||
|
|
@ -1,12 +1,10 @@
|
|||
module Gitlab
|
||||
class PollingInterval
|
||||
extend Gitlab::CurrentSettings
|
||||
|
||||
HEADER_NAME = 'Poll-Interval'.freeze
|
||||
|
||||
def self.set_header(response, interval:)
|
||||
if polling_enabled?
|
||||
multiplier = current_application_settings.polling_interval_multiplier
|
||||
multiplier = Gitlab::CurrentSettings.polling_interval_multiplier
|
||||
value = (interval * multiplier).to_i
|
||||
else
|
||||
value = -1
|
||||
|
|
@ -16,7 +14,7 @@ module Gitlab
|
|||
end
|
||||
|
||||
def self.polling_enabled?
|
||||
!current_application_settings.polling_interval_multiplier.zero?
|
||||
!Gitlab::CurrentSettings.polling_interval_multiplier.zero?
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -1,14 +1,12 @@
|
|||
module Gitlab
|
||||
module ProtocolAccess
|
||||
extend Gitlab::CurrentSettings
|
||||
|
||||
def self.allowed?(protocol)
|
||||
if protocol == 'web'
|
||||
true
|
||||
elsif current_application_settings.enabled_git_access_protocol.blank?
|
||||
elsif Gitlab::CurrentSettings.enabled_git_access_protocol.blank?
|
||||
true
|
||||
else
|
||||
protocol == current_application_settings.enabled_git_access_protocol
|
||||
protocol == Gitlab::CurrentSettings.enabled_git_access_protocol
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -1,12 +1,10 @@
|
|||
module Gitlab
|
||||
module Recaptcha
|
||||
extend Gitlab::CurrentSettings
|
||||
|
||||
def self.load_configurations!
|
||||
if current_application_settings.recaptcha_enabled
|
||||
if Gitlab::CurrentSettings.recaptcha_enabled
|
||||
::Recaptcha.configure do |config|
|
||||
config.public_key = current_application_settings.recaptcha_site_key
|
||||
config.private_key = current_application_settings.recaptcha_private_key
|
||||
config.public_key = Gitlab::CurrentSettings.recaptcha_site_key
|
||||
config.private_key = Gitlab::CurrentSettings.recaptcha_private_key
|
||||
end
|
||||
|
||||
true
|
||||
|
|
@ -14,7 +12,7 @@ module Gitlab
|
|||
end
|
||||
|
||||
def self.enabled?
|
||||
current_application_settings.recaptcha_enabled
|
||||
Gitlab::CurrentSettings.recaptcha_enabled
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -1,9 +1,7 @@
|
|||
module Gitlab
|
||||
module Sentry
|
||||
extend Gitlab::CurrentSettings
|
||||
|
||||
def self.enabled?
|
||||
Rails.env.production? && current_application_settings.sentry_enabled?
|
||||
Rails.env.production? && Gitlab::CurrentSettings.sentry_enabled?
|
||||
end
|
||||
|
||||
def self.context(current_user = nil)
|
||||
|
|
|
|||
|
|
@ -1,8 +1,6 @@
|
|||
module Gitlab
|
||||
class UsageData
|
||||
class << self
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
def data(force_refresh: false)
|
||||
Rails.cache.fetch('usage_data', force: force_refresh, expires_in: 2.weeks) { uncached_data }
|
||||
end
|
||||
|
|
@ -19,7 +17,7 @@ module Gitlab
|
|||
|
||||
def license_usage_data
|
||||
usage_data = {
|
||||
uuid: current_application_settings.uuid,
|
||||
uuid: Gitlab::CurrentSettings.uuid,
|
||||
hostname: Gitlab.config.gitlab.host,
|
||||
version: Gitlab::VERSION,
|
||||
active_user_count: User.active.count,
|
||||
|
|
@ -79,9 +77,9 @@ module Gitlab
|
|||
|
||||
def features_usage_data_ce
|
||||
{
|
||||
signup: current_application_settings.allow_signup?,
|
||||
signup: Gitlab::CurrentSettings.allow_signup?,
|
||||
ldap: Gitlab.config.ldap.enabled,
|
||||
gravatar: current_application_settings.gravatar_enabled?,
|
||||
gravatar: Gitlab::CurrentSettings.gravatar_enabled?,
|
||||
omniauth: Gitlab.config.omniauth.enabled,
|
||||
reply_by_email: Gitlab::IncomingEmail.enabled?,
|
||||
container_registry: Gitlab.config.registry.enabled,
|
||||
|
|
|
|||
|
|
@ -5,7 +5,6 @@
|
|||
#
|
||||
module Gitlab
|
||||
module VisibilityLevel
|
||||
extend CurrentSettings
|
||||
extend ActiveSupport::Concern
|
||||
|
||||
included do
|
||||
|
|
@ -58,7 +57,7 @@ module Gitlab
|
|||
end
|
||||
|
||||
def allowed_levels
|
||||
restricted_levels = current_application_settings.restricted_visibility_levels
|
||||
restricted_levels = Gitlab::CurrentSettings.restricted_visibility_levels
|
||||
|
||||
self.values - restricted_levels
|
||||
end
|
||||
|
|
@ -81,7 +80,7 @@ module Gitlab
|
|||
end
|
||||
|
||||
def non_restricted_level?(level)
|
||||
restricted_levels = current_application_settings.restricted_visibility_levels
|
||||
restricted_levels = Gitlab::CurrentSettings.restricted_visibility_levels
|
||||
|
||||
if restricted_levels.nil?
|
||||
true
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ describe HealthCheckController do
|
|||
|
||||
let(:json_response) { JSON.parse(response.body) }
|
||||
let(:xml_response) { Hash.from_xml(response.body)['hash'] }
|
||||
let(:token) { current_application_settings.health_check_access_token }
|
||||
let(:token) { Gitlab::CurrentSettings.health_check_access_token }
|
||||
let(:whitelisted_ip) { '127.0.0.1' }
|
||||
let(:not_whitelisted_ip) { '127.0.0.2' }
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ describe HealthController do
|
|||
include StubENV
|
||||
|
||||
let(:json_response) { JSON.parse(response.body) }
|
||||
let(:token) { current_application_settings.health_check_access_token }
|
||||
let(:token) { Gitlab::CurrentSettings.health_check_access_token }
|
||||
let(:whitelisted_ip) { '127.0.0.1' }
|
||||
let(:not_whitelisted_ip) { '127.0.0.2' }
|
||||
|
||||
|
|
|
|||
|
|
@ -16,8 +16,7 @@ describe Oauth::ApplicationsController do
|
|||
end
|
||||
|
||||
it 'redirects back to profile page if OAuth applications are disabled' do
|
||||
settings = double(user_oauth_applications?: false)
|
||||
allow_any_instance_of(Gitlab::CurrentSettings).to receive(:current_application_settings).and_return(settings)
|
||||
allow(Gitlab::CurrentSettings.current_application_settings).to receive(:user_oauth_applications?).and_return(false)
|
||||
|
||||
get :index
|
||||
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ feature "Admin Health Check", :feature do
|
|||
page.has_text? 'Health Check'
|
||||
page.has_text? 'Health information can be retrieved'
|
||||
|
||||
token = current_application_settings.health_check_access_token
|
||||
token = Gitlab::CurrentSettings.health_check_access_token
|
||||
|
||||
expect(page).to have_content("Access token is #{token}")
|
||||
expect(page).to have_selector('#health-check-token', text: token)
|
||||
|
|
@ -25,7 +25,7 @@ feature "Admin Health Check", :feature do
|
|||
|
||||
describe 'reload access token' do
|
||||
it 'changes the access token' do
|
||||
orig_token = current_application_settings.health_check_access_token
|
||||
orig_token = Gitlab::CurrentSettings.health_check_access_token
|
||||
click_button 'Reset health check access token'
|
||||
|
||||
expect(page).to have_content('New health check access token has been generated!')
|
||||
|
|
|
|||
|
|
@ -156,7 +156,7 @@ describe "Admin Runners" do
|
|||
end
|
||||
|
||||
describe 'runners registration token' do
|
||||
let!(:token) { current_application_settings.runners_registration_token }
|
||||
let!(:token) { Gitlab::CurrentSettings.runners_registration_token }
|
||||
|
||||
before do
|
||||
visit admin_runners_path
|
||||
|
|
|
|||
|
|
@ -38,12 +38,12 @@ feature 'Admin updates settings' do
|
|||
uncheck 'Project export enabled'
|
||||
click_button 'Save'
|
||||
|
||||
expect(current_application_settings.gravatar_enabled).to be_falsey
|
||||
expect(current_application_settings.home_page_url).to eq "https://about.gitlab.com/"
|
||||
expect(current_application_settings.help_page_text).to eq "Example text"
|
||||
expect(current_application_settings.help_page_hide_commercial_content).to be_truthy
|
||||
expect(current_application_settings.help_page_support_url).to eq "http://example.com/help"
|
||||
expect(current_application_settings.project_export_enabled).to be_falsey
|
||||
expect(Gitlab::CurrentSettings.gravatar_enabled).to be_falsey
|
||||
expect(Gitlab::CurrentSettings.home_page_url).to eq "https://about.gitlab.com/"
|
||||
expect(Gitlab::CurrentSettings.help_page_text).to eq "Example text"
|
||||
expect(Gitlab::CurrentSettings.help_page_hide_commercial_content).to be_truthy
|
||||
expect(Gitlab::CurrentSettings.help_page_support_url).to eq "http://example.com/help"
|
||||
expect(Gitlab::CurrentSettings.project_export_enabled).to be_falsey
|
||||
expect(page).to have_content "Application settings saved successfully"
|
||||
end
|
||||
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ describe 'New issue', :js do
|
|||
before do
|
||||
stub_env('IN_MEMORY_APPLICATION_SETTINGS', 'false')
|
||||
|
||||
current_application_settings.update!(
|
||||
Gitlab::CurrentSettings.update!(
|
||||
akismet_enabled: true,
|
||||
akismet_api_key: 'testkey',
|
||||
recaptcha_enabled: true,
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ describe VersionCheckHelper do
|
|||
describe '#version_status_badge' do
|
||||
it 'should return nil if not dev environment and not enabled' do
|
||||
allow(Rails.env).to receive(:production?) { false }
|
||||
allow(helper.current_application_settings).to receive(:version_check_enabled) { false }
|
||||
allow(Gitlab::CurrentSettings.current_application_settings).to receive(:version_check_enabled) { false }
|
||||
|
||||
expect(helper.version_status_badge).to be(nil)
|
||||
end
|
||||
|
|
@ -12,7 +12,7 @@ describe VersionCheckHelper do
|
|||
context 'when production and enabled' do
|
||||
before do
|
||||
allow(Rails.env).to receive(:production?) { true }
|
||||
allow(helper.current_application_settings).to receive(:version_check_enabled) { true }
|
||||
allow(Gitlab::CurrentSettings.current_application_settings).to receive(:version_check_enabled) { true }
|
||||
allow_any_instance_of(VersionCheck).to receive(:url) { 'https://version.host.com/check.svg?gitlab_info=xxx' }
|
||||
|
||||
@image_tag = helper.version_status_badge
|
||||
|
|
|
|||
|
|
@ -8,22 +8,37 @@ describe Gitlab::CurrentSettings do
|
|||
end
|
||||
|
||||
describe '#current_application_settings' do
|
||||
it 'allows keys to be called directly' do
|
||||
db_settings = create(:application_setting,
|
||||
home_page_url: 'http://mydomain.com',
|
||||
signup_enabled: false)
|
||||
|
||||
expect(described_class.home_page_url).to eq(db_settings.home_page_url)
|
||||
expect(described_class.signup_enabled?).to be_falsey
|
||||
expect(described_class.signup_enabled).to be_falsey
|
||||
expect(described_class.metrics_sample_interval).to be(15)
|
||||
end
|
||||
|
||||
context 'with DB available' do
|
||||
before do
|
||||
allow_any_instance_of(described_class).to receive(:connect_to_db?).and_return(true)
|
||||
# For some reason, `allow(described_class).to receive(:connect_to_db?).and_return(true)` causes issues
|
||||
# during the initialization phase of the test suite, so instead let's mock the internals of it
|
||||
allow(ActiveRecord::Base.connection).to receive(:active?).and_return(true)
|
||||
allow(ActiveRecord::Base.connection).to receive(:table_exists?).and_call_original
|
||||
allow(ActiveRecord::Base.connection).to receive(:table_exists?).with('application_settings').and_return(true)
|
||||
end
|
||||
|
||||
it 'attempts to use cached values first' do
|
||||
expect(ApplicationSetting).to receive(:cached)
|
||||
|
||||
expect(current_application_settings).to be_a(ApplicationSetting)
|
||||
expect(described_class.current_application_settings).to be_a(ApplicationSetting)
|
||||
end
|
||||
|
||||
it 'falls back to DB if Redis returns an empty value' do
|
||||
expect(ApplicationSetting).to receive(:cached).and_return(nil)
|
||||
expect(ApplicationSetting).to receive(:last).and_call_original.twice
|
||||
|
||||
expect(current_application_settings).to be_a(ApplicationSetting)
|
||||
expect(described_class.current_application_settings).to be_a(ApplicationSetting)
|
||||
end
|
||||
|
||||
it 'falls back to DB if Redis fails' do
|
||||
|
|
@ -32,14 +47,14 @@ describe Gitlab::CurrentSettings do
|
|||
expect(ApplicationSetting).to receive(:cached).and_raise(::Redis::BaseError)
|
||||
expect(Rails.cache).to receive(:fetch).with(ApplicationSetting::CACHE_KEY).and_raise(Redis::BaseError)
|
||||
|
||||
expect(current_application_settings).to eq(db_settings)
|
||||
expect(described_class.current_application_settings).to eq(db_settings)
|
||||
end
|
||||
|
||||
it 'creates default ApplicationSettings if none are present' do
|
||||
expect(ApplicationSetting).to receive(:cached).and_raise(::Redis::BaseError)
|
||||
expect(Rails.cache).to receive(:fetch).with(ApplicationSetting::CACHE_KEY).and_raise(Redis::BaseError)
|
||||
|
||||
settings = current_application_settings
|
||||
settings = described_class.current_application_settings
|
||||
|
||||
expect(settings).to be_a(ApplicationSetting)
|
||||
expect(settings).to be_persisted
|
||||
|
|
@ -52,7 +67,7 @@ describe Gitlab::CurrentSettings do
|
|||
end
|
||||
|
||||
it 'returns an in-memory ApplicationSetting object' do
|
||||
settings = current_application_settings
|
||||
settings = described_class.current_application_settings
|
||||
|
||||
expect(settings).to be_a(OpenStruct)
|
||||
expect(settings.sign_in_enabled?).to eq(settings.sign_in_enabled)
|
||||
|
|
@ -63,7 +78,7 @@ describe Gitlab::CurrentSettings do
|
|||
db_settings = create(:application_setting,
|
||||
home_page_url: 'http://mydomain.com',
|
||||
signup_enabled: false)
|
||||
settings = current_application_settings
|
||||
settings = described_class.current_application_settings
|
||||
app_defaults = ApplicationSetting.last
|
||||
|
||||
expect(settings).to be_a(OpenStruct)
|
||||
|
|
@ -80,15 +95,16 @@ describe Gitlab::CurrentSettings do
|
|||
|
||||
context 'with DB unavailable' do
|
||||
before do
|
||||
allow_any_instance_of(described_class).to receive(:connect_to_db?).and_return(false)
|
||||
allow_any_instance_of(described_class).to receive(:retrieve_settings_from_database_cache?).and_return(nil)
|
||||
# For some reason, `allow(described_class).to receive(:connect_to_db?).and_return(false)` causes issues
|
||||
# during the initialization phase of the test suite, so instead let's mock the internals of it
|
||||
allow(ActiveRecord::Base.connection).to receive(:active?).and_return(false)
|
||||
end
|
||||
|
||||
it 'returns an in-memory ApplicationSetting object' do
|
||||
expect(ApplicationSetting).not_to receive(:current)
|
||||
expect(ApplicationSetting).not_to receive(:last)
|
||||
|
||||
expect(current_application_settings).to be_a(OpenStruct)
|
||||
expect(described_class.current_application_settings).to be_a(OpenStruct)
|
||||
end
|
||||
end
|
||||
|
||||
|
|
@ -101,8 +117,8 @@ describe Gitlab::CurrentSettings do
|
|||
expect(ApplicationSetting).not_to receive(:current)
|
||||
expect(ApplicationSetting).not_to receive(:last)
|
||||
|
||||
expect(current_application_settings).to be_a(ApplicationSetting)
|
||||
expect(current_application_settings).not_to be_persisted
|
||||
expect(described_class.current_application_settings).to be_a(ApplicationSetting)
|
||||
expect(described_class.current_application_settings).not_to be_persisted
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ describe Gitlab::Metrics do
|
|||
|
||||
context 'prometheus metrics enabled in config' do
|
||||
before do
|
||||
allow(Gitlab::CurrentSettings).to receive(:current_application_settings).and_return(prometheus_metrics_enabled: true)
|
||||
allow(Gitlab::CurrentSettings).to receive(:prometheus_metrics_enabled).and_return(true)
|
||||
end
|
||||
|
||||
context 'when metrics folder is present' do
|
||||
|
|
|
|||
|
|
@ -103,9 +103,9 @@ describe Gitlab::UsageData do
|
|||
subject { described_class.features_usage_data_ce }
|
||||
|
||||
it 'gathers feature usage data' do
|
||||
expect(subject[:signup]).to eq(current_application_settings.allow_signup?)
|
||||
expect(subject[:signup]).to eq(Gitlab::CurrentSettings.allow_signup?)
|
||||
expect(subject[:ldap]).to eq(Gitlab.config.ldap.enabled)
|
||||
expect(subject[:gravatar]).to eq(current_application_settings.gravatar_enabled?)
|
||||
expect(subject[:gravatar]).to eq(Gitlab::CurrentSettings.gravatar_enabled?)
|
||||
expect(subject[:omniauth]).to eq(Gitlab.config.omniauth.enabled)
|
||||
expect(subject[:reply_by_email]).to eq(Gitlab::IncomingEmail.enabled?)
|
||||
expect(subject[:container_registry]).to eq(Gitlab.config.registry.enabled)
|
||||
|
|
@ -129,7 +129,7 @@ describe Gitlab::UsageData do
|
|||
subject { described_class.license_usage_data }
|
||||
|
||||
it "gathers license data" do
|
||||
expect(subject[:uuid]).to eq(current_application_settings.uuid)
|
||||
expect(subject[:uuid]).to eq(Gitlab::CurrentSettings.uuid)
|
||||
expect(subject[:version]).to eq(Gitlab::VERSION)
|
||||
expect(subject[:active_user_count]).to eq(User.active.count)
|
||||
expect(subject[:recorded_at]).to be_a(Time)
|
||||
|
|
|
|||
|
|
@ -1,13 +1,6 @@
|
|||
require 'spec_helper'
|
||||
|
||||
describe Key, :mailer do
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
describe 'modules' do
|
||||
subject { described_class }
|
||||
it { is_expected.to include_module(Gitlab::CurrentSettings) }
|
||||
end
|
||||
|
||||
describe "Associations" do
|
||||
it { is_expected.to belong_to(:user) }
|
||||
end
|
||||
|
|
|
|||
|
|
@ -17,8 +17,6 @@ describe Note do
|
|||
it { is_expected.to include_module(Participable) }
|
||||
it { is_expected.to include_module(Mentionable) }
|
||||
it { is_expected.to include_module(Awardable) }
|
||||
|
||||
it { is_expected.to include_module(Gitlab::CurrentSettings) }
|
||||
end
|
||||
|
||||
describe 'validation' do
|
||||
|
|
|
|||
|
|
@ -117,7 +117,6 @@ describe Project do
|
|||
it { is_expected.to include_module(Gitlab::ConfigHelper) }
|
||||
it { is_expected.to include_module(Gitlab::ShellAdapter) }
|
||||
it { is_expected.to include_module(Gitlab::VisibilityLevel) }
|
||||
it { is_expected.to include_module(Gitlab::CurrentSettings) }
|
||||
it { is_expected.to include_module(Referable) }
|
||||
it { is_expected.to include_module(Sortable) }
|
||||
end
|
||||
|
|
|
|||
|
|
@ -1,14 +1,12 @@
|
|||
require 'spec_helper'
|
||||
|
||||
describe User do
|
||||
include Gitlab::CurrentSettings
|
||||
include ProjectForksHelper
|
||||
|
||||
describe 'modules' do
|
||||
subject { described_class }
|
||||
|
||||
it { is_expected.to include_module(Gitlab::ConfigHelper) }
|
||||
it { is_expected.to include_module(Gitlab::CurrentSettings) }
|
||||
it { is_expected.to include_module(Referable) }
|
||||
it { is_expected.to include_module(Sortable) }
|
||||
it { is_expected.to include_module(TokenAuthenticatable) }
|
||||
|
|
@ -560,7 +558,7 @@ describe User do
|
|||
stub_config_setting(default_can_create_group: true)
|
||||
|
||||
expect { user.update_attributes(external: false) }.to change { user.can_create_group }.to(true)
|
||||
.and change { user.projects_limit }.to(current_application_settings.default_projects_limit)
|
||||
.and change { user.projects_limit }.to(Gitlab::CurrentSettings.default_projects_limit)
|
||||
end
|
||||
end
|
||||
|
||||
|
|
@ -826,7 +824,7 @@ describe User do
|
|||
end
|
||||
end
|
||||
|
||||
context 'when current_application_settings.user_default_external is true' do
|
||||
context 'when Gitlab::CurrentSettings.user_default_external is true' do
|
||||
before do
|
||||
stub_application_setting(user_default_external: true)
|
||||
end
|
||||
|
|
|
|||
|
|
@ -2,8 +2,6 @@
|
|||
require 'spec_helper'
|
||||
|
||||
describe API::Projects do
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
let(:user) { create(:user) }
|
||||
let(:user2) { create(:user) }
|
||||
let(:user3) { create(:user) }
|
||||
|
|
|
|||
|
|
@ -1,8 +1,6 @@
|
|||
require 'spec_helper'
|
||||
|
||||
describe API::V3::Projects do
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
let(:user) { create(:user) }
|
||||
let(:user2) { create(:user) }
|
||||
let(:user3) { create(:user) }
|
||||
|
|
|
|||
|
|
@ -15,9 +15,7 @@ RSpec.configure do |config|
|
|||
# Track the maximum number of failures
|
||||
first_failure = Time.parse("2017-11-14 17:52:30")
|
||||
last_failure = Time.parse("2017-11-14 18:54:37")
|
||||
failure_count = Gitlab::CurrentSettings
|
||||
.current_application_settings
|
||||
.circuitbreaker_failure_count_threshold + 1
|
||||
failure_count = Gitlab::CurrentSettings.circuitbreaker_failure_count_threshold + 1
|
||||
cache_key = "#{Gitlab::Git::Storage::REDIS_KEY_PREFIX}broken:#{Gitlab::Environment.hostname}"
|
||||
|
||||
Gitlab::Git::Storage.redis.with do |redis|
|
||||
|
|
|
|||
|
|
@ -1,7 +1,5 @@
|
|||
# Inspired by https://github.com/ljkbennett/stub_env/blob/master/lib/stub_env/helpers.rb
|
||||
module StubENV
|
||||
include Gitlab::CurrentSettings
|
||||
|
||||
def stub_env(key_or_hash, value = nil)
|
||||
init_stub unless env_stubbed?
|
||||
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ shared_context 'unique ips sign in limit' do
|
|||
before do
|
||||
stub_env('IN_MEMORY_APPLICATION_SETTINGS', 'false')
|
||||
|
||||
current_application_settings.update!(
|
||||
Gitlab::CurrentSettings.update!(
|
||||
unique_ips_limit_enabled: true,
|
||||
unique_ips_limit_time_window: 10000
|
||||
)
|
||||
|
|
@ -34,7 +34,7 @@ end
|
|||
shared_examples 'user login operation with unique ip limit' do
|
||||
include_context 'unique ips sign in limit' do
|
||||
before do
|
||||
current_application_settings.update!(unique_ips_limit_per_user: 1)
|
||||
Gitlab::CurrentSettings.update!(unique_ips_limit_per_user: 1)
|
||||
end
|
||||
|
||||
it 'allows user authenticating from the same ip' do
|
||||
|
|
@ -52,7 +52,7 @@ end
|
|||
shared_examples 'user login request with unique ip limit' do |success_status = 200|
|
||||
include_context 'unique ips sign in limit' do
|
||||
before do
|
||||
current_application_settings.update!(unique_ips_limit_per_user: 1)
|
||||
Gitlab::CurrentSettings.update!(unique_ips_limit_per_user: 1)
|
||||
end
|
||||
|
||||
it 'allows user authenticating from the same ip' do
|
||||
|
|
|
|||
Loading…
Reference in New Issue