diff options
author | Gabriel Mazetto <gabriel@gitlab.com> | 2016-04-15 09:26:27 -0300 |
---|---|---|
committer | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2016-04-19 11:00:30 +0200 |
commit | 2384bed4d8e3f79461664911715e5f2a2a66c008 (patch) | |
tree | 0ceac2ddd6aee99cfddabeac291bb02a2b912b84 /app/services | |
parent | ee1090e2b2bc7b3762f6e2775f3fd15e92ae212b (diff) | |
download | gitlab-ce-2384bed4d8e3f79461664911715e5f2a2a66c008.tar.gz |
Refactor GitTagPushService and fig tags_push system event hook
Diffstat (limited to 'app/services')
-rw-r--r-- | app/services/git_tag_push_service.rb | 27 |
1 files changed, 13 insertions, 14 deletions
diff --git a/app/services/git_tag_push_service.rb b/app/services/git_tag_push_service.rb index 81ba68fa674..f4a1d0da5d8 100644 --- a/app/services/git_tag_push_service.rb +++ b/app/services/git_tag_push_service.rb @@ -1,17 +1,16 @@ -class GitTagPushService - attr_accessor :project, :user, :push_data +class GitTagPushService < BaseService + attr_accessor :push_data - def execute(project, user, oldrev, newrev, ref) + def execute project.repository.before_push_tag - @project, @user = project, user - @push_data = build_push_data(oldrev, newrev, ref) + @push_data = build_push_data - EventCreateService.new.push(project, user, @push_data) + EventCreateService.new.push(project, current_user, @push_data) SystemHooksService.new.execute_hooks(build_system_push_data.dup, :tag_push_hooks) project.execute_hooks(@push_data.dup, :tag_push_hooks) project.execute_services(@push_data.dup, :tag_push_hooks) - CreateCommitBuildsService.new.execute(project, @user, @push_data) + CreateCommitBuildsService.new.execute(project, current_user, @push_data) ProjectCacheWorker.perform_async(project.id) true @@ -19,14 +18,14 @@ class GitTagPushService private - def build_push_data(oldrev, newrev, ref) + def build_push_data commits = [] message = nil - if !Gitlab::Git.blank_ref?(newrev) - tag_name = Gitlab::Git.ref_name(ref) + if !Gitlab::Git.blank_ref?(params[:newrev]) + tag_name = Gitlab::Git.ref_name(params[:ref]) tag = project.repository.find_tag(tag_name) - if tag && tag.target == newrev + if tag && tag.target == params[:newrev] commit = project.commit(tag.target) commits = [commit].compact message = tag.message @@ -34,11 +33,11 @@ class GitTagPushService end Gitlab::PushDataBuilder. - build(project, user, oldrev, newrev, ref, commits, message) + build(project, current_user, params[:oldrev], params[:newrev], params[:ref], commits, message) end - def build_system_push_data(oldrev, newrev, ref) + def build_system_push_data Gitlab::PushDataBuilder. - build_system(project, user, oldrev, newrev, ref) + build_system(project, current_user, params[:oldrev], params[:newrev], params[:ref]) end end |