debian-mirror-gitlab/lib/gitlab/import_export/repo_saver.rb

34 lines
700 B
Ruby
Raw Normal View History

2018-12-23 12:14:25 +05:30
# frozen_string_literal: true
2016-06-22 15:30:34 +05:30
module Gitlab
module ImportExport
class RepoSaver
include Gitlab::ImportExport::CommandLineUtil
attr_reader :full_path
def initialize(project:, shared:)
@project = project
@shared = shared
end
def save
2016-08-24 12:49:21 +05:30
return true if @project.empty_repo? # it's ok to have no repo
2016-06-22 15:30:34 +05:30
@full_path = File.join(@shared.export_path, ImportExport.project_bundle_filename)
bundle_to_disk
end
private
def bundle_to_disk
2016-11-03 12:29:30 +05:30
mkdir_p(@shared.export_path)
2018-03-17 18:26:18 +05:30
@project.repository.bundle_to_disk(@full_path)
2016-06-22 15:30:34 +05:30
rescue => e
@shared.error(e)
false
end
end
end
end