moves the main_language update logic to git push service
This commit is contained in:
parent
8039bbf7f8
commit
96c0255107
|
@ -86,14 +86,6 @@ class Project < ActiveRecord::Base
|
|||
end
|
||||
end
|
||||
|
||||
# checks if the language main language of the project changed
|
||||
before_save :check_main_language
|
||||
def check_main_language
|
||||
if commit_count_changed?
|
||||
main_language = repository.main_language
|
||||
end
|
||||
end
|
||||
|
||||
ActsAsTaggableOn.strict_case_match = true
|
||||
acts_as_taggable_on :tags
|
||||
|
||||
|
|
|
@ -14,6 +14,7 @@ class GitPushService < BaseService
|
|||
# 3. Recognizes cross-references from commit messages
|
||||
# 4. Executes the project's web hooks
|
||||
# 5. Executes the project's services
|
||||
# 6. Checks if the project's main language has changed
|
||||
#
|
||||
def execute
|
||||
@project.repository.after_push_commit(branch_name)
|
||||
|
@ -42,6 +43,9 @@ class GitPushService < BaseService
|
|||
@push_commits = @project.repository.commits_between(params[:oldrev], params[:newrev])
|
||||
process_commit_messages
|
||||
end
|
||||
# Checks if the main language has changed in the project and if so
|
||||
# it updates it accordingly
|
||||
update_main_language
|
||||
# Update merge requests that may be affected by this push. A new branch
|
||||
# could cause the last commit of a merge request to change.
|
||||
update_merge_requests
|
||||
|
@ -49,6 +53,14 @@ class GitPushService < BaseService
|
|||
|
||||
protected
|
||||
|
||||
def update_main_language
|
||||
current_language = @project.repository.main_language
|
||||
|
||||
unless current_language == @project.main_language
|
||||
@project.update_attributes(main_language: current_language)
|
||||
end
|
||||
end
|
||||
|
||||
def update_merge_requests
|
||||
@project.update_merge_requests(params[:oldrev], params[:newrev], params[:ref], current_user)
|
||||
|
||||
|
|
Loading…
Reference in New Issue