Skip to content
Snippets Groups Projects
Commit 984698dc authored by Rémy Coutable's avatar Rémy Coutable
Browse files

Merge branch 'refactor-tags-branches-api' into 'master'

Ensure that branch and tag names are given in API

## What does this MR do?

It ensures that the tag or branch name is given. @rymai We talked in an earlier MR about this.

See merge request !5012
parents 6c0d3b4c cc324eb4
Branches
Tags
1 merge request!5012Ensure that branch and tag names are given in API
Pipeline #
Loading
@@ -25,7 +25,7 @@ module API
Loading
@@ -25,7 +25,7 @@ module API
# branch (required) - The name of the branch # branch (required) - The name of the branch
# Example Request: # Example Request:
# GET /projects/:id/repository/branches/:branch # GET /projects/:id/repository/branches/:branch
get ':id/repository/branches/:branch', requirements: { branch: /.*/ } do get ':id/repository/branches/:branch', requirements: { branch: /.+/ } do
@branch = user_project.repository.branches.find { |item| item.name == params[:branch] } @branch = user_project.repository.branches.find { |item| item.name == params[:branch] }
not_found!("Branch") unless @branch not_found!("Branch") unless @branch
present @branch, with: Entities::RepoObject, project: user_project present @branch, with: Entities::RepoObject, project: user_project
Loading
@@ -39,7 +39,7 @@ module API
Loading
@@ -39,7 +39,7 @@ module API
# Example Request: # Example Request:
# PUT /projects/:id/repository/branches/:branch/protect # PUT /projects/:id/repository/branches/:branch/protect
put ':id/repository/branches/:branch/protect', put ':id/repository/branches/:branch/protect',
requirements: { branch: /.*/ } do requirements: { branch: /.+/ } do
   
authorize_admin_project authorize_admin_project
   
Loading
@@ -59,7 +59,7 @@ module API
Loading
@@ -59,7 +59,7 @@ module API
# Example Request: # Example Request:
# PUT /projects/:id/repository/branches/:branch/unprotect # PUT /projects/:id/repository/branches/:branch/unprotect
put ':id/repository/branches/:branch/unprotect', put ':id/repository/branches/:branch/unprotect',
requirements: { branch: /.*/ } do requirements: { branch: /.+/ } do
   
authorize_admin_project authorize_admin_project
   
Loading
@@ -101,7 +101,7 @@ module API
Loading
@@ -101,7 +101,7 @@ module API
# Example Request: # Example Request:
# DELETE /projects/:id/repository/branches/:branch # DELETE /projects/:id/repository/branches/:branch
delete ":id/repository/branches/:branch", delete ":id/repository/branches/:branch",
requirements: { branch: /.*/ } do requirements: { branch: /.+/ } do
authorize_push_project authorize_push_project
result = DeleteBranchService.new(user_project, current_user). result = DeleteBranchService.new(user_project, current_user).
execute(params[:branch]) execute(params[:branch])
Loading
Loading
Loading
@@ -61,7 +61,7 @@ module API
Loading
@@ -61,7 +61,7 @@ module API
# tag_name (required) - The name of the tag # tag_name (required) - The name of the tag
# Example Request: # Example Request:
# DELETE /projects/:id/repository/tags/:tag # DELETE /projects/:id/repository/tags/:tag
delete ":id/repository/tags/:tag_name", requirements: { tag_name: /.*/ } do delete ":id/repository/tags/:tag_name", requirements: { tag_name: /.+/ } do
authorize_push_project authorize_push_project
result = DeleteTagService.new(user_project, current_user). result = DeleteTagService.new(user_project, current_user).
execute(params[:tag_name]) execute(params[:tag_name])
Loading
@@ -83,7 +83,7 @@ module API
Loading
@@ -83,7 +83,7 @@ module API
# description (required) - Release notes with markdown support # description (required) - Release notes with markdown support
# Example Request: # Example Request:
# POST /projects/:id/repository/tags/:tag_name/release # POST /projects/:id/repository/tags/:tag_name/release
post ':id/repository/tags/:tag_name/release', requirements: { tag_name: /.*/ } do post ':id/repository/tags/:tag_name/release', requirements: { tag_name: /.+/ } do
authorize_push_project authorize_push_project
required_attributes! [:description] required_attributes! [:description]
result = CreateReleaseService.new(user_project, current_user). result = CreateReleaseService.new(user_project, current_user).
Loading
@@ -104,7 +104,7 @@ module API
Loading
@@ -104,7 +104,7 @@ module API
# description (required) - Release notes with markdown support # description (required) - Release notes with markdown support
# Example Request: # Example Request:
# PUT /projects/:id/repository/tags/:tag_name/release # PUT /projects/:id/repository/tags/:tag_name/release
put ':id/repository/tags/:tag_name/release', requirements: { tag_name: /.*/ } do put ':id/repository/tags/:tag_name/release', requirements: { tag_name: /.+/ } do
authorize_push_project authorize_push_project
required_attributes! [:description] required_attributes! [:description]
result = UpdateReleaseService.new(user_project, current_user). result = UpdateReleaseService.new(user_project, current_user).
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment