]> git.ipfire.org Git - pbs.git/commitdiff
builds: Perform special sorting in build groups
authorMichael Tremer <michael.tremer@ipfire.org>
Fri, 12 May 2023 16:49:47 +0000 (16:49 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Fri, 12 May 2023 16:49:47 +0000 (16:49 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/buildservice/builds.py

index 3b22149238db4551a1854fa5ef0d4cfe7ccfd548..cb5c508958900ba8b4ae8db603fd52e12a6d5eef 100644 (file)
@@ -1097,7 +1097,21 @@ class Group(base.DataObject):
                        """, self.id,
                )
 
-               return list(builds)
+               return sorted(builds, key=self._sort_builds)
+
+       @staticmethod
+       def _sort_builds(build):
+               # Move failed builds to the top
+               if build.has_failed():
+                       return (1, build)
+
+               # After that put successfully finished builds
+               elif build.is_successful():
+                       return (2, build)
+
+               # After that put anything else
+               else:
+                       return (3, build)
 
        @property
        def successful_builds(self):