增加jsd清理机制,检测升级前自动清空本地jsd文件
This commit is contained in:
parent
0f7f9bda8e
commit
413a30b324
@ -1 +1 @@
|
||||
3.9.46beta1
|
||||
3.9.46beta2
|
||||
@ -234,7 +234,7 @@
|
||||
});
|
||||
|
||||
$('#clear_drop').click(function () {
|
||||
if(confirm('若js目录存在同名的jsd文件则视为该源为废弃源。执行此功能将清理与jsd文件同名的js文件。执行此功能前请确保项目的jsd文件跟仓库一致,防止误删。推荐进容器 rm -rf js/*.jsd 后强制升级一次再使用此功能。立即执行则确认否则取消执行')){
|
||||
if(confirm('若js目录存在同名的jsd文件则视为该源为废弃源。执行此功能将清理与jsd文件同名的js文件。执行此功能前请确保项目的jsd文件跟仓库一致,防止误删。推荐进容器 rm -rf js/*.jsd 后强制升级一次再使用此功能,后续升级时会自动清空旧版jsd文件。立即执行则确认否则取消执行')){
|
||||
$.get("/admin/clear_drop", function (data, status) {
|
||||
console.log(data);
|
||||
if (data.code === 200) {
|
||||
|
||||
@ -156,13 +156,25 @@ def copy_to_update():
|
||||
# print(f'升级失败,找不到目录{dr_path}')
|
||||
logger.info(f'升级失败,找不到目录{dr_path}')
|
||||
return False
|
||||
|
||||
js_path = os.path.join(base_path, 'js')
|
||||
files = os.listdir(js_path)
|
||||
jsd_list = list(filter(lambda x: str(x).endswith('.jsd'), files))
|
||||
try:
|
||||
for jsd in jsd_list:
|
||||
os.remove(jsd)
|
||||
logger.info(f'升级过程中共计清理jsd文件数:{len(jsd_list)}')
|
||||
except Exception as e:
|
||||
logger.info(f'升级过程中清理jsd文件发生错误:{e}')
|
||||
|
||||
# 千万不能覆盖super,base
|
||||
paths = ['js','models','controllers','libs','static','templates','utils','txt','jiexi','py','whl','doc']
|
||||
exclude_files = ['txt/pycms0.json','txt/pycms1.json','txt/pycms2.json','base/rules.db']
|
||||
for path in paths:
|
||||
force_copy_files(os.path.join(dr_path, path),os.path.join(base_path, path),exclude_files)
|
||||
force_copy_files(os.path.join(dr_path, path), os.path.join(base_path, path),exclude_files)
|
||||
try:
|
||||
shutil.copy(os.path.join(dr_path, 'app.py'), os.path.join(base_path, 'app.py')) # 复制文件
|
||||
shutil.copy(os.path.join(dr_path, 'requirements.txt'), os.path.join(base_path, 'requirements.txt')) # 复制文件
|
||||
except Exception as e:
|
||||
logger.info(f'更新app.py发生错误:{e}')
|
||||
logger.info(f'升级程序执行完毕,全部文件已拷贝覆盖')
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user