Simple Linux Panel
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
mdserver-web/plugins/migration_api/index.py

109 lines
1.9 KiB

# coding:utf-8
import sys
import io
import os
import time
import re
2 years ago
import json
sys.path.append(os.getcwd() + "/class/core")
import mw
app_debug = False
if mw.isAppleSystem():
app_debug = True
def getPluginName():
return 'migration_api'
def getPluginDir():
return mw.getPluginDir() + '/' + getPluginName()
def getServerDir():
return mw.getServerDir() + '/' + getPluginName()
def getInitDFile():
if app_debug:
return '/tmp/' + getPluginName()
return '/etc/init.d/' + getPluginName()
def getConf():
2 years ago
path = getServerDir() + "/ma.cfg"
return path
2 years ago
def getCfgData():
path = getConf()
if not os.path.exists(path):
mw.writeFile(path, '{}')
2 years ago
t = mw.readFile(path)
2 years ago
return json.loads(t)
def getArgs():
args = sys.argv[2:]
tmp = {}
args_len = len(args)
if args_len == 1:
t = args[0].strip('{').strip('}')
2 years ago
if t.strip() == '':
tmp = []
else:
t = t.split(':')
tmp[t[0]] = t[1]
tmp[t[0]] = t[1]
elif args_len > 1:
for i in range(len(args)):
t = args[i].split(':')
tmp[t[0]] = t[1]
return tmp
def checkArgs(data, ck=[]):
for i in range(len(ck)):
if not ck[i] in data:
return (False, mw.returnJson(False, '参数:(' + ck[i] + ')没有!'))
return (True, mw.returnJson(True, 'ok'))
def status():
return 'start'
def initDreplace():
return 'ok'
2 years ago
def stepOne():
2 years ago
args = getArgs()
data = checkArgs(args, ['url', 'token'])
if not data[0]:
return data[1]
2 years ago
data = getCfgData()
print(data)
2 years ago
return mw.returnJson(True, 'ok')
if __name__ == "__main__":
func = sys.argv[1]
if func == 'status':
print(status())
elif func == 'start':
print(start())
elif func == 'stop':
print(stop())
2 years ago
elif func == 'step_one':
2 years ago
print(stepOne())
else:
print('error')