From 209f2f1e6fd861dd7bb6a73389400b4bb266d26d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20Coutable?= Date: Mon, 25 Apr 2016 16:31:45 +0200 Subject: Use a similar approach to branch creation for tag creation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Rémy Coutable --- app/models/repository.rb | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) (limited to 'app/models') diff --git a/app/models/repository.rb b/app/models/repository.rb index c4e38980a83..d5d70f41fd3 100644 --- a/app/models/repository.rb +++ b/app/models/repository.rb @@ -146,17 +146,20 @@ class Repository find_branch(branch_name) end - def add_tag(user, tag_name, ref, message = nil) - before_push_tag + def add_tag(user, tag_name, target, message = nil) + oldrev = Gitlab::Git::BLANK_SHA + ref = Gitlab::Git::TAG_REF_PREFIX + tag_name + target = commit(target).try(:id) + + return false unless target options = { message: message, tagger: user_to_committer(user) } if message - tag = rugged.tags.create(tag_name, ref, options) - if tag.annotated? - Gitlab::Git::Tag.new(tag_name, ref, tag.annotation.message) - else - Gitlab::Git::Tag.new(tag_name, ref) + GitHooksService.new.execute(user, path_to_repo, oldrev, target, ref) do + rugged.tags.create(tag_name, target, options) end + + find_tag(tag_name) end def rm_branch(user, branch_name) -- cgit v1.2.1