summaryrefslogtreecommitdiff
path: root/app/models
diff options
context:
space:
mode:
authorYorick Peterse <yorickpeterse@gmail.com>2017-02-07 14:55:42 +0100
committerYorick Peterse <yorickpeterse@gmail.com>2017-02-07 14:58:49 +0100
commitebae38394d8d6738ace1719633ad93c112951f03 (patch)
treeba256bac5a04def9aea317706feea4ae65b36c1c /app/models
parent99fceff4f9e98cc7cb725882abec6e5b7c9b0170 (diff)
downloadgitlab-ce-refresh-permissions-when-moving-projects.tar.gz
Refresh authorizations when transferring projectsrefresh-permissions-when-moving-projects
This ensures that project authorizations are refreshed when moving a project from one namespace to another. When doing so the permissions for all users of both the old and new namespaces are refreshed. See #26194 for more information.
Diffstat (limited to 'app/models')
-rw-r--r--app/models/group.rb7
-rw-r--r--app/models/namespace.rb4
2 files changed, 10 insertions, 1 deletions
diff --git a/app/models/group.rb b/app/models/group.rb
index 4cdfd022094..a5b92283daa 100644
--- a/app/models/group.rb
+++ b/app/models/group.rb
@@ -197,7 +197,12 @@ class Group < Namespace
end
def refresh_members_authorized_projects
- UserProjectAccessChangedService.new(users_with_parents.pluck(:id)).execute
+ UserProjectAccessChangedService.new(user_ids_for_project_authorizations).
+ execute
+ end
+
+ def user_ids_for_project_authorizations
+ users_with_parents.pluck(:id)
end
def members_with_parents
diff --git a/app/models/namespace.rb b/app/models/namespace.rb
index 2fb2eb44aaa..c5713fb7818 100644
--- a/app/models/namespace.rb
+++ b/app/models/namespace.rb
@@ -213,6 +213,10 @@ class Namespace < ActiveRecord::Base
self.class.joins(:route).where('routes.path LIKE ?', "#{route.path}/%").reorder('routes.path ASC')
end
+ def user_ids_for_project_authorizations
+ [owner_id]
+ end
+
private
def repository_storage_paths