From fefa25bb44e675ba9ceb5999a76152a66f91f3af Mon Sep 17 00:00:00 2001 From: Fabian Vogt Date: Wed, 23 Nov 2022 15:11:42 +0100 Subject: [PATCH] gocd/rabbit-openqa.py: Always include flavor, name and machine in the check Simplify the code in exchange of making the staging view slightly more cluttered. --- gocd/rabbit-openqa.py | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/gocd/rabbit-openqa.py b/gocd/rabbit-openqa.py index 369a44c4..f0c6a508 100755 --- a/gocd/rabbit-openqa.py +++ b/gocd/rabbit-openqa.py @@ -79,11 +79,10 @@ class Project(object): # collect job infos to pick names for job in openqa: print(staging, iso, job['id'], job['state'], job['result'], - job['settings']['MACHINE'], job['settings']['TEST']) + job['settings']['FLAVOR'], job['settings']['TEST'], job['settings']['MACHINE']) openqa_infos[job['id']] = {'url': self.listener.test_url(job)} openqa_infos[job['id']]['state'] = self.map_openqa_result(job) - openqa_infos[job['id']]['name'] = job['settings']['TEST'] - openqa_infos[job['id']]['machine'] = job['settings']['MACHINE'] + openqa_infos[job['id']]['name'] = f"{job['settings']['FLAVOR']}-{job['settings']['TEST']}@{job['settings']['MACHINE']}" def update_staging_status(self, staging): openqa_infos = dict() @@ -102,12 +101,7 @@ class Project(object): for id in openqa_infos: name = openqa_infos[id]['name'] if name in taken_names: - openqa_infos[id]['name'] = openqa_infos[id]['name'] + "@" + openqa_infos[id]['machine'] - # the other id - oid = taken_names[name] - openqa_infos[oid]['name'] = openqa_infos[oid]['name'] + "@" + openqa_infos[oid]['machine'] - if openqa_infos[id]['name'] == openqa_infos[oid]['name']: - raise Exception(f'Names of job #{id} and #{oid} collide') + raise Exception(f'Names of job #{id} and #{taken_names[name]} collide: {name}') taken_names[name] = id for info in openqa_infos.values():