Commit f386d7a7 authored by James Lopez's avatar James Lopez

some changes based on MR feedback

parent 2dff04f2
......@@ -9,11 +9,11 @@ module Gitlab
untar_with_options(archive: archive, dir: dir, options: 'zxf')
end
def git_bundle(git_bin_path: Gitlab.config.git.bin_path, repo_path:, bundle_path:)
def git_bundle(repo_path:, bundle_path:)
execute(%W(#{git_bin_path} --git-dir=#{repo_path} bundle create #{bundle_path} --all))
end
def git_unbundle(git_bin_path: Gitlab.config.git.bin_path, repo_path:, bundle_path:)
def git_unbundle(repo_path:, bundle_path:)
execute(%W(#{git_bin_path} clone --bare #{bundle_path} #{repo_path}))
end
......@@ -31,6 +31,10 @@ module Gitlab
_output, status = Gitlab::Popen.popen(cmd)
status.zero?
end
def git_bin_path
Gitlab.config.git.bin_path
end
end
end
end
......@@ -14,6 +14,7 @@ module Gitlab
@attributes_parser.find_included(:project).merge(include: build_hash(@tree))
rescue => e
@shared.error(e.message)
false
end
private
......
......@@ -5,7 +5,7 @@ module Gitlab
attr_reader :full_path
def initialize(project: , shared: )
def initialize(project:, shared:)
@project = project
@shared = shared
end
......
......@@ -3,14 +3,13 @@ module Gitlab
class WikiRepoBundler < RepoBundler
def bundle
@wiki = ProjectWiki.new(@project)
return true if !wiki? # it's okay to have no Wiki
@full_path = File.join(@shared.export_path, project_filename)
bundle_to_disk
return true unless wiki_repository_exists? # it's okay to have no Wiki
bundle_to_disk(File.join(@shared.export_path, project_filename))
end
def bundle_to_disk
def bundle_to_disk(full_path)
FileUtils.mkdir_p(@shared.export_path)
git_bundle(repo_path: path_to_repo, bundle_path: @full_path)
git_bundle(repo_path: path_to_repo, bundle_path: full_path)
rescue => e
@shared.error(e.message)
false
......@@ -26,7 +25,7 @@ module Gitlab
@wiki.repository.path_to_repo
end
def wiki?
def wiki_repository_exists?
File.exists?(@wiki.repository.path_to_repo) && !@wiki.repository.empty?
end
end
......
require 'spec_helper'
describe Gitlab::ImportExport::ImportExportReader do
describe Gitlab::ImportExport::ImportExportReader, lib: true do
let(:shared) { Gitlab::ImportExport::Shared.new(relative_path:'') }
let(:test_config) { 'spec/support/import_export/import_export.yml' }
let(:project_tree_hash) do
......@@ -16,7 +16,7 @@ describe Gitlab::ImportExport::ImportExportReader do
}
end
it 'should generate hash from project tree config' do
expect(described_class.new(config: test_config, shared: shared).project_tree) =~ (project_tree_hash)
it 'generates hash from project tree config' do
expect(described_class.new(config: test_config, shared: shared).project_tree).to match(project_tree_hash)
end
end
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