diff options
author | Fabio Papa <fabtheman@gmail.com> | 2019-06-28 16:12:54 -0700 |
---|---|---|
committer | Fabio Papa <fabtheman@gmail.com> | 2019-06-28 16:12:54 -0700 |
commit | d9c6efceda827de6fa0b23bd9b4940b7914d646b (patch) | |
tree | 61716a10190f92b378d83d7085ca9be5553c93c6 | |
parent | 3a1d9ce3a1ed86eb169c48896d290b9bf9a91af9 (diff) | |
download | gitlab-ce-d9c6efceda827de6fa0b23bd9b4940b7914d646b.tar.gz |
Make maintainers the default setting for creating subgroups
-rw-r--r-- | app/models/group.rb | 10 | ||||
-rw-r--r-- | spec/models/group_spec.rb | 8 |
2 files changed, 14 insertions, 4 deletions
diff --git a/app/models/group.rb b/app/models/group.rb index f32312c6f43..f8be5f33be8 100644 --- a/app/models/group.rb +++ b/app/models/group.rb @@ -58,6 +58,8 @@ class Group < Namespace add_authentication_token_field :runners_token, encrypted: -> { Feature.enabled?(:groups_tokens_optional_encryption, default_enabled: true) ? :optional : :required } + before_create :default_subgroup_creation_level_to_maintainers + after_create :post_create_hook after_destroy :post_destroy_hook after_save :update_two_factor_requirement @@ -418,10 +420,6 @@ class Group < Namespace super || ::Gitlab::CurrentSettings.default_project_creation end - def subgroup_creation_level - super || ::Gitlab::Access::MAINTAINER_SUBGROUP_ACCESS - end - private def update_two_factor_requirement @@ -451,4 +449,8 @@ class Group < Namespace errors.add(:visibility_level, "#{visibility} is not allowed since there are sub-groups with higher visibility.") end + + def default_subgroup_creation_level_to_maintainers + self.subgroup_creation_level = ::Gitlab::Access::MAINTAINER_SUBGROUP_ACCESS + end end diff --git a/spec/models/group_spec.rb b/spec/models/group_spec.rb index d7accbef6bd..3a5ae14ab46 100644 --- a/spec/models/group_spec.rb +++ b/spec/models/group_spec.rb @@ -1023,4 +1023,12 @@ describe Group do expect(group.project_creation_level).to eq(Gitlab::CurrentSettings.default_project_creation) end end + + describe 'subgroup_creation_level' do + it 'defaults to maintainers' do + group = create (:group) + + expect(group.subgroup_creation_level).to eq(Gitlab::Access::MAINTAINER_SUBGROUP_ACCESS) + end + end end |