Commit 54df1a57 authored by Shinya Maeda's avatar Shinya Maeda

Resolve a Cognitive Complexity of 12

parent 8f1e96c8
...@@ -8,24 +8,30 @@ module Releases ...@@ -8,24 +8,30 @@ module Releases
return error('Access Denied', 403) unless allowed? return error('Access Denied', 403) unless allowed?
return error('Release already exists', 409) if release return error('Release already exists', 409) if release
new_tag = nil tag = ensure_tag
unless tag_exist? return tag unless tag.is_a?(Gitlab::Git::Tag)
return error('Ref is not specified', 422) unless ref
result = Tags::CreateService create_release(tag)
.new(project, current_user) end
.execute(tag_name, ref, nil)
return result unless result[:status] == :success
new_tag = result[:tag] private
end
create_release(existing_tag || new_tag) def ensure_tag
existing_tag || create_tag
end end
private def create_tag
return error('Ref is not specified', 422) unless ref
result = Tags::CreateService
.new(project, current_user)
.execute(tag_name, ref, nil)
return result unless result[:status] == :success
result[:tag]
end
def allowed? def allowed?
Ability.allowed?(current_user, :create_release, project) Ability.allowed?(current_user, :create_release, project)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment