mirror of
https://github.com/usmannasir/cyberpanel.git
synced 2025-11-07 22:06:05 +01:00
fixconfiguregdrive
This commit is contained in:
@@ -23,10 +23,9 @@ urlpatterns = [
|
|||||||
url(r'^removeSite$', views.remove_site, name='removeSite'),
|
url(r'^removeSite$', views.remove_site, name='removeSite'),
|
||||||
url(r'^addWebsite$', views.add_website, name='addWebsite'),
|
url(r'^addWebsite$', views.add_website, name='addWebsite'),
|
||||||
### V2 Backups URls
|
### V2 Backups URls
|
||||||
|
|
||||||
url(r'^CreateV2Backup$', views.CreateV2Backup, name='CreateV2Backup'),
|
url(r'^CreateV2Backup$', views.CreateV2Backup, name='CreateV2Backup'),
|
||||||
url(r'^ConfigureV2Backup$', views.ConfigureV2Backup, name='ConfigureV2Backup'),
|
url(r'^ConfigureV2Backup$', views.ConfigureV2Backup, name='ConfigureV2Backup'),
|
||||||
url(r'^ConfigureV2BackupSetup$', views.createV2BackupSetup, name='ConfigureV2BackupSetup'),
|
url(r'^ConfigureV2BackupSetup$', views.ConfigureV2BackupSetup, name='ConfigureV2BackupSetup'),
|
||||||
url(r'^RestoreV2backupSite$', views.RestoreV2backupSite, name='RestoreV2backupSite'),
|
url(r'^RestoreV2backupSite$', views.RestoreV2backupSite, name='RestoreV2backupSite'),
|
||||||
url(r'^selectwebsiteRetorev2$', views.selectwebsiteRetorev2, name='selectwebsiteRetorev2'),
|
url(r'^selectwebsiteRetorev2$', views.selectwebsiteRetorev2, name='selectwebsiteRetorev2'),
|
||||||
url(r'^selectreporestorev2$', views.selectreporestorev2, name='selectreporestorev2'),
|
url(r'^selectreporestorev2$', views.selectreporestorev2, name='selectreporestorev2'),
|
||||||
|
|||||||
@@ -731,15 +731,7 @@ def ConfigureV2Backup(request):
|
|||||||
logging.writeToFile(str(msg))
|
logging.writeToFile(str(msg))
|
||||||
return redirect(loadLoginPage)
|
return redirect(loadLoginPage)
|
||||||
|
|
||||||
def CreateV2Backup(request):
|
def ConfigureV2BackupSetup(request):
|
||||||
try:
|
|
||||||
userID = request.session['userID']
|
|
||||||
bm = BackupManager()
|
|
||||||
return bm.CreateV2backupSite(request, userID)
|
|
||||||
except KeyError:
|
|
||||||
return redirect(loadLoginPage)
|
|
||||||
|
|
||||||
def createV2BackupSetup(request):
|
|
||||||
try:
|
try:
|
||||||
userID = request.session['userID']
|
userID = request.session['userID']
|
||||||
|
|
||||||
@@ -771,6 +763,15 @@ def createV2BackupSetup(request):
|
|||||||
|
|
||||||
return ConfigureV2Backup(request)
|
return ConfigureV2Backup(request)
|
||||||
|
|
||||||
|
except BaseException as msg:
|
||||||
|
logging.writeToFile("Error configure"+str(msg))
|
||||||
|
return redirect(loadLoginPage)
|
||||||
|
|
||||||
|
def CreateV2Backup(request):
|
||||||
|
try:
|
||||||
|
userID = request.session['userID']
|
||||||
|
bm = BackupManager()
|
||||||
|
return bm.CreateV2backupSite(request, userID)
|
||||||
except KeyError:
|
except KeyError:
|
||||||
return redirect(loadLoginPage)
|
return redirect(loadLoginPage)
|
||||||
|
|
||||||
@@ -801,7 +802,6 @@ def CreateV2BackupButton(request):
|
|||||||
extra_args['BackupEmails'] = data['websiteEmails'] if 'websiteEmails' in data else False
|
extra_args['BackupEmails'] = data['websiteEmails'] if 'websiteEmails' in data else False
|
||||||
extra_args['BackupDatabase'] = data['websiteDatabases'] if 'websiteDatabases' in data else False
|
extra_args['BackupDatabase'] = data['websiteDatabases'] if 'websiteDatabases' in data else False
|
||||||
|
|
||||||
|
|
||||||
background = CPBackupsV2(extra_args)
|
background = CPBackupsV2(extra_args)
|
||||||
background.start()
|
background.start()
|
||||||
# background = CPBackupsV2({'domain': Selectedwebsite, 'BasePath': '/home/backup', 'BackupDatabase': 1, 'BackupData': 1,
|
# background = CPBackupsV2({'domain': Selectedwebsite, 'BasePath': '/home/backup', 'BackupDatabase': 1, 'BackupData': 1,
|
||||||
|
|||||||
@@ -40,8 +40,11 @@ class CPBackupsV2(multi.Thread):
|
|||||||
def __init__(self, data):
|
def __init__(self, data):
|
||||||
multi.Thread.__init__(self)
|
multi.Thread.__init__(self)
|
||||||
self.data = data
|
self.data = data
|
||||||
|
try:
|
||||||
|
|
||||||
self.function = data['function']
|
self.function = data['function']
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
|
||||||
### set self.website as it is needed in many functions
|
### set self.website as it is needed in many functions
|
||||||
from websiteFunctions.models import Websites
|
from websiteFunctions.models import Websites
|
||||||
@@ -90,7 +93,8 @@ class CPBackupsV2(multi.Thread):
|
|||||||
return 0, str(msg)
|
return 0, str(msg)
|
||||||
|
|
||||||
def SetupRcloneBackend(self, type, config):
|
def SetupRcloneBackend(self, type, config):
|
||||||
|
try:
|
||||||
|
logging.CyberCPLogFileWriter.writeToFile(' [Configure.1]')
|
||||||
self.LocalRclonePath = f'/home/{self.website.domain}/.config/rclone'
|
self.LocalRclonePath = f'/home/{self.website.domain}/.config/rclone'
|
||||||
self.ConfigFilePath = f'{self.LocalRclonePath}/rclone.conf'
|
self.ConfigFilePath = f'{self.LocalRclonePath}/rclone.conf'
|
||||||
|
|
||||||
@@ -99,14 +103,14 @@ class CPBackupsV2(multi.Thread):
|
|||||||
|
|
||||||
command = f'cat {self.ConfigFilePath}'
|
command = f'cat {self.ConfigFilePath}'
|
||||||
CurrentContent = ProcessUtilities.outputExecutioner(command, self.website.externalApp)
|
CurrentContent = ProcessUtilities.outputExecutioner(command, self.website.externalApp)
|
||||||
|
logging.CyberCPLogFileWriter.writeToFile(' [Configure.2]')
|
||||||
try:
|
try:
|
||||||
|
|
||||||
if CurrentContent.find('No such file or directory'):
|
if CurrentContent.find('No such file or directory'):
|
||||||
CurrentContent = ''
|
CurrentContent = ''
|
||||||
except:
|
except:
|
||||||
CurrentContent = ''
|
CurrentContent = ''
|
||||||
|
logging.CyberCPLogFileWriter.writeToFile(' [Configure.3]')
|
||||||
if type == CPBackupsV2.SFTP:
|
if type == CPBackupsV2.SFTP:
|
||||||
## config = {"name":, "host":, "user":, "port":, "path":, "password":,}
|
## config = {"name":, "host":, "user":, "port":, "path":, "password":,}
|
||||||
command = f'rclone obscure {config["password"]}'
|
command = f'rclone obscure {config["password"]}'
|
||||||
@@ -129,7 +133,7 @@ pass = {ObsecurePassword}
|
|||||||
final_json = json.dumps({'status': 1, 'fetchStatus': 1, 'error_message': "None", "data": None})
|
final_json = json.dumps({'status': 1, 'fetchStatus': 1, 'error_message': "None", "data": None})
|
||||||
return HttpResponse(final_json)
|
return HttpResponse(final_json)
|
||||||
elif type == CPBackupsV2.GDrive:
|
elif type == CPBackupsV2.GDrive:
|
||||||
|
logging.CyberCPLogFileWriter.writeToFile(' [Configure.4]')
|
||||||
token = """{"access_token":"%s","token_type":"Bearer","refresh_token":"%s"}""" % (
|
token = """{"access_token":"%s","token_type":"Bearer","refresh_token":"%s"}""" % (
|
||||||
config["token"], config["refresh_token"])
|
config["token"], config["refresh_token"])
|
||||||
|
|
||||||
@@ -149,6 +153,9 @@ token = {token}
|
|||||||
|
|
||||||
command = f"chmod 600 {self.ConfigFilePath}"
|
command = f"chmod 600 {self.ConfigFilePath}"
|
||||||
ProcessUtilities.executioner(command, self.website.externalApp)
|
ProcessUtilities.executioner(command, self.website.externalApp)
|
||||||
|
logging.CyberCPLogFileWriter.writeToFile(' [Configure.5]')
|
||||||
|
except BaseException as msg:
|
||||||
|
logging.CyberCPLogFileWriter.writeToFile(str(msg) + ' [Configure.run]')
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def FetchCurrentTimeStamp():
|
def FetchCurrentTimeStamp():
|
||||||
|
|||||||
Reference in New Issue
Block a user