mirror of
https://github.com/usmannasir/cyberpanel.git
synced 2025-11-06 05:15:49 +01:00
configure how cloudbackup process is executed
This commit is contained in:
@@ -1694,3 +1694,41 @@ class CloudManager:
|
||||
final_dic = {'status': 0, 'fetchStatus': 0, 'error_message': str(msg)}
|
||||
final_json = json.dumps(final_dic)
|
||||
return HttpResponse(final_json)
|
||||
|
||||
def fetchCloudBackupSettings(self):
|
||||
try:
|
||||
from plogical.backupUtilities import backupUtilities
|
||||
if os.path.exists(backupUtilities.CloudBackupConfigPath):
|
||||
result = json.loads(open(backupUtilities.CloudBackupConfigPath, 'r').read())
|
||||
self.nice = result['nice']
|
||||
self.cpu = result['cpu']
|
||||
self.time = result['time']
|
||||
else:
|
||||
self.nice = backupUtilities.NiceDefault
|
||||
self.cpu = backupUtilities.CPUDefault
|
||||
self.time = backupUtilities.time
|
||||
|
||||
data_ret = {'status': 1, 'nice': self.nice, 'cpu': self.cpu, 'time': self.time}
|
||||
json_data = json.dumps(data_ret)
|
||||
return HttpResponse(json_data)
|
||||
|
||||
except BaseException as msg:
|
||||
data_ret = {'status': 0, 'abort': 0, 'installationProgress': "0", 'errorMessage': str(msg)}
|
||||
json_data = json.dumps(data_ret)
|
||||
return HttpResponse(json_data)
|
||||
|
||||
def saveCloudBackupSettings(self):
|
||||
try:
|
||||
from plogical.backupUtilities import backupUtilities
|
||||
writeToFile = open(backupUtilities.CloudBackupConfigPath, 'w')
|
||||
writeToFile.write(json.dumps(self.data))
|
||||
writeToFile.close()
|
||||
|
||||
data_ret = {'status': 1}
|
||||
json_data = json.dumps(data_ret)
|
||||
return HttpResponse(json_data)
|
||||
|
||||
except BaseException as msg:
|
||||
data_ret = {'status': 0, 'abort': 0, 'installationProgress': "0", 'errorMessage': str(msg)}
|
||||
json_data = json.dumps(data_ret)
|
||||
return HttpResponse(json_data)
|
||||
|
||||
@@ -55,6 +55,10 @@ def router(request):
|
||||
return cm.SubmitCloudBackup()
|
||||
elif controller == 'getCurrentCloudBackups':
|
||||
return cm.getCurrentCloudBackups()
|
||||
elif controller == 'fetchCloudBackupSettings':
|
||||
return cm.fetchCloudBackupSettings()
|
||||
elif controller == 'saveCloudBackupSettings':
|
||||
return cm.saveCloudBackupSettings()
|
||||
elif controller == 'fetchWebsites':
|
||||
return cm.fetchWebsites()
|
||||
elif controller == 'fetchWebsiteDataJSON':
|
||||
|
||||
@@ -60,6 +60,7 @@ class backupUtilities:
|
||||
NiceDefault = '10'
|
||||
CPUDefault = '1000'
|
||||
CloudBackupConfigPath = '/home/cyberpanel/CloudBackup.json'
|
||||
time = 10
|
||||
|
||||
def __init__(self, extraArgs):
|
||||
self.extraArgs = extraArgs
|
||||
@@ -1259,9 +1260,9 @@ class backupUtilities:
|
||||
logging.CyberCPLogFileWriter.writeToFile('Current CPU percent %s.' % (int(psutil.cpu_percent(interval=None))))
|
||||
if int(psutil.cpu_percent(interval=None)) > int(self.cpu):
|
||||
logging.CyberCPLogFileWriter.statusWriter(self.extraArgs['tempStatusPath'],
|
||||
'Current CPU usage exceeds %s percent. Backup process will sleep for 10 seconds..,0' % (self.cpu))
|
||||
'Current CPU usage exceeds %s percent. Backup process will sleep for %s seconds..,0' % (self.cpu, str(self.time)))
|
||||
import time
|
||||
time.sleep(10)
|
||||
time.sleep(self.time)
|
||||
else:
|
||||
break
|
||||
|
||||
@@ -1416,9 +1417,11 @@ class backupUtilities:
|
||||
result = json.loads(open(backupUtilities.CloudBackupConfigPath, 'r').read())
|
||||
self.nice = result['nice']
|
||||
self.cpu = result['cpu']
|
||||
self.time = int(result['time'])
|
||||
else:
|
||||
self.nice = backupUtilities.NiceDefault
|
||||
self.cpu = backupUtilities.CPUDefault
|
||||
self.time = int(backupUtilities.time)
|
||||
|
||||
self.BackupPath = '/home/cyberpanel/backups/%s/backup-' % (self.extraArgs['domain']) + self.extraArgs['domain'] + "-" + time.strftime("%m.%d.%Y_%H-%M-%S")
|
||||
self.website = Websites.objects.get(domain=self.extraArgs['domain'])
|
||||
|
||||
Reference in New Issue
Block a user