From 6612ca096a496caaa0d30724190964df8aac2f46 Mon Sep 17 00:00:00 2001 From: James Lopez Date: Thu, 5 May 2016 12:01:18 +0200 Subject: [PATCH] update repo and wiki repo bundler to use git bundle instead of compressing via tar --- app/services/projects/import_export/export_service.rb | 6 ++++++ lib/gitlab/import_export/repo_bundler.rb | 3 +-- lib/gitlab/import_export/wiki_repo_bundler.rb | 3 +-- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/app/services/projects/import_export/export_service.rb b/app/services/projects/import_export/export_service.rb index 5d5573cba5c..47ceff18af6 100644 --- a/app/services/projects/import_export/export_service.rb +++ b/app/services/projects/import_export/export_service.rb @@ -4,8 +4,10 @@ module Projects def execute(options = {}) @shared = Gitlab::ImportExport::Shared.new(relative_path: File.join(project.path_with_namespace, 'work')) + # TODO handle errors save_project_tree bundle_repo + bundle_wiki_repo save_all end @@ -19,6 +21,10 @@ module Projects Gitlab::ImportExport::RepoBundler.new(project: project, shared: @shared).bundle end + def bundle_wiki_repo + Gitlab::ImportExport::WikiRepoBundler.new(project: project, shared: @shared).bundle + end + def save_all Gitlab::ImportExport::Saver.save(storage_path: @shared.export_path) end diff --git a/lib/gitlab/import_export/repo_bundler.rb b/lib/gitlab/import_export/repo_bundler.rb index e719ee2e9e3..cd871687d76 100644 --- a/lib/gitlab/import_export/repo_bundler.rb +++ b/lib/gitlab/import_export/repo_bundler.rb @@ -20,9 +20,8 @@ module Gitlab def bundle_to_disk FileUtils.mkdir_p(@export_path) - tar_cf(archive: full_path, dir: path_to_repo) + git_bundle(repo_path: path_to_repo, bundle_path: @full_path) rescue - #TODO: handle error false end diff --git a/lib/gitlab/import_export/wiki_repo_bundler.rb b/lib/gitlab/import_export/wiki_repo_bundler.rb index 7821c671628..17f1530d5a0 100644 --- a/lib/gitlab/import_export/wiki_repo_bundler.rb +++ b/lib/gitlab/import_export/wiki_repo_bundler.rb @@ -3,7 +3,7 @@ module Gitlab class WikiRepoBundler < RepoBundler def bundle @wiki = ProjectWiki.new(@project) - return false if !wiki? + return true if !wiki? # it's okay to have no Wiki @full_path = File.join(@export_path, project_filename) bundle_to_disk end @@ -12,7 +12,6 @@ module Gitlab FileUtils.mkdir_p(@export_path) git_bundle(repo_path: path_to_repo, bundle_path: @full_path) rescue - #TODO: handle error false end -- GitLab