[projects/pld-ftp-admin] Handle some exceptions better
baggins
baggins at pld-linux.org
Sat Feb 7 13:29:14 CET 2026
commit a7dd0f45d00c75b7b937fe502db44384454ad607
Author: Jan Rękorajski <baggins at pld-linux.org>
Date: Sat Feb 7 13:26:28 2026 +0100
Handle some exceptions better
modules/ftptree.py | 22 +++++++++++++++-------
1 file changed, 15 insertions(+), 7 deletions(-)
---
diff --git a/modules/ftptree.py b/modules/ftptree.py
index 7d841a8..aa149a9 100644
--- a/modules/ftptree.py
+++ b/modules/ftptree.py
@@ -206,11 +206,14 @@ class Pkg(BasePkg):
"""
def rpmhdr(pkg):
- ts = rpm.ts()
- ts.setVSFlags(rpm.RPMVSF_NODSAHEADER)
- fdno = os.open(pkg, os.O_RDONLY)
- hdr = ts.hdrFromFdno(fdno)
- os.close(fdno)
+ try:
+ ts = rpm.ts()
+ ts.setVSFlags(rpm.RPMVSF_NODSAHEADER)
+ fdno = os.open(pkg, os.O_RDONLY)
+ hdr = ts.hdrFromFdno(fdno)
+ os.close(fdno)
+ except rpm.error as e:
+ raise rpm.error(f"{pkg}: {e}")
return hdr
obsoletes = {}
@@ -409,7 +412,12 @@ class FtpTree(BaseFtpTree):
Reads config.builderqueue to grab the info
"""
- f = urlmess.urlopen(config.builderqueue)
+ try:
+ f = urlmess.urlopen(config.builderqueue)
+ except urllib.error.URLError as e:
+ pwarning(f"Unable to open: {config.builderqueue} {e}")
+ return
+
requests = {}
reid = re.compile(r'^.*id=(.*) pri.*$')
regb = re.compile(r'^group:.*$|builders:.*$', re.M)
@@ -493,7 +501,7 @@ class FtpTree(BaseFtpTree):
# Used more than once filter functions
def __find_other_pkgs(self, pkg, tree):
- escapedpkgname = pkg.name.replace('.', '\.').replace('+', '\+')
+ escapedpkgname = pkg.name.replace('.', r'\.').replace('+', r'\+')
ziewre = re.compile(escapedpkgname + '-[^-]*-[^-]*$')
def filter_other_pkgs(x):
if ziewre.match(x) and not x == pkg.nvr:
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/projects/pld-ftp-admin.git/commitdiff/a7dd0f45d00c75b7b937fe502db44384454ad607
More information about the pld-cvs-commit
mailing list