refactor code to use new import type
This commit is contained in:
		
							parent
							
								
									11d0083e95
								
							
						
					
					
						commit
						f2d4b24a94
					
				|  | @ -679,6 +679,10 @@ class Project < ActiveRecord::Base | |||
|     Gitlab::UrlSanitizer.new(import_url).masked_url | ||||
|   end | ||||
| 
 | ||||
|   def bare_repository_import? | ||||
|     import_type == 'bare_repository' | ||||
|   end | ||||
| 
 | ||||
|   def gitlab_project_import? | ||||
|     import_type == 'gitlab_project' | ||||
|   end | ||||
|  |  | |||
|  | @ -12,7 +12,6 @@ module Projects | |||
|       forked_from_project_id = params.delete(:forked_from_project_id) | ||||
|       import_data = params.delete(:import_data) | ||||
|       @skip_wiki = params.delete(:skip_wiki) | ||||
|       @skip_import = params.delete(:skip_import) | ||||
| 
 | ||||
|       @project = Project.new(params) | ||||
| 
 | ||||
|  | @ -88,7 +87,7 @@ module Projects | |||
|     def after_create_actions | ||||
|       log_info("#{@project.owner.name} created a new project \"#{@project.name_with_namespace}\"") | ||||
| 
 | ||||
|       if !@project.gitlab_project_import? || @skip_import | ||||
|       unless @project.gitlab_project_import? | ||||
|         @project.create_wiki unless skip_wiki? | ||||
|         create_services_from_active_templates(@project) | ||||
| 
 | ||||
|  | @ -121,7 +120,7 @@ module Projects | |||
|       Project.transaction do | ||||
|         @project.create_or_update_import_data(data: import_data[:data], credentials: import_data[:credentials]) if import_data | ||||
| 
 | ||||
|         if @project.save && !@project.import? | ||||
|         if @project.save && !@project.import? && !@project.bare_repository_import? | ||||
|           raise 'Failed to create repository' unless @project.create_repository | ||||
|         end | ||||
|       end | ||||
|  | @ -166,7 +165,7 @@ module Projects | |||
| 
 | ||||
|     def import_schedule | ||||
|       if @project.errors.empty? | ||||
|         @project.import_schedule if @project.import? && !@skip_import | ||||
|         @project.import_schedule if @project.import? | ||||
|       else | ||||
|         fail(error: @project.errors.full_messages.join(', ')) | ||||
|       end | ||||
|  |  | |||
|  | @ -56,8 +56,7 @@ module Gitlab | |||
|                                               path: project_name, | ||||
|                                               skip_disk_validation: true, | ||||
|                                               skip_wiki: bare_repo.wiki_exists?, | ||||
|                                               skip_import: true, | ||||
|                                               import_type: 'gitlab_project', | ||||
|                                               import_type: 'bare_repository', | ||||
|                                               namespace_id: group&.id).execute | ||||
| 
 | ||||
|         if project.persisted? && mv_repo(project) | ||||
|  |  | |||
|  | @ -169,7 +169,7 @@ describe Gitlab::BareRepositoryImport::Importer, repository: true do | |||
|       FileUtils.mkdir_p(File.join(base_dir, "#{project_path}.wiki.git")) | ||||
| 
 | ||||
|       expect(Projects::CreateService).to receive(:new).with(admin, hash_including(skip_wiki: true, | ||||
|                                                                                   skip_import: true)).and_call_original | ||||
|                                                                                   import_type: 'bare_repository')).and_call_original | ||||
| 
 | ||||
|       importer.create_project_if_needed | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue