stx-update: fix exceptions when stx rpm group do not exist
There is not any stx rpm group in the repo for stx patches for now, e.g. updates-controller-worker So add a patch to avoid expections when the pkggrp is None, and change the error to warning. Signed-off-by: Jackie Huang <jackie.huang@windriver.com> Signed-off-by: Babak Sarashki <Babak.SarAshki@windriver.com>
This commit is contained in:
parent
aed3a323e2
commit
af41e9f28f
@ -14,6 +14,7 @@ SRC_URI += "file://0001-Remove-use-of-rpmUtils.miscutils-from-cgcs-patch.patch;s
|
||||
file://0004-Address-python3-pylint-errors-and-warnings.patch;striplevel=3 \
|
||||
file://0005-Clean-up-pylint-W1201-logging-not-lazy-in-cgcs-patch.patch;striplevel=3 \
|
||||
file://0006-Migrate-patch-agent-to-use-DNF-for-swmgmt.patch;striplevel=3 \
|
||||
file://0007-patch_agent-do-not-do-the-packages_iter-if-pkggrp-is.patch;striplevel=3 \
|
||||
"
|
||||
|
||||
RDEPENDS_${PN}_append = " \
|
||||
|
@ -0,0 +1,72 @@
|
||||
From 059984de897fe2c8c48811ceb76a0331f94b3557 Mon Sep 17 00:00:00 2001
|
||||
From: Jackie Huang <jackie.huang@windriver.com>
|
||||
Date: Wed, 13 May 2020 22:10:01 +0800
|
||||
Subject: [PATCH] patch_agent: do not do the packages_iter if pkggrp is None
|
||||
|
||||
Addn the handling of packages_iter to the else block to avoid:
|
||||
AttributeError: 'NoneType' object has no attribute 'packages_iter'
|
||||
|
||||
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
|
||||
---
|
||||
cgcs-patch/cgcs-patch/cgcs_patch/patch_agent.py | 44 ++++++++++++-------------
|
||||
1 file changed, 22 insertions(+), 22 deletions(-)
|
||||
|
||||
diff --git a/cgcs-patch/cgcs-patch/cgcs_patch/patch_agent.py b/cgcs-patch/cgcs-patch/cgcs_patch/patch_agent.py
|
||||
index d8bc375..489d484 100644
|
||||
--- a/cgcs-patch/cgcs-patch/cgcs_patch/patch_agent.py
|
||||
+++ b/cgcs-patch/cgcs-patch/cgcs_patch/patch_agent.py
|
||||
@@ -490,29 +490,29 @@ class PatchAgent(PatchService):
|
||||
break
|
||||
|
||||
if pkggrp is None:
|
||||
- LOG.error("Could not find software group: %s", grp_id)
|
||||
-
|
||||
- for pkg in pkggrp.packages_iter():
|
||||
- try:
|
||||
- res = pkgs_installed.filter(name=pkg.name)
|
||||
- if len(res) == 0:
|
||||
- found_pkg = avail.filter(name=pkg.name)
|
||||
- self.missing_pkgs_dnf.append(found_pkg[0])
|
||||
- self.missing_pkgs.append(found_pkg[0].name)
|
||||
+ LOG.warning("Could not find software group: %s", grp_id)
|
||||
+ else:
|
||||
+ for pkg in pkggrp.packages_iter():
|
||||
+ try:
|
||||
+ res = pkgs_installed.filter(name=pkg.name)
|
||||
+ if len(res) == 0:
|
||||
+ found_pkg = avail.filter(name=pkg.name)
|
||||
+ self.missing_pkgs_dnf.append(found_pkg[0])
|
||||
+ self.missing_pkgs.append(found_pkg[0].name)
|
||||
+ self.changes = True
|
||||
+ except dnf.exceptions.PackageNotFoundError:
|
||||
+ self.missing_pkgs_dnf.append(pkg)
|
||||
+ self.missing_pkgs.append(pkg.name)
|
||||
self.changes = True
|
||||
- except dnf.exceptions.PackageNotFoundError:
|
||||
- self.missing_pkgs_dnf.append(pkg)
|
||||
- self.missing_pkgs.append(pkg.name)
|
||||
- self.changes = True
|
||||
-
|
||||
- self.installed = self.pkgobjs_to_list(self.installed_dnf)
|
||||
- self.to_install = self.pkgobjs_to_list(self.to_install_dnf + self.to_downgrade_dnf)
|
||||
-
|
||||
- LOG.info("Patch state query returns %s", self.changes)
|
||||
- LOG.info("Installed: %s", self.installed)
|
||||
- LOG.info("To install: %s", self.to_install)
|
||||
- LOG.info("To remove: %s", self.to_remove)
|
||||
- LOG.info("Missing: %s", self.missing_pkgs)
|
||||
+
|
||||
+ self.installed = self.pkgobjs_to_list(self.installed_dnf)
|
||||
+ self.to_install = self.pkgobjs_to_list(self.to_install_dnf + self.to_downgrade_dnf)
|
||||
+
|
||||
+ LOG.info("Patch state query returns %s", self.changes)
|
||||
+ LOG.info("Installed: %s", self.installed)
|
||||
+ LOG.info("To install: %s", self.to_install)
|
||||
+ LOG.info("To remove: %s", self.to_remove)
|
||||
+ LOG.info("Missing: %s", self.missing_pkgs)
|
||||
|
||||
return True
|
||||
|
||||
--
|
||||
2.7.4
|
||||
|
Loading…
Reference in New Issue
Block a user