Files
CyberPanel/containerization/container.py

126 lines
4.0 KiB
Python
Raw Normal View History

2019-01-27 01:24:51 +05:00
#!/usr/local/CyberCP/bin/python2
import sys
sys.path.append('/usr/local/CyberCP')
import plogical.CyberCPLogFileWriter as logging
import argparse
2019-03-26 16:19:03 +05:00
from plogical.mailUtilities import mailUtilities
from serverStatus.serverStatusUtil import ServerStatusUtil
2019-01-27 01:24:51 +05:00
class Container:
packages = ['talksho']
users = ['5001']
@staticmethod
def listAll():
try:
counter = 0
length = len(Container.users)
for items in Container.users:
if (counter + 1) == length:
print items + ' ' + Container.packages[counter]
else:
print items + ' ' + Container.packages[counter] + ' '
counter = counter + 1
except BaseException, msg:
logging.CyberCPLogFileWriter.writeToFile(str(msg))
@staticmethod
def listPackages():
try:
counter = 0
length = len(Container.users)
for items in Container.packages:
if (counter + 1) == length:
print items
else:
print items + '\n'
counter = counter + 1
except BaseException, msg:
logging.CyberCPLogFileWriter.writeToFile(str(msg))
@staticmethod
def userIDPackage(user):
try:
counter = 0
for items in Container.users:
if items == user:
print Container.packages[counter]
return
counter = counter + 1
except BaseException, msg:
logging.CyberCPLogFileWriter.writeToFile(str(msg))
@staticmethod
def packageForUser(package):
try:
counter = 0
for items in Container.packages:
if items == package:
print Container.users[counter]
return
counter = counter + 1
except BaseException, msg:
logging.CyberCPLogFileWriter.writeToFile(str(msg))
2019-03-26 16:19:03 +05:00
@staticmethod
def submitContainerInstall():
try:
mailUtilities.checkHome()
statusFile = open(ServerStatusUtil.lswsInstallStatusPath, 'w')
logging.CyberCPLogFileWriter.statusWriter(ServerStatusUtil.lswsInstallStatusPath,
"Starting Packages Installation..\n", 1)
command = 'sudo yum install -y libcgroup-tools'
ServerStatusUtil.executioner(command, statusFile)
command = 'sudo systemctl enable cgconfig'
ServerStatusUtil.executioner(command, statusFile)
command = 'sudo systemctl enable cgred'
ServerStatusUtil.executioner(command, statusFile)
logging.CyberCPLogFileWriter.statusWriter(ServerStatusUtil.lswsInstallStatusPath,
"Packages successfully installed.[200]\n", 1)
except BaseException, msg:
logging.CyberCPLogFileWriter.statusWriter(ServerStatusUtil.lswsInstallStatusPath, str(msg) + ' [404].', 1)
2019-01-27 01:24:51 +05:00
def main():
parser = argparse.ArgumentParser(description='CyberPanel Container Manager')
parser.add_argument('--userid', help='User ID')
parser.add_argument('--package', help='Package')
2019-03-26 16:19:03 +05:00
parser.add_argument('--function', help='Function')
2019-01-27 01:24:51 +05:00
parser.add_argument('--list-all', help='List all users/packages.', action='store_true')
parser.add_argument('--list-packages', help='List all packages.', action='store_true')
args = vars(parser.parse_args())
if args['userid']:
Container.userIDPackage(args['userid'])
elif args['package']:
Container.packageForUser(args['package'])
elif args['list_all']:
Container.listAll()
elif args['list_packages']:
Container.listPackages()
2019-03-26 16:19:03 +05:00
elif args['list_packages']:
Container.listPackages()
elif args["function"] == "submitContainerInstall":
Container.submitContainerInstall()
2019-01-27 01:24:51 +05:00
if __name__ == "__main__":
main()