guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[no subject]


From: Ludovic Courtès
Date: Thu, 25 Jan 2018 04:42:07 -0500 (EST)

branch: master
commit a97665672a8dddb6fe51126e7604c563fb9b28c2
Author: Ludovic Courtès <address@hidden>
Date:   Thu Jan 25 10:39:18 2018 +0100

    http: Sort /api/latestbuilds and /api/queue by time.
    
    * src/cuirass/database.scm (db-get-builds)[format-order-clause]: Add
    'order' clauses.
    * src/cuirass/http.scm (url-handler): Default to (order finish-time) for
    /latestbuilds and (order submission-time) for /queue.
---
 src/cuirass/database.scm | 6 ++++++
 src/cuirass/http.scm     | 6 ++++--
 2 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/src/cuirass/database.scm b/src/cuirass/database.scm
index f0dc4ad..f1d0118 100644
--- a/src/cuirass/database.scm
+++ b/src/cuirass/database.scm
@@ -347,6 +347,12 @@ FILTERS is an assoc list which possible keys are 'project 
| 'jobset | 'job |
                 "ORDER BY Builds.id ASC")
                (('order 'decreasing-build-id)
                 "ORDER BY Builds.id DESC")
+               (('order 'finish-time)
+                "ORDER BY Builds.stoptime DESC")
+               (('order 'start-time)
+                "ORDER BY Builds.start DESC")
+               (('order 'submission-time)
+                "ORDER BY Builds.timestamp DESC")
                (_ #f))
              filters)
         "ORDER BY Builds.id DESC"))               ;default order
diff --git a/src/cuirass/http.scm b/src/cuirass/http.scm
index 73303ad..90cd4dc 100644
--- a/src/cuirass/http.scm
+++ b/src/cuirass/http.scm
@@ -159,7 +159,8 @@
            (respond-json (object->json-string
                           (handle-builds-request db
                                                  `((status done)
-                                                   ,@params))))
+                                                   ,@params
+                                                   (order finish-time)))))
            (respond-json-with-error 500 "Parameter not defined!"))))
     (("api" "queue")
      (let* ((params (request-parameters request))
@@ -169,7 +170,8 @@
            (respond-json (object->json-string
                           (handle-builds-request db
                                                  `((status pending)
-                                                   ,@params))))
+                                                   ,@params
+                                                   (order submission-time)))))
            (respond-json-with-error 500 "Parameter not defined!"))))
     (_
      (respond (build-response #:code 404)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]