コード例 #1
0
    def create_backup_file(self, source_dir, backup_basename):
        temp_dir = tempfile.mkdtemp()
        try:
            backup_filename = os.path.join(temp_dir, backup_basename)
            try:
                tar_file = tarfile.open(backup_filename, 'w|gz')
                try:
                    tar_file.add(source_dir)
                finally:
                    tar_file.close()

                return utils.create_spooled_temporary_file(backup_filename)
            finally:
                if os.path.exists(backup_filename):
                    os.remove(backup_filename)
        finally:
            os.rmdir(temp_dir)
コード例 #2
0
    def create_backup_file(self, source_dir, backup_basename):
        temp_dir = tempfile.mkdtemp()
        try:
            backup_filename = os.path.join(temp_dir, backup_basename)
            try:
                tar_file = tarfile.open(backup_filename, 'w|gz')
                try:
                    tar_file.add(source_dir)
                finally:
                    tar_file.close()

                return utils.create_spooled_temporary_file(backup_filename)
            finally:
                if os.path.exists(backup_filename):
                    os.remove(backup_filename)
        finally:
            os.rmdir(temp_dir)
コード例 #3
0
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
コード例 #4
0
    def create_backup_file(self, source_dir, backup_basename, **kwargs):
        temp_dir = tempfile.mkdtemp(dir=dbbackup_settings.TMP_DIR)
        try:
            backup_filename = os.path.join(temp_dir, backup_basename)
            try:
                tar_file = tarfile.open(backup_filename, 'w|gz') \
                    if kwargs.get('compress') \
                    else tarfile.open(backup_filename, 'w')

                try:
                    tar_file.add(source_dir)
                finally:
                    tar_file.close()

                return utils.create_spooled_temporary_file(backup_filename)
            finally:
                if os.path.exists(backup_filename):
                    os.remove(backup_filename)
        finally:
            os.rmdir(temp_dir)
コード例 #5
0
    def create_backup_file(self, source_dir, backup_basename, **kwargs):
        temp_dir = tempfile.mkdtemp(dir=dbbackup_settings.TMP_DIR)
        try:
            backup_filename = os.path.join(temp_dir, backup_basename)
            try:
                tar_file = tarfile.open(backup_filename, 'w|gz') \
                    if kwargs.get('compress') \
                    else tarfile.open(backup_filename, 'w')

                try:
                    tar_file.add(source_dir)
                finally:
                    tar_file.close()

                return utils.create_spooled_temporary_file(backup_filename)
            finally:
                if os.path.exists(backup_filename):
                    os.remove(backup_filename)
        finally:
            os.rmdir(temp_dir)
コード例 #6
0
 def test_func(self, *args):
     utils.create_spooled_temporary_file(filepath=self.path)
コード例 #7
0
ファイル: test_utils.py プロジェクト: shu777/django-dbbackup
 def test_func(self, *args):
     utils.create_spooled_temporary_file(filepath=self.path)