BigW Consortium Gitlab
Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
gitlab-ce
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Forest Godfrey
gitlab-ce
Commits
aaa986c0
Unverified
Commit
aaa986c0
authored
Jan 20, 2017
by
Rémy Coutable
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Don't define ApplicationSetting defaults in a constant
Signed-off-by:
Rémy Coutable
<
remy@rymai.me
>
parent
ff75bd04
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
51 additions
and
47 deletions
+51
-47
application_setting.rb
app/models/application_setting.rb
+48
-44
current_settings.rb
lib/gitlab/current_settings.rb
+3
-3
No files found.
app/models/application_setting.rb
View file @
aaa986c0
...
...
@@ -13,49 +13,6 @@ class ApplicationSetting < ActiveRecord::Base
[
\r\n
] # any number of newline characters
}x
DEFAULTS_CE
=
{
after_sign_up_text:
nil
,
akismet_enabled:
false
,
container_registry_token_expire_delay:
5
,
default_branch_protection:
Settings
.
gitlab
[
'default_branch_protection'
],
default_project_visibility:
Settings
.
gitlab
.
default_projects_features
[
'visibility_level'
],
default_projects_limit:
Settings
.
gitlab
[
'default_projects_limit'
],
default_snippet_visibility:
Settings
.
gitlab
.
default_projects_features
[
'visibility_level'
],
disabled_oauth_sign_in_sources:
[],
domain_whitelist:
Settings
.
gitlab
[
'domain_whitelist'
],
gravatar_enabled:
Settings
.
gravatar
[
'enabled'
],
help_page_text:
nil
,
housekeeping_bitmaps_enabled:
true
,
housekeeping_enabled:
true
,
housekeeping_full_repack_period:
50
,
housekeeping_gc_period:
200
,
housekeeping_incremental_repack_period:
10
,
import_sources:
Gitlab
::
ImportSources
.
values
,
koding_enabled:
false
,
koding_url:
nil
,
max_artifacts_size:
Settings
.
artifacts
[
'max_size'
],
max_attachment_size:
Settings
.
gitlab
[
'max_attachment_size'
],
plantuml_enabled:
false
,
plantuml_url:
nil
,
recaptcha_enabled:
false
,
repository_checks_enabled:
true
,
repository_storages:
[
'default'
],
require_two_factor_authentication:
false
,
restricted_visibility_levels:
Settings
.
gitlab
[
'restricted_visibility_levels'
],
session_expire_delay:
Settings
.
gitlab
[
'session_expire_delay'
],
send_user_confirmation_email:
false
,
shared_runners_enabled:
Settings
.
gitlab_ci
[
'shared_runners_enabled'
],
shared_runners_text:
nil
,
sidekiq_throttling_enabled:
false
,
sign_in_text:
nil
,
signin_enabled:
Settings
.
gitlab
[
'signin_enabled'
],
signup_enabled:
Settings
.
gitlab
[
'signup_enabled'
],
two_factor_grace_period:
48
,
user_default_external:
false
}
DEFAULTS
=
DEFAULTS_CE
serialize
:restricted_visibility_levels
serialize
:import_sources
serialize
:disabled_oauth_sign_in_sources
,
Array
...
...
@@ -191,6 +148,53 @@ class ApplicationSetting < ActiveRecord::Base
Rails
.
cache
.
write
(
CACHE_KEY
,
self
)
end
def
self
.
defaults_ce
{
after_sign_up_text:
nil
,
akismet_enabled:
false
,
container_registry_token_expire_delay:
5
,
default_branch_protection:
Settings
.
gitlab
[
'default_branch_protection'
],
default_project_visibility:
Settings
.
gitlab
.
default_projects_features
[
'visibility_level'
],
default_projects_limit:
Settings
.
gitlab
[
'default_projects_limit'
],
default_snippet_visibility:
Settings
.
gitlab
.
default_projects_features
[
'visibility_level'
],
disabled_oauth_sign_in_sources:
[],
domain_whitelist:
Settings
.
gitlab
[
'domain_whitelist'
],
gravatar_enabled:
Settings
.
gravatar
[
'enabled'
],
help_page_text:
nil
,
housekeeping_bitmaps_enabled:
true
,
housekeeping_enabled:
true
,
housekeeping_full_repack_period:
50
,
housekeeping_gc_period:
200
,
housekeeping_incremental_repack_period:
10
,
import_sources:
Gitlab
::
ImportSources
.
values
,
koding_enabled:
false
,
koding_url:
nil
,
max_artifacts_size:
Settings
.
artifacts
[
'max_size'
],
max_attachment_size:
Settings
.
gitlab
[
'max_attachment_size'
],
plantuml_enabled:
false
,
plantuml_url:
nil
,
recaptcha_enabled:
false
,
repository_checks_enabled:
true
,
repository_storages:
[
'default'
],
require_two_factor_authentication:
false
,
restricted_visibility_levels:
Settings
.
gitlab
[
'restricted_visibility_levels'
],
session_expire_delay:
Settings
.
gitlab
[
'session_expire_delay'
],
send_user_confirmation_email:
false
,
shared_runners_enabled:
Settings
.
gitlab_ci
[
'shared_runners_enabled'
],
shared_runners_text:
nil
,
sidekiq_throttling_enabled:
false
,
sign_in_text:
nil
,
signin_enabled:
Settings
.
gitlab
[
'signin_enabled'
],
signup_enabled:
Settings
.
gitlab
[
'signup_enabled'
],
two_factor_grace_period:
48
,
user_default_external:
false
}
end
def
self
.
defaults
defaults_ce
end
def
self
.
current
Rails
.
cache
.
fetch
(
CACHE_KEY
)
do
ApplicationSetting
.
last
...
...
@@ -206,7 +210,7 @@ class ApplicationSetting < ActiveRecord::Base
end
def
self
.
create_from_defaults
create
(
DEFAULTS
)
create
(
defaults
)
end
def
home_page_url_column_exist
...
...
lib/gitlab/current_settings.rb
View file @
aaa986c0
...
...
@@ -30,15 +30,15 @@ module Gitlab
end
def
in_memory_application_settings
@in_memory_application_settings
||=
ApplicationSetting
.
new
(
ApplicationSetting
::
DEFAULTS
)
@in_memory_application_settings
||=
::
ApplicationSetting
.
new
(
::
ApplicationSetting
.
defaults
)
# In case migrations the application_settings table is not created yet,
# we fallback to a simple OpenStruct
rescue
ActiveRecord
::
StatementInvalid
rescue
ActiveRecord
::
StatementInvalid
,
ActiveRecord
::
UnknownAttributeError
fake_application_settings
end
def
fake_application_settings
OpenStruct
.
new
(
ApplicationSetting
::
DEFAULTS
)
OpenStruct
.
new
(
::
ApplicationSetting
.
defaults
)
end
private
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment