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:
Diffstat (limited to 'app/services/projects/update_service.rb')
-rw-r--r--app/services/projects/update_service.rb13
1 files changed, 9 insertions, 4 deletions
diff --git a/app/services/projects/update_service.rb b/app/services/projects/update_service.rb
index e10dede632a..58c9bce963b 100644
--- a/app/services/projects/update_service.rb
+++ b/app/services/projects/update_service.rb
@@ -13,8 +13,12 @@ module Projects
ensure_wiki_exists if enabling_wiki?
- if changing_storage_size?
- project.change_repository_storage(params.delete(:repository_storage))
+ if changing_repository_storage?
+ storage_move = project.repository_storage_moves.build(
+ source_storage_name: project.repository_storage,
+ destination_storage_name: params.delete(:repository_storage)
+ )
+ storage_move.schedule
end
yield if block_given?
@@ -132,7 +136,7 @@ module Projects
def ensure_wiki_exists
ProjectWiki.new(project, project.owner).wiki
- rescue ProjectWiki::CouldNotCreateWikiError
+ rescue Wiki::CouldNotCreateWikiError
log_error("Could not create wiki for #{project.full_name}")
Gitlab::Metrics.counter(:wiki_can_not_be_created_total, 'Counts the times we failed to create a wiki').increment
end
@@ -145,10 +149,11 @@ module Projects
project.previous_changes.include?(:pages_https_only)
end
- def changing_storage_size?
+ def changing_repository_storage?
new_repository_storage = params[:repository_storage]
new_repository_storage && project.repository.exists? &&
+ project.repository_storage != new_repository_storage &&
can?(current_user, :change_repository_storage, project)
end
end