Merge branch 'backend_dev' of gitlab2.kylin.com:kylin-desktop/update-manager-group/kylin-system-updater into backend_dev

This commit is contained in:
luoxueyi 2021-11-17 11:14:57 +08:00
commit 9bc10c6d28
1 changed files with 10 additions and 10 deletions

View File

@ -121,17 +121,15 @@ class UpdateList():
#在可升级的列表当中 此步骤为了排除已安装不需要升级的
if pkg_obj.is_installed:
if pkg_obj in pkgs_upgrade:
#将推送的单包安装 与组中的重复去除掉
pkg_obj.mark_install()
pkg_list.append(pkg_obj)
pkgs_upgrade.remove(pkg_obj)
pkg_list.append(pkg_obj)
else:
pkg_list.append(pkg_obj)
else:
group_important_list.append(pkg_name)
if pkg_list != None:
install_list,upgrade_list = self._make_fiter(pkg_list,True)
if pkg_list != []:
install_list,upgrade_list = self._make_fiter_origin(pkg_list,True)
pkg_important_list = install_list + upgrade_list
logging.info("pkg_important_list: %a, group_important_list:%a",pkg_important_list,group_important_list)
@ -212,7 +210,8 @@ class UpdateList():
json.dump(output_json, f, ensure_ascii=False, indent=4)
logging.info("Generate Jsonfile(%s) to complete... ",output_config_name)
def _make_fiter(self,all_pkg_obj,is_adjust):
#进行源过滤is_adjust 是否调整cache中的候选版本单包推送会调整保持控制面板显示正确的版本
def _make_fiter_origin(self,all_pkg_obj,is_adjust):
new_install_list = []
new_upgrade_list = []
#进行安装列表的过滤
@ -304,11 +303,12 @@ class UpdateList():
new_upgrade_list = list(set(pkgs_upgrade) & set(upgrade_pkgs_list))
#进行源过滤
new_install_list,new_upgrade_list = self._make_fiter([cache[pkg] for pkg in new_install_list + new_upgrade_list],False)
new_install_list,new_upgrade_list = self._make_fiter_origin([cache[pkg] for pkg in new_install_list + new_upgrade_list],False)
for pkg in [cache[pkg] for pkg in new_install_list]:
if pkg.marked_install:
new_install_list.remove(pkg.name)
#单包的优先级最高 从组中剔除此包
for pkg in new_install_list:
if pkg in self.local_upgrade_data.single_pkgs:
new_install_list.remove(pkg)
#判断当前是否可升级或者新装的包
if len(new_install_list) == 0 and len(new_upgrade_list) == 0: