aboutsummaryrefslogtreecommitdiff
path: root/guix/ci.scm
Commit message (Collapse)AuthorAge
* ci: Reify the timestamps of evaluations.Ludovic Courtès2023-06-02
| | | | | * guix/ci.scm (<evaluation>)[start-time, checkout-time, completion-time]: New fields.
* ci: Add 'start-time' and 'stop-time' to <build> records.Ludovic Courtès2022-10-20
| | | | | | * guix/ci.scm (seconds->date): New procedure. (<build>)[start-time, stop-time]: New fields. (build-duration): New procedure.
* ci: Restrict substitute search to guix jobset.Andrew Whatson2021-12-19
| | | | | | | * guix/ci.scm (latest-builds): Add jobset keyword. (find-latest-commit-with-substitutes): Pass jobset "guix". Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
* ci: Add jobs history support.Mathieu Othacehe2021-08-22
| | | | | | * guix/ci.scm (history?, history-evaluation, history-checkouts, history-jobs, jobs-history): New procedures. (<history>): New record.
* ci: Properly construct URLs.Hartmut Goebel2021-07-16
| | | | | | | | | | | | | | | | | 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.
* ci: Add procedures to access jobs and builds.Ludovic Courtès2021-07-04
| | | | | * guix/ci.scm (<job>): New record type. (evaluation-jobs, build, job-build): New procedures.
* ci: Represent build status as a symbol.Ludovic Courtès2021-07-04
| | | | | | * guix/ci.scm (define-enumeration-mapping): New macro. (integer->build-status): New procedure. (<build>)[status]: Use it.
* guix: ci: Add spec support to latest-evaluations.Mathieu Othacehe2021-05-26
| | | | * guix/ci.scm (latest-evaluations): Add spec parameter support.
* guix: ci: Fix evaluation complete? field.Mathieu Othacehe2021-05-26
| | | | * guix/ci.scm (<evaluation>): Fix evaluation complete? field.
* guix: ci: Rename the checkout 'input' field.Mathieu Othacehe2021-04-20
| | | | | | | 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.
* ci: Add missing imports.Ludovic Courtès2021-01-31
| | | | | | | This is a followup to 041a9466ea23d6ae811491bcf529bf9487317b48. * guix/ci.scm: Add missing imports. * guix/channels.scm: Remove (guix ci) import.
* guix: channels: Introduce "channel-with-substitutes-available".Mathieu Othacehe2021-01-31
| | | | | | | | * 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.
* ci: Add "evaluation" method.Mathieu Othacehe2020-12-07
| | | | * guix/ci.scm (evaluation): New procedure.
* ci: Add evaluation field to build record.Mathieu Othacehe2020-12-07
| | | | * guix/ci.scm (<build>): Add "evaluation" field.
* Remove (guix json) and require Guile-JSON 4.3.0+.Ludovic Courtès2020-09-08
| | | | | | | | | | | | | | 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.
* ci: Add build-products id field and export accessors.Mathieu Othacehe2020-06-15
| | | | | | | * guix/ci.scm (build-product?, build-product-id, build-product-type, build-product-file-size, build-product-path): Export them, [id]: new field.
* ci: Add status option to "latest-builds".Mathieu Othacehe2020-06-15
| | | | * guix/ci.scm (latest-builds): Add "status" option.
* ci: Fix buildproducts reading.Mathieu Othacehe2020-06-15
| | | | | | | This is a follow-up of 4e05bbb093a17145fcabd48ea1d2c9cd7559084d. * guix/ci.scm (<build>)[products]: Test for vector type, as products can be "null".
* ci: Add job option to "latest-builds".Mathieu Othacehe2020-06-15
| | | | * guix/ci.scm (latest-builds): Add "job" option.
* ci: Add build products support.Mathieu Othacehe2020-06-15
| | | | | * guix/ci.scm (<build-product>): New json mapping, (<build)[products]: new field.
* ci: Fix 'evaluation-spec' binding.Ludovic Courtès2020-03-31
| | | | | * guix/ci.scm (<evaluation>)[spec]: Add "specification", which is what the JSON field is actually called.
* ci: Use (guix json) and adjust for Guile-JSON 3.x.Ludovic Courtès2019-09-04
| | | | | | | | | | | 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.
* ci: Add procedures to access evaluations.Ludovic Courtès2018-11-10
| | | | | | | | * 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.
* Add (guix ci).Ludovic Courtès2018-03-28
* guix/ci.scm: New file. * Makefile.am (MODULES): Add it.