Let users set name/path on project fork using API
This commit is contained in:
parent
ab9f8785eb
commit
39f77ad9b4
4 changed files with 19 additions and 2 deletions
|
@ -38,8 +38,8 @@ module Projects
|
|||
new_params = {
|
||||
visibility_level: allowed_visibility_level,
|
||||
description: @project.description,
|
||||
name: @project.name,
|
||||
path: @project.path,
|
||||
name: target_name,
|
||||
path: target_path,
|
||||
shared_runners_enabled: @project.shared_runners_enabled,
|
||||
namespace_id: target_namespace.id,
|
||||
fork_network: fork_network,
|
||||
|
@ -94,6 +94,14 @@ module Projects
|
|||
Projects::ForksCountService.new(@project).refresh_cache
|
||||
end
|
||||
|
||||
def target_path
|
||||
@target_path ||= @params[:path] || @project.path
|
||||
end
|
||||
|
||||
def target_name
|
||||
@target_name ||= @params[:name] || @project.name
|
||||
end
|
||||
|
||||
def target_namespace
|
||||
@target_namespace ||= @params[:namespace] || current_user.namespace
|
||||
end
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Add ability to set path and name for project on fork using API
|
||||
merge_request: 25363
|
||||
author:
|
||||
type: added
|
|
@ -771,6 +771,8 @@ POST /projects/:id/fork
|
|||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) |
|
||||
| `namespace` | integer/string | yes | The ID or path of the namespace that the project will be forked to |
|
||||
| `path` | string | no | The path that will be assigned to the resultant project after forking |
|
||||
| `name` | string | no | The name that will be assigned to the resultant project after forking |
|
||||
|
||||
## List Forks of a project
|
||||
|
||||
|
|
|
@ -258,6 +258,8 @@ module API
|
|||
end
|
||||
params do
|
||||
optional :namespace, type: String, desc: 'The ID or name of the namespace that the project will be forked into'
|
||||
optional :path, type: String, desc: 'The path that will be assigned to the fork'
|
||||
optional :name, type: String, desc: 'The name that will be assigned to the fork'
|
||||
end
|
||||
post ':id/fork' do
|
||||
Gitlab::QueryLimiting.whitelist('https://gitlab.com/gitlab-org/gitlab-ce/issues/42284')
|
||||
|
|
Loading…
Reference in a new issue