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/create_tag_service.rb')
-rw-r--r--app/services/create_tag_service.rb45
1 files changed, 0 insertions, 45 deletions
diff --git a/app/services/create_tag_service.rb b/app/services/create_tag_service.rb
deleted file mode 100644
index 25f9e203246..00000000000
--- a/app/services/create_tag_service.rb
+++ /dev/null
@@ -1,45 +0,0 @@
-require_relative 'base_service'
-
-class CreateTagService < BaseService
- def execute(tag_name, ref, message)
- valid_tag = Gitlab::GitRefValidator.validate(tag_name)
- if valid_tag == false
- return error('Tag name invalid')
- end
-
- repository = project.repository
- existing_tag = repository.find_tag(tag_name)
- if existing_tag
- return error('Tag already exists')
- end
-
- message.strip! if message
-
- repository.add_tag(tag_name, ref, message)
- new_tag = repository.find_tag(tag_name)
-
- if new_tag
- push_data = create_push_data(project, current_user, new_tag)
-
- EventCreateService.new.push(project, current_user, push_data)
- project.execute_hooks(push_data.dup, :tag_push_hooks)
- project.execute_services(push_data.dup, :tag_push_hooks)
-
- success(new_tag)
- else
- error('Invalid reference name')
- end
- end
-
- def success(branch)
- out = super()
- out[:tag] = branch
- out
- end
-
- def create_push_data(project, user, tag)
- commits = [project.repository.commit(tag.target)].compact
- Gitlab::PushDataBuilder.
- build(project, user, Gitlab::Git::BLANK_SHA, tag.target, "#{Gitlab::Git::TAG_REF_PREFIX}#{tag.name}", commits, tag.message)
- end
-end