From 733f02ae1e0847822ad6665dd6a0bb2b4e54a058 Mon Sep 17 00:00:00 2001 From: Felix Edel Date: Fri, 27 Oct 2023 10:45:15 +0200 Subject: [PATCH] Set log_url for retried builds in MQTT payload correctly Currently, the log_url for retried builds in the MQTT payload always points to the build result page in Zuul web. As mqtt is meant to be consumed by machines this breaks e.g. log post processing for those builds. To fix this, we do the same as for non-retried builds and provide a dedicated web_url and log_url [1]. [1]: https://review.opendev.org/c/zuul/zuul/+/703983 Change-Id: I139a80d616d59e262a4f21772d7712fda3b5c03b --- releasenotes/notes/fix-log-url-mqtt-91395ace0f6633e8.yaml | 6 ++++++ zuul/driver/mqtt/mqttreporter.py | 5 +++-- 2 files changed, 9 insertions(+), 2 deletions(-) create mode 100644 releasenotes/notes/fix-log-url-mqtt-91395ace0f6633e8.yaml diff --git a/releasenotes/notes/fix-log-url-mqtt-91395ace0f6633e8.yaml b/releasenotes/notes/fix-log-url-mqtt-91395ace0f6633e8.yaml new file mode 100644 index 0000000000..bf0fd3e78a --- /dev/null +++ b/releasenotes/notes/fix-log-url-mqtt-91395ace0f6633e8.yaml @@ -0,0 +1,6 @@ +--- +fixes: + - | + The MQTT reporter now sets the log_url for retried builds correctly. + The link to the build result page is reported in a dedicated web_url + field. diff --git a/zuul/driver/mqtt/mqttreporter.py b/zuul/driver/mqtt/mqttreporter.py index 8c3905e356..618378b82b 100644 --- a/zuul/driver/mqtt/mqttreporter.py +++ b/zuul/driver/mqtt/mqttreporter.py @@ -91,7 +91,7 @@ class MQTTReporter(BaseReporter): retry_builds = item.current_build_set.getRetryBuildsForJob( job.name) for build in retry_builds: - (result, url) = item.formatJobResult(job, build) + (result, web_url) = item.formatJobResult(job, build) retry_build_information = { 'job_name': job.name, 'voting': job.voting, @@ -99,7 +99,8 @@ class MQTTReporter(BaseReporter): 'start_time': build.start_time, 'end_time': build.end_time, 'execute_time': build.execute_time, - 'log_url': url, + 'log_url': build.log_url, + 'web_url': web_url, 'result': result, } message['buildset']['retry_builds'].append(