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

Resolve a Cognitive Complexity of 12

parent 8f1e96c8
......@@ -8,24 +8,30 @@ module Releases
return error('Access Denied', 403) unless allowed?
return error('Release already exists', 409) if release
new_tag = nil
tag = ensure_tag
unless tag_exist?
return error('Ref is not specified', 422) unless ref
return tag unless tag.is_a?(Gitlab::Git::Tag)
result = Tags::CreateService
.new(project, current_user)
.execute(tag_name, ref, nil)
return result unless result[:status] == :success
create_release(tag)
end
new_tag = result[:tag]
end
private
create_release(existing_tag || new_tag)
def ensure_tag
existing_tag || create_tag
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?
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