Skip to content

Commit 89dafa6

Browse files
committed
fix: correct RPM package name/version regex split (closes #199)
1 parent a2455de commit 89dafa6

1 file changed

Lines changed: 18 additions & 10 deletions

File tree

bin/package_build.py

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -105,8 +105,10 @@ def clefos():
105105
DATA = open(file_name, 'w')
106106
DATA.write('[')
107107
for result in results:
108-
result = re.sub(r'\.el.*','', result)
109-
pkg = re.search(r'([\w+\-]+)-([\w\-\.]+)', result)
108+
result = re.sub(r'\.el.*', '', result)
109+
pkg = re.match(r'^(.*?)-(\d.+)$', result)
110+
if not pkg:
111+
continue
110112
each_pkg = f'"packageName": "{pkg.group(1)}","version": "{pkg.group(2)}"'
111113
each_pkg = '{'+each_pkg+'},'
112114
DATA.write(each_pkg+'\n')
@@ -150,8 +152,10 @@ def fedora():
150152
DATA.write('[\n')
151153
for each in results:
152154
each = each.replace('.s390x', '').replace('.noarch', '')
153-
each = re.sub(r'\.fc\d\d', '', each)
154-
pkg = re.search(r'([\w+\-]+)-([\w\-\.]+)', each)
155+
each = re.sub(r'\.(fc|el)\d+', '', each)
156+
pkg = re.match(r'^(.*?)-(\d.+)$', each)
157+
if not pkg:
158+
continue
155159
DATA.write('{"packageName": "'+pkg.group(1)+'","version": "'+pkg.group(2)+'"},\n')
156160
DATA.write('{}\n]')
157161
DATA.close()
@@ -179,9 +183,11 @@ def almaLinux():
179183
DATA = open(file_name,'w')
180184
DATA.write('[\n')
181185
for each in results:
182-
each = each.replace('.s390x','').replace('.noarch','')
183-
each = re.sub(r'\.fc\d\d', '', each)
184-
pkg = re.search(r'([\w+\-]+)-([\w\-\.]+)', each)
186+
each = each.replace('.s390x', '').replace('.noarch', '')
187+
each = re.sub(r'\.(fc|el)\d+', '', each)
188+
pkg = re.match(r'^(.*?)-(\d.+)$', each)
189+
if not pkg:
190+
continue
185191
DATA.write('{"packageName": "'+pkg.group(1)+'","version": "'+pkg.group(2)+'"},\n')
186192
DATA.write('{}\n]')
187193
DATA.close()
@@ -211,9 +217,11 @@ def rockylinux():
211217
DATA = open(file_name, 'w')
212218
DATA.write('[\n')
213219
for each in results:
214-
each = each.replace('.s390x','').replace('.noarch','')
215-
each = re.sub(r'.\fc\d\d','',each)
216-
pkg = re.search(r'([\w+\-]+)-([\w\-\.]+)', each)
220+
each = each.replace('.s390x', '').replace('.noarch', '')
221+
each = re.sub(r'\.(fc|el)\d+', '', each)
222+
pkg = re.match(r'^(.*?)-(\d.+)$', each)
223+
if not pkg:
224+
continue
217225
DATA.write('{"packageName": "'+pkg.group(1)+'","version": "'+pkg.group(2)+'"},\n')
218226
DATA.write('{}\n]')
219227
DATA.close()

0 commit comments

Comments
 (0)