diff --git a/plogical/backupSchedule.py b/plogical/backupSchedule.py index f51b12012..f9e7088e9 100644 --- a/plogical/backupSchedule.py +++ b/plogical/backupSchedule.py @@ -19,6 +19,36 @@ class backupSchedule: except IOError,msg: return "Can not write to error file." + @staticmethod + def createLocalBackup(virtualHost, backupLogPath): + try: + + backupSchedule.remoteBackupLogging(backupLogPath, "Starting local backup for: " + virtualHost) + + finalData = json.dumps({'websiteToBeBacked': virtualHost}) + r = requests.post("http://localhost:5003/backup/submitBackupCreation", data=finalData) + + data = json.loads(r.text) + backupPath = data['tempStorage'] + + backupSchedule.remoteBackupLogging(backupLogPath, "Waiting for backup to complete.. ") + + + while (1): + r = requests.post("http://localhost:5003/backup/backupStatus", data=finalData) + time.sleep(2) + data = json.loads(r.text) + + if data['backupStatus'] == 0: + backupSchedule.remoteBackupLogging(backupLogPath, "An error occurred, Error message: " + data[ + 'error_message']) + return 0, backupPath + elif data['abort'] == 1: + backupSchedule.remoteBackupLogging(backupLogPath, "Backup Completed for: " + virtualHost) + return 1, backupPath + + except BaseException, msg: + logging.CyberCPLogFileWriter.writeToFile(str(msg) + " [startBackup]") @staticmethod def createBackup(virtualHost, ipAddress, backupLogPath , port): @@ -27,42 +57,40 @@ class backupSchedule: backupSchedule.remoteBackupLogging(backupLogPath, "Preparing to create backup for: " + virtualHost) backupSchedule.remoteBackupLogging(backupLogPath, "Backup started for: " + virtualHost) - finalData = json.dumps({'websiteToBeBacked': virtualHost}) - r = requests.post("http://localhost:5003/backup/submitBackupCreation", data=finalData) - data = json.loads(r.text) - backupPath = data['tempStorage'] + retValues = backupSchedule.createLocalBackup(virtualHost, backupLogPath) + + if retValues[0] == 1: + backupPath = retValues[1] + + backupSchedule.remoteBackupLogging(backupLogPath, "Backup created for: " + virtualHost) + + ## Prepping to send backup. + + backupSchedule.remoteBackupLogging(backupLogPath, "Preparing to send backup for: " + virtualHost +" to " + ipAddress) + + backupSchedule.sendBackup(backupPath+".tar.gz", ipAddress, backupLogPath, port) + + backupSchedule.remoteBackupLogging(backupLogPath, "Backup for: " + virtualHost + " is sent to " + ipAddress) + + ## Backup sent. - while (1): - r = requests.post("http://localhost:5003/backup/backupStatus", data= finalData) - time.sleep(2) - data = json.loads(r.text) + backupSchedule.remoteBackupLogging(backupLogPath, "") + backupSchedule.remoteBackupLogging(backupLogPath, "") - if data['backupStatus'] == 0: - break - elif data['abort'] == 1: - break + backupSchedule.remoteBackupLogging(backupLogPath, "#################################################") - backupSchedule.remoteBackupLogging(backupLogPath, "Backup created for: " + virtualHost) + backupSchedule.remoteBackupLogging(backupLogPath, "") + backupSchedule.remoteBackupLogging(backupLogPath, "") + else: - ## Prepping to send backup. + backupSchedule.remoteBackupLogging(backupLogPath, "") + backupSchedule.remoteBackupLogging(backupLogPath, "") - backupSchedule.remoteBackupLogging(backupLogPath, "Preparing to send backup for: " + virtualHost +" to " + ipAddress) + backupSchedule.remoteBackupLogging(backupLogPath, "#################################################") - backupSchedule.sendBackup(backupPath+".tar.gz", ipAddress, backupLogPath, port) - - backupSchedule.remoteBackupLogging(backupLogPath, "Backup for: " + virtualHost + " is sent to " + ipAddress) - - ## Backup sent. - - - backupSchedule.remoteBackupLogging(backupLogPath, "") - backupSchedule.remoteBackupLogging(backupLogPath, "") - - backupSchedule.remoteBackupLogging(backupLogPath, "#################################################") - - backupSchedule.remoteBackupLogging(backupLogPath, "") - backupSchedule.remoteBackupLogging(backupLogPath, "") + backupSchedule.remoteBackupLogging(backupLogPath, "") + backupSchedule.remoteBackupLogging(backupLogPath, "") except BaseException,msg: logging.CyberCPLogFileWriter.writeToFile(str(msg) + " [createBackup]") @@ -138,6 +166,11 @@ class backupSchedule: if match(r'([\da-z\.-]+\.[a-z\.]{2,12}|[\d\.]+)([\/:?=&#]{1}[\da-z\.-]+)*[\/\?]?', virtualHost, M | I): backupSchedule.createBackup(virtualHost, ipAddress, backupLogPath, port) + + backupSchedule.remoteBackupLogging(backupLogPath, "Remote backup job completed.\n") + + + except BaseException,msg: logging.CyberCPLogFileWriter.writeToFile(str(msg) + " [prepare]") diff --git a/plogical/backupScheduleLocal.py b/plogical/backupScheduleLocal.py index a1f399aab..17b935291 100644 --- a/plogical/backupScheduleLocal.py +++ b/plogical/backupScheduleLocal.py @@ -1,53 +1,10 @@ -import thread -import pexpect import CyberCPLogFileWriter as logging -import subprocess -import shlex -from shutil import rmtree import os -import requests -import json import time +from backupSchedule import backupSchedule class backupScheduleLocal: - - @staticmethod - def createBackup(virtualHost,writeToFile): - try: - - writeToFile.writelines("[" + time.strftime( - "%I-%M-%S-%a-%b-%Y") + "]" + " Starting local backup for: "+virtualHost + "\n") - - finalData = json.dumps({'websiteToBeBacked': virtualHost}) - requests.post("http://localhost:5003/backup/submitBackupCreation", data=finalData) - - writeToFile.writelines("[" + time.strftime( - "%I-%M-%S-%a-%b-%Y") + "]" + " Waiting for backup to complete.. " + "\n") - - while (1): - r = requests.post("http://localhost:5003/backup/backupStatus", data= finalData) - time.sleep(2) - data = json.loads(r.text) - - writeToFile.writelines("[" + time.strftime( - "%I-%M-%S-%a-%b-%Y") + "]" + " Waiting for backup to complete.. " + "\n") - - if data['backupStatus'] == 0: - writeToFile.writelines("[" + time.strftime( - "%I-%M-%S-%a-%b-%Y") + "]" + "An error occurred, Error message: " + data['error_message'] + "\n") - break - elif data['abort'] == 1: - writeToFile.writelines("[" + time.strftime( - "%I-%M-%S-%a-%b-%Y") + "]" + " Backup Completed for: " + virtualHost + "\n") - - writeToFile.writelines("[" + time.strftime( - "%I-%M-%S-%a-%b-%Y") + "]" + " #############################################" + "\n") - break - - except BaseException,msg: - logging.CyberCPLogFileWriter.writeToFile(str(msg) + " [startBackup]") - @staticmethod def prepare(): try: @@ -55,24 +12,25 @@ class backupScheduleLocal: writeToFile = open(backupLogPath, "a") - writeToFile.writelines("#################################################\n") - writeToFile.writelines(" Backup log for: " + time.strftime("%I-%M-%S-%a-%b-%Y") + "\n") - writeToFile.writelines("#################################################\n") + backupSchedule.remoteBackupLogging(backupLogPath, "#################################################") + backupSchedule.remoteBackupLogging(backupLogPath," Local Backup log for: " + time.strftime("%I-%M-%S-%a-%b-%Y")) + backupSchedule.remoteBackupLogging(backupLogPath, "#################################################\n") - writeToFile.writelines("\n") - writeToFile.writelines("\n") + backupSchedule.remoteBackupLogging(backupLogPath, "") + backupSchedule.remoteBackupLogging(backupLogPath, "") for virtualHost in os.listdir("/home"): - backupScheduleLocal.createBackup(virtualHost,writeToFile) + backupSchedule.createLocalBackup(virtualHost, backupLogPath) - writeToFile.writelines("\n") - writeToFile.writelines("\n") - writeToFile.writelines("[" + time.strftime( - "%I-%M-%S-%a-%b-%Y") + "]" + " #############################################" + "\n") - writeToFile.writelines("[" + time.strftime( - "%I-%M-%S-%a-%b-%Y") + "]" + " Local Backup Completed" + "\n") - writeToFile.writelines("[" + time.strftime( - "%I-%M-%S-%a-%b-%Y") + "]" + " #############################################" + "\n") + backupSchedule.remoteBackupLogging(backupLogPath, "") + backupSchedule.remoteBackupLogging(backupLogPath, "") + + backupSchedule.remoteBackupLogging(backupLogPath, "#################################################") + + backupSchedule.remoteBackupLogging(backupLogPath, "") + backupSchedule.remoteBackupLogging(backupLogPath, "") + + backupSchedule.remoteBackupLogging(backupLogPath, "Local backup job completed.\n") writeToFile.close() diff --git a/userManagment/static/userManagment/userManagment.js b/userManagment/static/userManagment/userManagment.js index 5e4d0f2f9..4c82b4068 100644 --- a/userManagment/static/userManagment/userManagment.js +++ b/userManagment/static/userManagment/userManagment.js @@ -533,7 +533,7 @@ app.controller('createACLCTRL', function($scope,$http) { var data = { aclName : $scope.aclName, - makeAdmin : $scope.makeAdmin = true, + makeAdmin : $scope.makeAdmin, // versionManagement : $scope.versionManagement,