diff options
author | Douwe Maan <douwe@gitlab.com> | 2018-02-14 12:38:51 +0000 |
---|---|---|
committer | Douwe Maan <douwe@gitlab.com> | 2018-02-14 12:38:51 +0000 |
commit | 44dc11f12e95e4968d51669d6d033f5ba795122e (patch) | |
tree | 7d6ac30749fb282aa816d3f1af9b2e241b6773f9 /app/services | |
parent | 12447f12e0ec7bb026b385fc0695bcdca101ad61 (diff) | |
parent | b5db95624d8e0bc8c60d3ce82ef0bd8619c6064f (diff) | |
download | gitlab-ce-44dc11f12e95e4968d51669d6d033f5ba795122e.tar.gz |
Merge branch 'fix/template-project-visibility' into 'master'
Respect description and visibility when creating project from template
Closes #42601
See merge request gitlab-org/gitlab-ce!16820
Diffstat (limited to 'app/services')
-rw-r--r-- | app/services/projects/create_from_template_service.rb | 10 | ||||
-rw-r--r-- | app/services/projects/gitlab_projects_import_service.rb | 14 |
2 files changed, 13 insertions, 11 deletions
diff --git a/app/services/projects/create_from_template_service.rb b/app/services/projects/create_from_template_service.rb index 87d9ed7a0e6..a549cfbabea 100644 --- a/app/services/projects/create_from_template_service.rb +++ b/app/services/projects/create_from_template_service.rb @@ -5,11 +5,15 @@ module Projects end def execute - params[:file] = Gitlab::ProjectTemplate.find(params[:template_name]).file + template_name = params.delete(:template_name) + file = Gitlab::ProjectTemplate.find(template_name).file + + params[:file] = file + + GitlabProjectsImportService.new(current_user, params).execute - GitlabProjectsImportService.new(@current_user, @params).execute ensure - params[:file]&.close + file&.close end end end diff --git a/app/services/projects/gitlab_projects_import_service.rb b/app/services/projects/gitlab_projects_import_service.rb index a3d7f5cbed5..a68ecb4abe1 100644 --- a/app/services/projects/gitlab_projects_import_service.rb +++ b/app/services/projects/gitlab_projects_import_service.rb @@ -11,12 +11,14 @@ module Projects def execute FileUtils.mkdir_p(File.dirname(import_upload_path)) + + file = params.delete(:file) FileUtils.copy_entry(file.path, import_upload_path) - Gitlab::ImportExport::ProjectCreator.new(params[:namespace_id], - current_user, - import_upload_path, - params[:path]).execute + params[:import_type] = 'gitlab_project' + params[:import_source] = import_upload_path + + ::Projects::CreateService.new(current_user, params).execute end private @@ -28,9 +30,5 @@ module Projects def tmp_filename SecureRandom.hex end - - def file - params[:file] - end end end |