multi-volume support for buildNotification
This commit is contained in:
parent
ed66947264
commit
2d17c000ca
1 changed files with 20 additions and 10 deletions
|
|
@ -4601,15 +4601,25 @@ Build Info: %(weburl)s/buildinfo?buildID=%(build_id)i\r
|
|||
if not result:
|
||||
result = 'Unknown'
|
||||
|
||||
files = self.session.listTaskOutput(task_id)
|
||||
logs = [filename for filename in files if filename.endswith('.log')]
|
||||
rpms = [filename for filename in files if filename.endswith('.rpm') and not filename.endswith('.src.rpm')]
|
||||
srpms = [filename for filename in files if filename.endswith('.src.rpm')]
|
||||
misc = [filename for filename in files if filename not in logs + rpms + srpms]
|
||||
logs, rpms, srpms, misc = [], [], [], []
|
||||
files_data = self.session.listTaskOutput(task_id)
|
||||
for filename in files_data:
|
||||
if filename.endswith('.log'):
|
||||
logs += [(filename, volume) for volume in files_data[filename]]
|
||||
# all rpms + srpms are expected to be in builddir
|
||||
elif filename.endswith('.src.rpm'):
|
||||
srpms.append(filename)
|
||||
elif filename.endswith('.rpm'):
|
||||
rpms.append(filename)
|
||||
else:
|
||||
misc += [(filename, volume) for volume in files_data[filename]]
|
||||
|
||||
logs.sort()
|
||||
# sort by volumes and filenames
|
||||
logs.sort(key=lambda x: x[1])
|
||||
misc.sort(key=lambda x: x[1])
|
||||
logs.sort(key=lambda x: x[0])
|
||||
misc.sort(key=lambda x: x[0])
|
||||
rpms.sort()
|
||||
misc.sort()
|
||||
|
||||
data[task_id] = {}
|
||||
data[task_id]['id'] = taskinfo['id']
|
||||
|
|
@ -4705,16 +4715,16 @@ Build Info: %(weburl)s/buildinfo?buildID=%(build_id)i\r
|
|||
for filetype in ['logs', 'rpms', 'misc']:
|
||||
if task[filetype]:
|
||||
output += "%s:\r\n" % filetype
|
||||
for file in task[filetype]:
|
||||
for (file, volume) in task[filetype]:
|
||||
if filetype == 'rpms':
|
||||
output += " %s\r\n" % '/'.join([buildurl, task['build_arch'], file])
|
||||
elif filetype == 'logs':
|
||||
if tasks[task_state] != 'closed':
|
||||
output += " %s/getfile?taskID=%s&name=%s\r\n" % (weburl, task['id'], file)
|
||||
output += " %s/getfile?taskID=%s&name=%s&volume=%s\r\n" % (weburl, task['id'], file, volume)
|
||||
else:
|
||||
output += " %s\r\n" % '/'.join([buildurl, 'data', 'logs', task['build_arch'], file])
|
||||
elif task[filetype] == 'misc':
|
||||
output += " %s/getfile?taskID=%s&name=%s\r\n" % (weburl, task['id'], file)
|
||||
output += " %s/getfile?taskID=%s&name=%s&volume=%s\r\n" % (weburl, task['id'], file, volume)
|
||||
output += "\r\n"
|
||||
output += "\r\n"
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue