BigW Consortium Gitlab

Commit f2d4b24a by James Lopez

refactor code to use new import type

parent 11d0083e
...@@ -679,6 +679,10 @@ class Project < ActiveRecord::Base ...@@ -679,6 +679,10 @@ class Project < ActiveRecord::Base
Gitlab::UrlSanitizer.new(import_url).masked_url Gitlab::UrlSanitizer.new(import_url).masked_url
end end
def bare_repository_import?
import_type == 'bare_repository'
end
def gitlab_project_import? def gitlab_project_import?
import_type == 'gitlab_project' import_type == 'gitlab_project'
end end
......
...@@ -12,7 +12,6 @@ module Projects ...@@ -12,7 +12,6 @@ module Projects
forked_from_project_id = params.delete(:forked_from_project_id) forked_from_project_id = params.delete(:forked_from_project_id)
import_data = params.delete(:import_data) import_data = params.delete(:import_data)
@skip_wiki = params.delete(:skip_wiki) @skip_wiki = params.delete(:skip_wiki)
@skip_import = params.delete(:skip_import)
@project = Project.new(params) @project = Project.new(params)
...@@ -88,7 +87,7 @@ module Projects ...@@ -88,7 +87,7 @@ module Projects
def after_create_actions def after_create_actions
log_info("#{@project.owner.name} created a new project \"#{@project.name_with_namespace}\"") 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? @project.create_wiki unless skip_wiki?
create_services_from_active_templates(@project) create_services_from_active_templates(@project)
...@@ -121,7 +120,7 @@ module Projects ...@@ -121,7 +120,7 @@ module Projects
Project.transaction do Project.transaction do
@project.create_or_update_import_data(data: import_data[:data], credentials: import_data[:credentials]) if import_data @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 raise 'Failed to create repository' unless @project.create_repository
end end
end end
...@@ -166,7 +165,7 @@ module Projects ...@@ -166,7 +165,7 @@ module Projects
def import_schedule def import_schedule
if @project.errors.empty? if @project.errors.empty?
@project.import_schedule if @project.import? && !@skip_import @project.import_schedule if @project.import?
else else
fail(error: @project.errors.full_messages.join(', ')) fail(error: @project.errors.full_messages.join(', '))
end end
......
...@@ -56,8 +56,7 @@ module Gitlab ...@@ -56,8 +56,7 @@ module Gitlab
path: project_name, path: project_name,
skip_disk_validation: true, skip_disk_validation: true,
skip_wiki: bare_repo.wiki_exists?, skip_wiki: bare_repo.wiki_exists?,
skip_import: true, import_type: 'bare_repository',
import_type: 'gitlab_project',
namespace_id: group&.id).execute namespace_id: group&.id).execute
if project.persisted? && mv_repo(project) if project.persisted? && mv_repo(project)
......
...@@ -169,7 +169,7 @@ describe Gitlab::BareRepositoryImport::Importer, repository: true do ...@@ -169,7 +169,7 @@ describe Gitlab::BareRepositoryImport::Importer, repository: true do
FileUtils.mkdir_p(File.join(base_dir, "#{project_path}.wiki.git")) FileUtils.mkdir_p(File.join(base_dir, "#{project_path}.wiki.git"))
expect(Projects::CreateService).to receive(:new).with(admin, hash_including(skip_wiki: true, 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 importer.create_project_if_needed
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment