修改版本号字段名

This commit is contained in:
Xueyi Luo 2022-05-10 18:32:21 +08:00
parent 450cf45557
commit 9d1b322461
3 changed files with 66 additions and 60 deletions

View File

@ -26,7 +26,7 @@ class Sqlite3Server(object):
self.init_sqlit()
# uncoverable配置文件
self.ucconfigs = UpgradeConfig(datadir = "/var/lib/kylin-system-updater", name = "system-updater-uncoverable.conf")
self.ucconfigs = UpgradeConfig(datadir = "/etc/kylin-version", name = "kylin-system-version.conf")
self._system_version_config()
# 初始化连接数据库
@ -347,10 +347,10 @@ class Sqlite3Server(object):
self.insert_into_updateinfo(str(i), pkgversion, pkgdescription, timestr, status, "1", errstr, appname_cn)
self.window_main.dbusController.UpdateSqlitSingle(str(i), timestr)
# 系统升级完成 ..判断版本号
if status == "success" and "kylin-update-desktop-system" in pkg_group:
# 更新版本号
self._refresh_system_version(str(pkgversion))
# 系统升级完成 ..判断版本号
if status == "success" and "kylin-update-desktop-system" in pkg_group:
# 更新版本号
self._refresh_system_version(str(pkgversion))
elif mode == InstallBackend.MODE_INSTALL_SYSTEM: # 全盘升级
self.insert_into_updateinfo(str("Upgrade System"), "", "This is a complete system upgrade, equivalent to the implementation of apt dist-upgrade", timestr, status, "1", errstr)
@ -378,7 +378,7 @@ class Sqlite3Server(object):
logging.error(str(e))
if "zh_CN" in tmpdescription and "en_US" in tmpdescription:
description = tmpdescription["zh_CN"] + ": " + tmpdescription["en_US"]
return (version,description)
return (version,description,appname_cn)
else: # 不存在
return (None, None, None)
@ -413,58 +413,62 @@ class Sqlite3Server(object):
def _system_version_config(self):
try:
release_id = ''
system_version = ''
if self.ucconfigs.getWithDefault("UpdaterStatus", "first_run", "no") == "yes":
logging.info("System updater daemon running for the first time...")
#初始化系统版本号:version
version_path = "/etc/kylin-version/kylin-system-version.conf"
if os.path.isfile(version_path):
system_version = UpgradeConfig(datadir = "/etc/kylin-version/", name = "kylin-system-version.conf").getWithDefault("SYSTEM", "version", " ")
#初始化系统版本号:kylin_release_id
version_path = "/etc/os-release"
if os.path.isfile(version_path):
with open(version_path, "r+") as f:
lines = f.readlines()
for line in lines:
if "KYLIN_RELEASE_ID" in line:
release_id = line.split('=')[1]
# 判断版本是否存在
if release_id == '' and system_version == '':
release_id = system_version = self.get_default_version()
elif release_id == '':
release_id = system_version
elif system_version == '':
system_version = release_id
self.ucconfigs.setValue("SYSTEM","version",str(system_version),True)
self.ucconfigs.setValue("SYSTEM","kylin_release_id",str(release_id),True)
# ultr clear
self.ucconfigs.setValue("UpdaterStatus", "first_run", "no", True)
os_version = ''
update_version = ''
# os_version = self.ucconfigs.get("SYSTEM", "os_version")
# update_version = self.ucconfigs.get("SYSTEM", "update_version")
# if os_version =='' and update_version == '':
# os_version = update_version = self.get_default_version()
# elif os_version =='' and update_version != '':
# os_version = update_version
# elif os_version !='' and update_version == '':
# update_version = os_version
# self.ucconfigs.setValue("SYSTEM","os_version",os_version,True)
# self.ucconfigs.setValue("SYSTEM","update_version",update_version,True)
except Exception as e:
logging.error(str(e))
def _refresh_system_version(self, version='', release_id = ''):
def _refresh_system_version(self, update_version='', os_version = ''):
try:
version = version.strip()
release_id = release_id.strip()
if "=" in update_version:
update_version = str(update_version).split('=')[-1]
if "=" in os_version:
os_version = str(os_version).split('=')[-1]
os_version = os_version.strip()
update_version = update_version.strip()
#刷新系统版本号:version
self.ucconfigs.setValue("SYSTEM","version",str(version),True)
version_path = "/etc/kylin-version/kylin-system-version.conf"
if os.path.isfile(version_path):
cnf = UpgradeConfig(datadir = "/etc/kylin-version", name = "kylin-system-version.conf")
cnf.setValue("SYSTEM","version",str(version),True)
version = ""
#初始化系统版本号:kylin_release_id
version_path = "/etc/os-release"
if os.path.isfile(version_path):
with open(version_path, "r+") as f:
#刷新系统版本号:os_version
if update_version == '':
update_version = self.get_default_version()
if os_version == '' and os.path.isfile("/etc/os-release"):
with open("/etc/os-release", "r+") as f:
lines = f.readlines()
for line in lines:
if "KYLIN_RELEASE_ID" in line:
version = line.split('=')[1]
if len(version) != 0:
self.ucconfigs.setValue("SYSTEM","kylin_release_id",str(version),True)
os_version = line.split('=')[1]
os_version = os_version.strip()
if len(os_version) != 0:
self.ucconfigs.setValue("SYSTEM","os_version",str(os_version),True)
if len(update_version) != 0:
self.ucconfigs.setValue("SYSTEM","update_version",str(update_version),True)
# self.ucconfigs.setValue("SYSTEM","os_version",str(version),True)
# version_path = "/etc/kylin-version/kylin-system-version.conf"
# if os.path.isfile(version_path):
# cnf = UpgradeConfig(datadir = "/etc/kylin-version", name = "kylin-system-version.conf")
# cnf.setValue("SYSTEM","version",str(version),True)
# version = ""
# #刷新系统版本号:update_version
# version_path = "/etc/os-release"
# if os.path.isfile(version_path):
# with open(version_path, "r+") as f:
# lines = f.readlines()
# for line in lines:
# if "KYLIN_RELEASE_ID" in line:
# version = line.split('=')[1]
# version = version.strip()
# if len(version) != 0:
# self.ucconfigs.setValue("SYSTEM","kylin_release_id",str(version),True)
except Exception as e:
logging.error(str(e))

View File

@ -792,16 +792,18 @@ class UpdateManagerDbusController(dbus.service.Object):
@dbus.service.method(UPDATER_DBUS_INTERFACE, out_signature='ss')
def GetSystemUpdateVersion(self):
logging.info(COLORMETHOR_PREFIX+'Method'+COLORLOG_SUFFIX+' GetSystemUpdateVersion.')
system_version = 'None'
release_id = ''
os_version = ''
update_version = ''
try:
system_version = str(self.parent.sqlite3_server.ucconfigs.get("SYSTEM","version"))
release_id = str(self.parent.sqlite3_server.ucconfigs.get("SYSTEM","kylin_release_id"))
if not os.path.exists("/etc/kylin-version/kylin-system-version.conf"):
return "",""
os_version = str(self.parent.sqlite3_server.ucconfigs.get("SYSTEM","os_version"))
update_version = str(self.parent.sqlite3_server.ucconfigs.get("SYSTEM","update_version"))
except Exception as e:
logging.error(str(e))
return str(e)
logging.info('Current system version: %s, release_id: %s .', system_version, release_id)
return system_version,release_id
logging.info('Current os_version: %s, release_id: %s .', os_version, update_version)
return os_version,update_version
#更新进度信息 0~100 进度信息 101为非预期的信号
@dbus.service.signal(UPDATER_DBUS_INTERFACE,signature='is')

View File

@ -1,7 +1,7 @@
[autoUpgradePolicy]
preDownload =
autoUpgradeState =
downloadMode =
downloadTime =
preDownload = on
autoUpgradeState = on
downloadMode = timing
downloadTime = 10:00
installMode = bshutdown