use new CloudLinux API

This commit is contained in:
Usman Nasir
2019-12-25 18:25:18 +05:00
parent 05f0660267
commit 1c2a738216
7 changed files with 96 additions and 33 deletions

16
CLScript/CLMain.py Normal file
View File

@@ -0,0 +1,16 @@
import json
class CLMain():
def __init__(self):
self.path = '/usr/local/CyberCP/version.txt'
versionInfo = json.loads(open(self.path, 'r').read())
self.version = versionInfo['version']
self.build = versionInfo['build']
ipFile = "/etc/cyberpanel/machineIP"
f = open(ipFile)
ipData = f.read()
self.ipAddress = ipData.split('\n', 1)[0]
self.initialMeta = {
"result": "ok"
}

39
CLScript/CloudLinuxPackages.py Executable file
View File

@@ -0,0 +1,39 @@
#!/usr/local/CyberCP/bin/python
import sys
import os.path
import django
sys.path.append('/usr/local/CyberCP')
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "CyberCP.settings")
try:
django.setup()
except:
pass
from websiteFunctions.models import Websites
from CLManager.CLPackages import CLPackages
import argparse
import pwd
import json
from CLScript.CLMain import CLMain
class CloudLinuxPackages(CLMain):
def __init__(self):
CLMain.__init__(self)
def listAll(self):
packages = []
for items in Websites.objects.all():
itemPackage = items.package
try:
clPackage = CLPackages.objects.get(owner=itemPackage)
packages.append({'name': clPackage.name, 'owner': items.externalApp})
except:
pass
final = {'data': packages, 'metadata': self.initialMeta}
print(json.dumps(final))
if __name__ == '__main__':
pi = CloudLinuxPackages()
pi.listAll()

0
CLScript/__init__.py Normal file
View File

27
CLScript/panel_info.py Executable file
View File

@@ -0,0 +1,27 @@
#!/usr/local/CyberCP/bin/python
import sys
sys.path.append('/usr/local/CyberCP')
import json
from CLScript.CLMain import CLMain
class PanelInfo(CLMain):
def __init__(self):
CLMain.__init__(self)
def emit(self):
initial = {
"name": "CyberPanel",
"version": "%s.%s" % (self.version, self.build),
"user_login_url": "https://%s:8090/" % (self.ipAddress)
}
final = {'data': initial, 'metadata': self.initialMeta}
print(json.dumps(final))
if __name__ == '__main__':
pi = PanelInfo()
pi.emit()