diff options
author | Grzegorz Bizon <grzesiek.bizon@gmail.com> | 2016-06-28 12:22:31 +0200 |
---|---|---|
committer | Grzegorz Bizon <grzesiek.bizon@gmail.com> | 2016-06-28 12:22:31 +0200 |
commit | b9b95a9f19a2699470636cdac874d32556e48f26 (patch) | |
tree | 53299df34d24f5c16b7e33b5a52cd1f402c34210 /lib | |
parent | 8e66618749613333c9201a6ffaf7fc67633cc055 (diff) | |
download | gitlab-ce-b9b95a9f19a2699470636cdac874d32556e48f26.tar.gz |
Improve commit builds API endpoint RESTful behavior
1. Return 404 if commit is not found (RESTful resource not found)
2. Return an empty array if pipeline is not found (resource present, no
associated builds found)
3. Return an empty array if pipeline found but no builds there (resource
present, no associated builds)
Diffstat (limited to 'lib')
-rw-r--r-- | lib/api/builds.rb | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/api/builds.rb b/lib/api/builds.rb index 33aa86999f5..b7987461fd1 100644 --- a/lib/api/builds.rb +++ b/lib/api/builds.rb @@ -33,8 +33,10 @@ module API get ':id/repository/commits/:sha/builds' do authorize_read_builds! + return not_found! unless user_project.commit(params[:sha]) + pipelines = user_project.pipelines.where(sha: params[:sha]) - return not_found! if pipelines.empty? + return [] if pipelines.empty? builds = user_project.builds.where(pipeline: pipelines).order('id DESC') builds = filter_builds(builds, params[:scope]) |