def backup_media():
extension = "tar.gz"
filename = utils.filename_generate(extension, content_type='media')
# Create tarball
media_storage = get_storage_class()()
outputfile = utils.create_spooled_temporary_file()
tar_file = tarfile.open(name=filename, fileobj=outputfile, mode='w:gz')
for media_filename in explore_storage(media_storage):
tarinfo = tarfile.TarInfo(media_filename)
media_file = media_storage.open(media_filename)
tarinfo.size = len(media_file)
tar_file.addfile(tarinfo, media_file)
# Close the TAR for writing
tar_file.close()
# Store backup
outputfile.seek(0)
return outputfile, filename
评论列表
文章目录