Пример #1
0
def create_backup(attachment):
    """Create a backup from a file and attachment"""
    # for the time being, this needs to be in here because of cyclical 
    # references
    from backups.models import Backup, BackupUser
    backup = Backup(attachment=attachment)
    usernames, device_id = _get_backup_metadata(attachment)
    backup.device_id = device_id
    backup.save()
    domain = attachment.submission.domain
    users = []
    for username in usernames:
        users.append(BackupUser.objects.get_or_create(domain=domain, 
                                                      username=username)[0])
    backup.users = users
    backup.save()
    
    # also tell the submission it was handled, so we can override the custom response
    handle_type = SubmissionHandlingType.objects.get_or_create(app=APP_NAME, method=BACKUP_HANDLER)[0]
    attachment.submission.handled(handle_type)
Пример #2
0
    def do_task_8(self):
        """Create the backup task"""

        srv = Server.objects.get(pk=self.task_data[0]['server_pk'])

        if self.step_data[1]['setup_backups']:
            bkp = Backup()
            bkp.name = self.step_data[1]['name']
            bkp.server_from = srv
            bkp.server_to = Server.objects.get(name=settings.BACKUP_SERVER)
            bkp.folder_from = self.step_data[1]['backup_source']
            bkp.folder_to = self.step_data[1]['backup_destination']
            bkp.prox_and_sys_excludes = self.step_data[1]['backup_proc_and_sys_excludes']
            bkp.excludes = self.step_data[1]['backup_excludes']
            bkp.active = True

            bkp.save()

            return (True, {'bkp_pk': bkp.pk})

        return (True, None)