Merge branch 'backend_manual' into 'backend_uu'
Backend manual See merge request kylinos-src/update-manager-group/kylin-system-updater!508
This commit is contained in:
commit
cd83577647
|
@ -234,8 +234,6 @@ class InstallBackend():
|
||||||
|
|
||||||
#计算依赖解决方案
|
#计算依赖解决方案
|
||||||
elif self.action == self.ACTION_CHECK_RESOLVER:
|
elif self.action == self.ACTION_CHECK_RESOLVER:
|
||||||
#被删除的包列表
|
|
||||||
delete_pkgs = []
|
|
||||||
#被删除包的描述
|
#被删除包的描述
|
||||||
raw_description = []
|
raw_description = []
|
||||||
|
|
||||||
|
@ -549,7 +547,7 @@ class InstallBackend():
|
||||||
if cache.get_changes():
|
if cache.get_changes():
|
||||||
cache.clear()
|
cache.clear()
|
||||||
resolver = apt.cache.ProblemResolver(cache)
|
resolver = apt.cache.ProblemResolver(cache)
|
||||||
#调整候选版本强制更改版本
|
|
||||||
for pkg_name, pkg_ver, pkg_rel in [self._split_package_id(pkg)
|
for pkg_name, pkg_ver, pkg_rel in [self._split_package_id(pkg)
|
||||||
for pkg in adjust_pkgs]:
|
for pkg in adjust_pkgs]:
|
||||||
try:
|
try:
|
||||||
|
@ -559,14 +557,11 @@ class InstallBackend():
|
||||||
logging.warning("The version %s of %s isn't available",pkg_ver, pkg_name)
|
logging.warning("The version %s of %s isn't available",pkg_ver, pkg_name)
|
||||||
continue
|
continue
|
||||||
|
|
||||||
#标记计算所有需要安装的
|
|
||||||
for pkg in pkgs_upgrade + pkgs_install:
|
for pkg in pkgs_upgrade + pkgs_install:
|
||||||
|
|
||||||
pkg_cache = cache[pkg]
|
pkg_cache = cache[pkg]
|
||||||
#将第二个参数调整为False 当为True时就不能检查缺少依赖的包 默认自动移除掉了
|
|
||||||
pkg_cache.mark_install(False, True, True)
|
pkg_cache.mark_install(False, True, True)
|
||||||
|
|
||||||
#将可自动升级的标记为自动安装
|
|
||||||
if pkg_cache.is_upgradable == True:
|
if pkg_cache.is_upgradable == True:
|
||||||
auto = pkg_cache.is_auto_installed
|
auto = pkg_cache.is_auto_installed
|
||||||
pkg_cache.mark_auto(auto)
|
pkg_cache.mark_auto(auto)
|
||||||
|
@ -591,7 +586,6 @@ class InstallBackend():
|
||||||
desc= terminal_msg)
|
desc= terminal_msg)
|
||||||
|
|
||||||
def _emulate_calcul_delete(self,total_pkg):
|
def _emulate_calcul_delete(self,total_pkg):
|
||||||
# 多线程的方式来计算删除的软件包
|
|
||||||
logging.info("[DELETE_DETAILS] Start calculating delete dependencies...")
|
logging.info("[DELETE_DETAILS] Start calculating delete dependencies...")
|
||||||
delete_pkgs = []
|
delete_pkgs = []
|
||||||
last_delete_count = 0
|
last_delete_count = 0
|
||||||
|
@ -688,7 +682,7 @@ class InstallBackend():
|
||||||
#这个 为True的很低 大多数为False 只有当系统中apt 出现问题时 才会复现这种问题
|
#这个 为True的很低 大多数为False 只有当系统中apt 出现问题时 才会复现这种问题
|
||||||
if success == False and false_num == 0 and self.now_upgrade.upgrade_content != []:
|
if success == False and false_num == 0 and self.now_upgrade.upgrade_content != []:
|
||||||
logging.warning("Special Case switch success status from False to True...")
|
logging.warning("Special Case switch success status from False to True...")
|
||||||
success = True
|
# success = True
|
||||||
|
|
||||||
if success:
|
if success:
|
||||||
#当组列表为空时 表示现在的单独进行安装某些包或卸载,不发信号到控制面板
|
#当组列表为空时 表示现在的单独进行安装某些包或卸载,不发信号到控制面板
|
||||||
|
@ -949,11 +943,10 @@ class InstallBackend():
|
||||||
#组的计算是否升级成功的方式 将组按照单包来计算的
|
#组的计算是否升级成功的方式 将组按照单包来计算的
|
||||||
if _now_upgrade.upgrade_groups != []:
|
if _now_upgrade.upgrade_groups != []:
|
||||||
pkgs_install,pkgs_upgrade = self._make_pkgs_list(self.cache,self.upgrade_data.groups_pkgs,_now_upgrade.upgrade_groups,[])
|
pkgs_install,pkgs_upgrade = self._make_pkgs_list(self.cache,self.upgrade_data.groups_pkgs,_now_upgrade.upgrade_groups,[])
|
||||||
# group_error_log = ''
|
|
||||||
install_error_pkgs = []
|
install_error_pkgs = []
|
||||||
total_pkg = pkgs_install + pkgs_upgrade
|
total_pkg = pkgs_install + pkgs_upgrade
|
||||||
|
|
||||||
for pkg in pkgs_install + pkgs_upgrade:
|
for pkg in total_pkg[::-1]:
|
||||||
pkg_obj = fresh_cache[pkg]
|
pkg_obj = fresh_cache[pkg]
|
||||||
if pkg in adjust_pkgs:
|
if pkg in adjust_pkgs:
|
||||||
if pkg_obj.is_installed == True and pkg_obj.is_now_broken == False and pkg_obj.installed.source_version + pkg_obj.name in self.upgrade_data.adjust_pkgs:
|
if pkg_obj.is_installed == True and pkg_obj.is_now_broken == False and pkg_obj.installed.source_version + pkg_obj.name in self.upgrade_data.adjust_pkgs:
|
||||||
|
|
|
@ -1,3 +1,12 @@
|
||||||
|
kylin-system-updater (2.0.5.13) v101; urgency=medium
|
||||||
|
|
||||||
|
* BUG: #141330 【在线更新】0521系统在线升级到2203-update1时提示依赖冲突
|
||||||
|
* 需求号: 无
|
||||||
|
* 其他改动说明: 无
|
||||||
|
* 其他改动影响域:系统更新
|
||||||
|
|
||||||
|
-- luoxueyi <luoxueyi@kylinos.cn> Mon, 17 Oct 2022 11:25:38 +0800
|
||||||
|
|
||||||
kylin-system-updater (2.0.5.12) v101; urgency=medium
|
kylin-system-updater (2.0.5.12) v101; urgency=medium
|
||||||
|
|
||||||
* BUG: #141197 【在线更新】更新升级安装软件包过程中点击电源后还可以正常关机重启、
|
* BUG: #141197 【在线更新】更新升级安装软件包过程中点击电源后还可以正常关机重启、
|
||||||
|
|
Loading…
Reference in New Issue