pull/382/head
midoks 2 years ago
parent 3e90db2c8d
commit f33c7e5a5e
  1. 3
      plugins/migration_api/index.html
  2. 48
      plugins/migration_api/index.py
  3. 50
      plugins/migration_api/js/app.js

@ -243,8 +243,7 @@ label.checkbox_label span {
<button class="btn btn-success infoNext">下一步</button>
</div>
</div>
<div class="pa15 psync_path" style="margin:0 50px">
</div>
<div class="pa15 psync_path" style="margin:0 50px;"></div>
<div class="pa15 psync_data" style="text-align: left;">
<div class="checkbox_conten">
<div class="checkbox_data">

@ -187,6 +187,52 @@ def stepOne():
return mw.returnJson(True, '验证成功')
# 获取本地服务器和环境配置
def get_src_config(args):
serverInfo = {}
serverInfo['status'] = True
sdir = mw.getServerDir()
serverInfo['webserver'] = '未安装'
if os.path.exists(sdir + '/openresty/nginx/sbin/nginx'):
serverInfo['webserver'] = 'OpenResty'
serverInfo['php'] = []
phpversions = ['52', '53', '54', '55', '56', '70', '71',
'72', '73', '74', '80', '81', '82', '83', '84']
phpPath = sdir + '/php/'
for pv in phpversions:
if not os.path.exists(phpPath + pv + '/bin/php'):
continue
serverInfo['php'].append(pv)
serverInfo['mysql'] = False
if os.path.exists(sdir + '/mysql/bin/mysql'):
serverInfo['mysql'] = True
import psutil
try:
diskInfo = psutil.disk_usage('/www')
except:
diskInfo = psutil.disk_usage('/')
serverInfo['disk'] = diskInfo[2]
return serverInfo
def get_dst_config(args):
data = getCfgData()
api = classApi(data['url'], data['token'])
disk = api.send('/system/disk_info', {})
info = api.send('/system/get_env_info', {})
print(disk)
print(info)
def stepTwo():
data = {}
data['local'] = get_src_config(None)
data['remote'] = get_dst_config(None)
return mw.returnJson(True, 'ok', data)
if __name__ == "__main__":
func = sys.argv[1]
if func == 'status':
@ -199,5 +245,7 @@ if __name__ == "__main__":
print(getStepOneData())
elif func == 'step_one':
print(stepOne())
elif func == 'step_two':
print(stepTwo())
else:
print('error')

@ -30,6 +30,7 @@ function maAsyncPost(method,args){
return syncPost('/plugins/run', {name:'migration_api', func:method, args:_args});
}
function maPostCallbak(method, args, callback){
var loadT = layer.msg('正在获取...', { icon: 16, time: 0, shade: 0.3 });
@ -58,6 +59,16 @@ function maPostCallbak(method, args, callback){
}
function selectProgress(val){
$('.step_head li').removeClass('active');
$('.step_head li').each(function(){
var v = $(this).find('span').text();
if (val == v){
$(this).addClass('active');
}
});
}
function initStep1(){
var url = $('input[name="sync_url"]').val();
var token = $('input[name="sync_token"]').val();
@ -65,21 +76,46 @@ function initStep1(){
var rdata = $.parseJSON(rdata.data);
showMsg(rdata.msg,function(){
if (rdata.status){
selectProgress(2);
initStep2();
}
},{ icon: rdata.status ? 1 : 2 });
});
}
function initStep2(){
maPost('step_one',{}, function(rdata){
maPost('step_two',{}, function(rdata){
var rdata = $.parseJSON(rdata.data);
console.log(rdata);
if (rdata.status){
} else {
}
showMsg(rdata.msg,function(){
if (rdata.status){
$('.psync_info').hide();
var info = rdata.data;
var body = '<div class="divtable">\
<table class="table table-hover">\
<thead>\
<tr><th style="border-right:1px solid #ddd">服务</th><th></th><th></th></tr>\
</thead>\
<tbody>\
<tr><td style="border-right:1px solid #ddd">网站服务</td><td>'+info['local']['webserver']+'</td><td>OpenResty</td></tr>\
<tr><td style="border-right:1px solid #ddd">安装MySQL</td><td>'+(info['local']['mysql']?'':'')+'</td><td></td></tr>\
<tr><td style="border-right:1px solid #ddd">安装PHP</td><td>'+info['local']['php'].join('/')+'</td><td>74</td></tr>\
<tr><td style="border-right:1px solid #ddd">可用磁盘</td><td>'+info['local']['disk']+'</td><td>54GB</td></tr>\
</tbody>\
</table>\
</div>';
body += '<div class="line mtb20" style="text-align: left;">\
<button class="btn btn-default btn-sm mr20 pathTestting">重新检测</button>\
<button class="btn btn-default btn-sm mr20 pathBcak">上一步</button>\
<button class="btn btn-success btn-sm psync-next pathNext" disabled="disabled">下一步</button>\
</div>';
$('.psync_path').html(body);
$('.psync_path').show();
}
},{ icon: rdata.status ? 1 : 2 });
});
}

Loading…
Cancel
Save