Skip to content
Snippets Groups Projects
This project is mirrored from https://git.savannah.gnu.org/git/guix/guix-cuirass.git/. Pull mirroring failed .
Last successful update .
  1. Jan 18, 2020
  2. Jan 16, 2020
    • Christopher Baines's avatar
      Support returning build information by output. · 46f73b6b
      Christopher Baines authored
      Being able to take a derivation and query the build information is useful, but
      in cases where there are multiple derivations that produce the same outputs,
      the probability of getting the data back from Cuirass is reduced.
      
      This is because Cuirass might not have build the exact derivation you have,
      but a different derivation that produces the same outputs (this can commonly
      happen when a related fixed output derivation changes).
      
      Cuirass doesn't store derivations if they produce the same outputs as a
      derivation it already knows about, so it can't determine if this is the
      case. Therefore, provide a way of querying build results by output, rather
      than derivation.
      
      The motivation behind this is to make it easier to import build information in
      to the Guix Data Service.
      
      * src/cuirass/database.scm (db-get-output): New procedure.
      * src/cuirass/http.scm (respond-output-not-found): New procedure.
      (request-path-components): Handle /output/… requests.
      * doc/cuirass.texi (Build information): Mention that you can get build
      information by output.
      46f73b6b
    • Christopher Baines's avatar
      Support publishing evaluation events · 267649c9
      Christopher Baines authored
      * src/cuirass/database.scm (db-add-evaluation): Record the creation of new
      evaluations as events.
      (db-set-evaluation-done): Record when evaluations finish as an event.
      * src/cuirass/http.scm (url-handler): Add a new /api/evaluation-events page.
      267649c9
    • Christopher Baines's avatar
      Support publishing build events · 12def48b
      Christopher Baines authored
      Add a table to store events, which have a type and a JSON blob. These can be
      used to record changes, this commit inserts events when new builds are
      created, and when the status of builds change.
      
      The EventsOutbox table is then used to track when events have been sent
      out. This is done through the new cuirass-send-events script.
      
      * Makefile.am (bin_SCRIPTS): Add bin/cuirass-send-events.
      .gitignore: Add bin/cuirass-send-events.
      (dist_pkgmodule_DATA): Add src/cuirass/send-events.scm.
      (dist_sql_DATA): Add src/sql/upgrade-5.sql.
      (EXTRA_DIST): bin/cuirass-send-events.in.
      (bin/cuirass-send-events): New rule.
      * bin/cuirass-send-events.in: New file.
      * src/cuirass/send-events.scm: New file.
      * src/sql/upgrade-5.sql: New file.
      * src/cuirass/database.scm (changes-count): New procedure.
      (db-update-build-status!): Call db-add-event after updating the build status.
      (db-add-event): New procedure.
      (db-add-build): Insert an event when a new build is inserted.
      (db-delete-events-with-ids-<=-to): New procedure.
      * src/schema.sql (Events): New table.
      12def48b
  3. Nov 03, 2019
  4. Oct 30, 2019
  5. Oct 23, 2019
  6. Oct 02, 2019
    • Christopher Baines's avatar
      http: Support fetching builds by derivation. · 9acb0aa5
      Christopher Baines authored
      There's a one to one mapping of build id to derivation, so allow querying by
      derivation file name as well. I'm looking at this as I'm interested in getting
      build information in to the Guix Data Service.
      
      * src/cuirass/http.scm (url-handler): Support fetching builds by numeric id or
      the derivation file name.
      9acb0aa5
  7. Sep 24, 2019
  8. Aug 27, 2019
  9. Aug 18, 2019
    • Ludovic Courtès's avatar
      templates: Use 'derivation-build-plan'. · 858b6b8c
      Ludovic Courtès authored
      * src/cuirass/templates.scm (build-details): Use 'derivation-build-plan'
      instead of 'derivation-prerequisites-to-build'.
      858b6b8c
    • Ludovic Courtès's avatar
      doc: Guile 2.2 is needed. · b1d7e9dd
      Ludovic Courtès authored
      This is a followup to ee11ba1d.
      
      * README: Ask for Guile 2.2.
      b1d7e9dd
    • Ludovic Courtès's avatar
      Switch to Guile-JSON 3.x. · c6f4fa5f
      Ludovic Courtès authored
      Guile-JSON 3.x is incompatible with Guile-JSON 1.x, which we relied on
      until now: it maps JSON dictionaries to alists (instead of hash tables),
      and JSON arrays to vectors (instead of lists).  This commit is about
      adjusting all the existing code to this new mapping.
      
      * src/cuirass/http.scm (evaluation->json-object): New procedure.
      (handle-builds-request): Pass the result through 'list->vector'.
      (handle-builds-search-request): Likewise.
      (url-handler): Likewise for /jobsets, /specifications, /api/evaluations,
      and /build.  For /api/evaluations, use 'evaluation->json-object'.
      * src/cuirass/utils.scm (object->json-scm): Add 'vector?' case.
      * tests/http.scm (hash-table-keys, hash-table=?): Remove.
      (evaluations-query-result): Use vectors for JSON arrays.
      ("object->json-string"): Expects alists instead of hash tables.
      ("/build/1"): Use 'lset=' instead of 'hash-table=?'.
      ("/api/latestbuilds?nr=1&jobset=guix"): Likewise, and expect alists
      instead of hash tables.
      ("/api/latestbuilds?nr=1&jobset=gnu"): Likewise.
      ("/api/evaluations?nr=1"): Likewise.
      * README: Mention Guile-JSON 3.x.
      c6f4fa5f
  10. Aug 17, 2019
  11. Aug 10, 2019
    • Ricardo Wurmus's avatar
      Separate web interface. · e11f1722
      Ricardo Wurmus authored
      * bin/cuirass.in (show-help): Document "--web" option.
      (%options): Default to running without web interface.
      (main): Either run the web interface or build packages.
      * README: Mention the "--web" option.
      e11f1722
  12. Aug 07, 2019
  13. Jun 21, 2019
  14. Jun 19, 2019
Loading