gitlab-org--gitlab-foss/lib/gitlab/import_export/uploads_saver.rb

33 lines
726 B
Ruby
Raw Normal View History

2016-05-19 07:02:57 -04:00
module Gitlab
module ImportExport
class UploadsSaver
include Gitlab::ImportExport::CommandLineUtil
2016-05-19 07:02:57 -04:00
def initialize(project:, shared:)
@project = project
@shared = shared
end
def save
return true unless File.directory?(uploads_path)
2016-05-19 09:37:21 -04:00
copy_files(uploads_path, uploads_export_path)
2016-05-19 07:02:57 -04:00
rescue => e
2016-05-19 09:37:21 -04:00
@shared.error(e)
2016-05-19 07:02:57 -04:00
false
end
private
def uploads_export_path
File.join(@shared.export_path, 'uploads')
end
def uploads_path
# TODO: decide what to do with uploads. We will use UUIDs here too?
2016-05-19 07:21:56 -04:00
File.join(Rails.root.join('public/uploads'), @project.path_with_namespace)
2016-05-19 07:02:57 -04:00
end
end
end
end