From 652b2943a7654ae11bb0de1da909b94f84a28243 Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Tue, 16 May 2023 15:51:03 +0000 Subject: [PATCH] events: Show error message when mirrors go offline Signed-off-by: Michael Tremer --- src/buildservice/events.py | 24 ++++++++++++++++++- .../events/modules/system-message.html | 7 ++++++ 2 files changed, 30 insertions(+), 1 deletion(-) diff --git a/src/buildservice/events.py b/src/buildservice/events.py index 388a3fd2..1ef82e43 100644 --- a/src/buildservice/events.py +++ b/src/buildservice/events.py @@ -48,6 +48,7 @@ log = logging.getLogger("pbs.events") # by_user # builder # repository +# error # points # @@ -71,6 +72,7 @@ class Events(base.Object): builds.owner_id AS by_user, NULL::integer AS builder, NULL::integer AS repository, + NULL::text AS error, NULL::integer AS points FROM builds @@ -100,6 +102,7 @@ class Events(base.Object): NULL AS by_user, NULL AS builder, NULL AS repository, + NULL AS error, NULL AS points FROM builds @@ -123,6 +126,7 @@ class Events(base.Object): builds.deleted_by AS by_user, NULL AS builder, NULL AS repository, + NULL AS error, NULL AS points FROM builds @@ -147,6 +151,7 @@ class Events(base.Object): builds.deprecated_by AS by_user, NULL AS builder, NULL AS repository, + NULL AS error, NULL AS points FROM builds @@ -172,6 +177,7 @@ class Events(base.Object): build_comments.user_id AS by_user, NULL AS builder, NULL AS repository, + NULL AS error, NULL AS points FROM build_comments @@ -195,6 +201,7 @@ class Events(base.Object): NULL AS by_user, NULL AS builder, NULL AS repository, + NULL AS error, NULL AS points FROM build_watchers @@ -216,6 +223,7 @@ class Events(base.Object): NULL AS by_user, NULL AS builder, NULL AS repository, + NULL AS error, NULL AS points FROM build_watchers @@ -239,6 +247,7 @@ class Events(base.Object): repository_builds.added_by AS by_user, NULL AS builder, repository_builds.repo_id AS repository, + NULL AS error, NULL AS points FROM repository_builds @@ -260,6 +269,7 @@ class Events(base.Object): repository_builds.removed_by AS by_user, NULL AS builder, repository_builds.repo_id AS repository, + NULL AS error, NULL AS points FROM repository_builds @@ -284,6 +294,7 @@ class Events(base.Object): build_points.user_id AS by_user, NULL AS builder, NULL AS repository, + NULL AS error, build_points.points AS points FROM build_points @@ -306,6 +317,7 @@ class Events(base.Object): NULL AS by_user, NULL AS builder, NULL AS repository, + NULL AS error, NULL AS points FROM builds @@ -335,6 +347,7 @@ class Events(base.Object): NULL AS by_user, NULL AS builder, NULL AS repository, + NULL AS error, NULL AS points FROM jobs @@ -358,6 +371,7 @@ class Events(base.Object): NULL AS by_user, jobs.builder_id AS builder, NULL AS repository, + NULL AS error, NULL AS points FROM jobs @@ -387,6 +401,7 @@ class Events(base.Object): NULL AS by_user, jobs.builder_id AS builder, NULL AS repository, + NULL AS error, NULL AS points FROM jobs @@ -416,6 +431,7 @@ class Events(base.Object): jobs.aborted_by AS by_user, jobs.builder_id AS builder, NULL AS repository, + NULL AS error, NULL AS points FROM jobs @@ -441,6 +457,7 @@ class Events(base.Object): NULL AS by_user, jobs.builder_id AS builder, NULL AS repository, + NULL AS error, NULL AS points FROM jobs @@ -466,6 +483,7 @@ class Events(base.Object): NULL AS by_user, NULL AS builder, NULL AS repository, + NULL AS error, NULL AS points FROM jobs @@ -491,6 +509,7 @@ class Events(base.Object): mirrors.created_by AS by_user, NULL AS builder, NULL AS repository, + NULL AS error, NULL AS points FROM mirrors @@ -512,6 +531,7 @@ class Events(base.Object): mirrors.deleted_by AS by_user, NULL AS builder, NULL AS repository, + NULL AS error, NULL AS points FROM mirrors @@ -540,6 +560,7 @@ class Events(base.Object): NULL AS by_user, NULL AS builder, NULL AS repository, + mirror_status_changes.error AS error, NULL AS points FROM ( SELECT @@ -549,7 +570,8 @@ class Events(base.Object): LAG(success) OVER ( PARTITION BY mirror_id ORDER BY checked_at ASC - ) AS old_status + ) AS old_status, + mirror_checks.error AS error FROM mirror_checks ) mirror_status_changes diff --git a/src/templates/events/modules/system-message.html b/src/templates/events/modules/system-message.html index 59def26f..aa756557 100644 --- a/src/templates/events/modules/system-message.html +++ b/src/templates/events/modules/system-message.html @@ -118,6 +118,13 @@ {{ locale.format_date(event.t, shorter=True) }}

+ {# Show the error message #} + {% if event.error %} +

+ {{ event.error }} +

+ {% end %} + {% block content %}{% end %}