diff --git a/lib/tasks/gitlab/import.rake b/lib/tasks/gitlab/import.rake index 81f66e2..9f12881 100644 --- a/lib/tasks/gitlab/import.rake +++ b/lib/tasks/gitlab/import.rake @@ -15,15 +15,20 @@ namespace :gitlab do git_base_path = Gitlab.config.gitolite.repos_path repos_to_import = Dir.glob(git_base_path + '/*') + namespaces = Namespace.pluck(:path) + repos_to_import.each do |repo_path| repo_name = File.basename repo_path + # Skip if group or user + next if namespaces.include?(repo_name) + # skip gitolite admin next if repo_name == 'gitolite-admin.git' path = repo_name.sub(/\.git$/, '') - project = Project.find_by_path(path) + project = Project.find_with_namespace(path) puts "Processing #{repo_name}".yellow @@ -34,8 +39,6 @@ namespace :gitlab do project_params = { :name => path, - :code => path, - :path => path, } project = Project.create_by_user(project_params, user) diff --git a/spec/requests/api/projects_spec.rb b/spec/requests/api/projects_spec.rb index a396516..60cc75f 100644 --- a/spec/requests/api/projects_spec.rb +++ b/spec/requests/api/projects_spec.rb @@ -64,6 +64,7 @@ describe Gitlab::API do post api("/projects", user), project project.each_pair do |k,v| + next if k == :path json_response[k.to_s].should == v end end -- libgit2 0.21.2