依赖github,自动更新。

pull/158/head
midoks 3 years ago
parent e32c4926ca
commit 68b9b95d5c
  1. 39
      class/core/system_api.py

@ -642,43 +642,40 @@ class system_api:
if not mw.isRestart(): if not mw.isRestart():
return mw.returnJson(False, '请等待所有安装任务完成再执行!') return mw.returnJson(False, '请等待所有安装任务完成再执行!')
version_new_info = self.getServerInfo()
version_now = config_api.config_api().getVersion()
new_ver = version_new_info['name']
if stype == 'check': if stype == 'check':
version_now = config_api.config_api().getVersion()
version_new_info = self.getServerInfo()
if not 'name' in version_new_info: if not 'name' in version_new_info:
return mw.returnJson(False, '服务器数据或网络有问题!') return mw.returnJson(False, '服务器数据或网络有问题!')
diff = self.versionDiff( diff = self.versionDiff(version_now, new_ver)
version_now, version_new_info['tag_name'])
if diff == 'new': if diff == 'new':
return mw.returnJson(True, '有新版本!', version_new_info['version']) return mw.returnJson(True, '有新版本!', new_ver)
elif diff == 'test': elif diff == 'test':
return mw.returnJson(True, '有测试版本!', version_new_info['version']) return mw.returnJson(True, '有测试版本!', new_ver)
else: else:
return mw.returnJson(False, '已经是最新,无需更新!') return mw.returnJson(False, '已经是最新,无需更新!')
if stype == 'info': if stype == 'info':
version_new_info = self.getServerInfo() if not 'name' in version_new_info:
version_now = config_api.config_api().getVersion()
if not 'version' in version_new_info:
return mw.returnJson(False, '服务器数据有问题!') return mw.returnJson(False, '服务器数据有问题!')
diff = self.versionDiff( diff = self.versionDiff(version_now, new_ver)
version_now, version_new_info['version']) data = {}
return mw.returnJson(True, '更新信息!', version_new_info) data['version'] = new_ver
data['content'] = version_new_info[
'body'].replace("\n", "<br/>")
return mw.returnJson(True, '更新信息!', data)
if stype == 'update': if stype == 'update':
if version == '': if version == '':
return mw.returnJson(False, '缺少版本信息!') return mw.returnJson(False, '缺少版本信息!')
v_new_info = self.getServerInfo() if new_ver != version:
if v_new_info['version'] != version:
return mw.returnJson(False, '更新失败,请重试!') return mw.returnJson(False, '更新失败,请重试!')
if not 'path' in v_new_info or v_new_info['path'] == '':
return mw.returnJson(False, '下载地址不存在!')
newUrl = v_new_info['path']
toPath = mw.getRootDir() + '/temp' toPath = mw.getRootDir() + '/temp'
if not os.path.exists(toPath): if not os.path.exists(toPath):
mw.execShell('mkdir -p ' + toPath) mw.execShell('mkdir -p ' + toPath)
@ -706,8 +703,8 @@ class system_api:
return mw.returnJson(False, '已经是最新,无需更新!') return mw.returnJson(False, '已经是最新,无需更新!')
except Exception as ex: except Exception as ex:
print('updateServer', ex) # print('updateServer', ex)
return mw.returnJson(False, "连接服务器失败!") return mw.returnJson(False, "连接服务器失败!" + str(ex))
# 修复面板 # 修复面板
def repPanel(self, get): def repPanel(self, get):

Loading…
Cancel
Save