summaryrefslogtreecommitdiff
path: root/guix/ci.scm
AgeCommit message (Expand)Author
2023-06-02ci: Reify the timestamps of evaluations....* guix/ci.scm (<evaluation>)[start-time, checkout-time, completion-time]: New fields. Ludovic Courtès
2022-10-20ci: Add 'start-time' and 'stop-time' to <build> records....* guix/ci.scm (seconds->date): New procedure. (<build>)[start-time, stop-time]: New fields. (build-duration): New procedure. Ludovic Courtès
2021-12-19ci: Restrict substitute search to guix jobset....* guix/ci.scm (latest-builds): Add jobset keyword. (find-latest-commit-with-substitutes): Pass jobset "guix". Signed-off-by: Mathieu Othacehe <othacehe@gnu.org> Andrew Whatson
2021-08-22ci: Add jobs history support....* guix/ci.scm (history?, history-evaluation, history-checkouts, history-jobs, jobs-history): New procedures. (<history>): New record. Mathieu Othacehe
2021-07-16ci: Properly construct URLs....Implement a new function "api-url", which constructs URLs using relative URI and "resolve-uri-reference" (which implements the algorithm specified in RFC 3986 section 5.2.2) for building the URL, instead of just appending strings. This avoids issued if the server-url ends with a slash. Since "api-url" uses URI-objects, it makes sense to also construct the query-part of the URL here. For this "api-url" accepts optional key-value-pairs. New function "json-api-fetch" is a wrapper using "api-url". * guix/ci.scm (api-url): New function. (build): Use it. (json-api-fetch): New function. (queued-builds, latest-builds, evaluation, latest-evaluations, evaluation-jobs: Use it. Hartmut Goebel
2021-07-04ci: Add procedures to access jobs and builds....* guix/ci.scm (<job>): New record type. (evaluation-jobs, build, job-build): New procedures. Ludovic Courtès
2021-07-04ci: Represent build status as a symbol....* guix/ci.scm (define-enumeration-mapping): New macro. (integer->build-status): New procedure. (<build>)[status]: Use it. Ludovic Courtès
2021-05-26guix: ci: Add spec support to latest-evaluations....* guix/ci.scm (latest-evaluations): Add spec parameter support. Mathieu Othacehe
2021-05-26guix: ci: Fix evaluation complete? field....* guix/ci.scm (<evaluation>): Fix evaluation complete? field. Mathieu Othacehe
2021-04-20guix: ci: Rename the checkout 'input' field....The checkout "input" field has been renamed "channel" in Cuirass 1.0 release. * guix/ci.scm (<checkout>)[input]: Rename it into ... [channel]: ... this new field. Mathieu Othacehe
2021-01-31ci: Add missing imports....This is a followup to 041a9466ea23d6ae811491bcf529bf9487317b48. * guix/ci.scm: Add missing imports. * guix/channels.scm: Remove (guix ci) import. Ludovic Courtès
2021-01-31guix: channels: Introduce "channel-with-substitutes-available"....* guix/channels.scm (find-latest-commit-with-substitutes, channel-with-substitutes-available): New procedures. * guix/scripts/pull.scm (guix-pull): Move "channel-list" call inside the %current-system parameter scope. * doc/guix.texi (Channels with substitutes): New section. Mathieu Othacehe
2020-12-07ci: Add "evaluation" method....* guix/ci.scm (evaluation): New procedure. Mathieu Othacehe
2020-12-07ci: Add evaluation field to build record....* guix/ci.scm (<build>): Add "evaluation" field. Mathieu Othacehe
2020-09-08Remove (guix json) and require Guile-JSON 4.3.0+....This is a followup to 4071879c86d059ee087c8986915ea72b8c742b72. * guix/json.scm: Remove. * Makefile.am (MODULES): Adjust accordingly. * m4/guix.m4 (GUIX_CHECK_GUILE_JSON): Check for 'define-json-mapping'. * doc/guix.texi (Requirements): Require Guile-JSON 4.3.0+. * guix/ci.scm, guix/cve.scm, guix/import/cpan.scm, guix/import/crate.scm, guix/swh.scm: Remove (guix json) import. * guix/import/gem.scm, guix/import/pypi.scm: Likewise, and import (json). * guix/self.scm (specification->package): Switch to GUILE-JSON-4. * guix/git-download.scm (git-fetch): Likewise. Ludovic Courtès
2020-06-15ci: Add build-products id field and export accessors....* guix/ci.scm (build-product?, build-product-id, build-product-type, build-product-file-size, build-product-path): Export them, [id]: new field. Mathieu Othacehe
2020-06-15ci: Add status option to "latest-builds"....* guix/ci.scm (latest-builds): Add "status" option. Mathieu Othacehe
2020-06-15ci: Fix buildproducts reading....This is a follow-up of 4e05bbb093a17145fcabd48ea1d2c9cd7559084d. * guix/ci.scm (<build>)[products]: Test for vector type, as products can be "null". Mathieu Othacehe
2020-06-15ci: Add job option to "latest-builds"....* guix/ci.scm (latest-builds): Add "job" option. Mathieu Othacehe
2020-06-15ci: Add build products support....* guix/ci.scm (<build-product>): New json mapping, (<build)[products]: new field. Mathieu Othacehe
2020-03-31ci: Fix 'evaluation-spec' binding....* guix/ci.scm (<evaluation>)[spec]: Add "specification", which is what the JSON field is actually called. Ludovic Courtès
2019-09-04ci: Use (guix json) and adjust for Guile-JSON 3.x....This is in part a followup to 81c3dc32244a17241d74eea9fa265edfcb326f6d. * guix/ci.scm (<build>, <checkout>, <evaluation>): Define using 'define-json-mapping'. (json->build, json->checkout, json->evaluation): Remove. (queued-builds, latest-builds, latest-evaluations): Pass JSON arrays through 'vector->list' to adjust for Guile-JSON 3.x. (evaluations-for-commit): Fix typo to really export. Ludovic Courtès
2018-11-10ci: Add procedures to access evaluations....* guix/ci.scm (<checkout>, <evaluation>): New record types. (latest-builds): Add #:evaluation and #:system and honor it. Define 'option'. (json->checkout, json->evaluation, latest-evaluations) (evaluations-for-commit): New procedures. Ludovic Courtès
2018-03-28Add (guix ci)....* guix/ci.scm: New file. * Makefile.am (MODULES): Add it. Ludovic Courtès