Commit cee47fb3 authored by Rémy Coutable's avatar Rémy Coutable

Merge branch 'api-promote-find-branch' into 'master'

API: Use find_branch! in all places

Closes #51250

See merge request gitlab-org/gitlab-ce!21614
parents bea943ae 4e39fc1a
---
title: 'API: Use find_branch! in all places'
merge_request: 21614
author: Robert Schilling
type: fixed
...@@ -9,14 +9,6 @@ module API ...@@ -9,14 +9,6 @@ module API
before { authorize! :download_code, user_project } before { authorize! :download_code, user_project }
helpers do helpers do
def find_branch!(branch_name)
begin
user_project.repository.find_branch(branch_name) || not_found!('Branch')
rescue Gitlab::Git::CommandError
render_api_error!('The branch refname is invalid', 400)
end
end
params :filter_params do params :filter_params do
optional :search, type: String, desc: 'Return list of branches matching the search criteria' optional :search, type: String, desc: 'Return list of branches matching the search criteria'
optional :sort, type: String, desc: 'Return list of branches sorted by the given field' optional :sort, type: String, desc: 'Return list of branches sorted by the given field'
......
...@@ -159,8 +159,7 @@ module API ...@@ -159,8 +159,7 @@ module API
commit = user_project.commit(params[:sha]) commit = user_project.commit(params[:sha])
not_found!('Commit') unless commit not_found!('Commit') unless commit
branch = user_project.repository.find_branch(params[:branch]) find_branch!(params[:branch])
not_found!('Branch') unless branch
commit_params = { commit_params = {
commit: commit, commit: commit,
...@@ -171,7 +170,7 @@ module API ...@@ -171,7 +170,7 @@ module API
result = ::Commits::CherryPickService.new(user_project, current_user, commit_params).execute result = ::Commits::CherryPickService.new(user_project, current_user, commit_params).execute
if result[:status] == :success if result[:status] == :success
branch = user_project.repository.find_branch(params[:branch]) branch = find_branch!(params[:branch])
present user_project.repository.commit(branch.dereferenced_target), with: Entities::Commit present user_project.repository.commit(branch.dereferenced_target), with: Entities::Commit
else else
render_api_error!(result[:message], 400) render_api_error!(result[:message], 400)
......
...@@ -156,6 +156,12 @@ module API ...@@ -156,6 +156,12 @@ module API
end end
end end
def find_branch!(branch_name)
user_project.repository.find_branch(branch_name) || not_found!('Branch')
rescue Gitlab::Git::CommandError
render_api_error!('The branch refname is invalid', 400)
end
def find_project_label(id) def find_project_label(id)
labels = available_labels_for(user_project) labels = available_labels_for(user_project)
label = labels.find_by_id(id) || labels.find_by_title(id) label = labels.find_by_id(id) || labels.find_by_title(id)
......
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