Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2015-06-03 15:57:12 +0300
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2015-06-03 15:57:12 +0300
commit1edff53444ea493ee010a83220cf13ccb381b411 (patch)
tree51f2f728dee26bd6107c520bb092ddfac84409d1 /app/services
parent61cfd1d2733a717934a723d36f60e7bcd09fad05 (diff)
Remove projects before group/user. Remove namespace directory async
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Diffstat (limited to 'app/services')
-rw-r--r--app/services/delete_user_service.rb5
-rw-r--r--app/services/destroy_group_service.rb5
2 files changed, 10 insertions, 0 deletions
diff --git a/app/services/delete_user_service.rb b/app/services/delete_user_service.rb
index d259b4efca6..ca350eb2a8d 100644
--- a/app/services/delete_user_service.rb
+++ b/app/services/delete_user_service.rb
@@ -4,6 +4,11 @@ class DeleteUserService
user.errors[:base] << 'You must transfer ownership or delete groups before you can remove user'
user
else
+ # TODO: Skip remove repository so Namespace#rm_dir works
+ user.personal_projects.each do |project|
+ ::Projects::DestroyService.new(project, current_user, {}).execute
+ end
+
user.destroy
end
end
diff --git a/app/services/destroy_group_service.rb b/app/services/destroy_group_service.rb
index 9637a1480a8..c1add7b92e8 100644
--- a/app/services/destroy_group_service.rb
+++ b/app/services/destroy_group_service.rb
@@ -6,6 +6,11 @@ class DestroyGroupService
end
def execute
+ # TODO: Skip remove repository so Namespace#rm_dir works
+ @group.projects.each do |project|
+ ::Projects::DestroyService.new(project, current_user, {}).execute
+ end
+
@group.destroy
end
end