Commit 28bb65f3637ae16c98f374248e3ffa5f26983443
1 parent
99490159
Exists in
master
and in
4 other branches
Update repository head successively during project update
It prevents situation when async worker slowly updates HEAD and we show old branch as repository HEAD in project settings Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Showing
2 changed files
with
6 additions
and
7 deletions
Show diff stats
app/contexts/projects/update_context.rb
... | ... | @@ -10,13 +10,7 @@ module Projects |
10 | 10 | new_branch = params[:project].delete(:default_branch) |
11 | 11 | |
12 | 12 | if project.repository.exists? && new_branch != project.default_branch |
13 | - GitlabShellWorker.perform_async( | |
14 | - :update_repository_head, | |
15 | - project.path_with_namespace, | |
16 | - new_branch | |
17 | - ) | |
18 | - | |
19 | - project.reload_default_branch | |
13 | + project.change_head(new_branch) | |
20 | 14 | end |
21 | 15 | |
22 | 16 | project.update_attributes(params[:project], as: role) | ... | ... |
app/models/project.rb
... | ... | @@ -472,4 +472,9 @@ class Project < ActiveRecord::Base |
472 | 472 | def visibility_level_field |
473 | 473 | visibility_level |
474 | 474 | end |
475 | + | |
476 | + def change_head(branch) | |
477 | + gitlab_shell.update_repository_head(self.path_with_namespace, branch) | |
478 | + reload_default_branch | |
479 | + end | |
475 | 480 | end | ... | ... |