Commit Graph

48 Commits (c9223b6d2941a211578c8b3e73b1b62430c5b55e)

Author SHA1 Message Date
Mathieu Lirzin a6849d4a45
Add (cuirass) module.
* src/cuirass.scm: New file.
* Makefile.am (guilesitedir, dist_guilesite_DATA)
(nodist_guilesite_DATA): New variables.
(pkgmoduledir): Refer to 'guilesitedir'.
(CLEANFILES): Add 'nodist_guilesite_DATA'.
* bin/cuirass.in: Use (cuirass) module.
* bin/evaluate.in: Likewise.
2016-08-02 18:17:20 +02:00
Mathieu Lirzin 651b8bbcf9
Add (cuirass http) module.
* src/cuirass/http.scm: New file.
* tests/http.scm: Likewise.
* Makefile.am (dist_pkgmodule_DATA, TESTS): Add them.
* configure.ac: Check for (json) module.
2016-07-31 01:07:00 +02:00
Mathieu Lirzin e58911de37
utils: Add 'alist?' procedure.
* src/cuirass/utils.scm (alist?): New procedure.
* tests/utils.scm ("alist?"): New test.
2016-07-30 23:08:39 +02:00
Mathieu Lirzin ac4512897c
schema: Evaluations: Add 'revision' column.
* src/schema.sql (Evaluations): Add 'revision' column.
* src/cuirass/database.scm (db-add-evaluation): Adapt.
All callers changed.
2016-07-30 23:07:19 +02:00
Mathieu Lirzin 24bfb61e8e
schema: Builds: Add 'evaluation' column.
* src/schema.sql (Builds): Add 'evaluation' column.
* src/cuirass/database.scm (db-add-build): Adapt.
* src/cuirass/base.scm (build-packages): Likewise.
2016-07-27 14:17:10 +02:00
Mathieu Lirzin 4f82aeab16
cuirass: Move procedures to (cuirass base) module.
* bin/cuirass.in (fetch-repository, compile, evaluate, build-packages)
(process-specs): Move to ...
src/cuirass/base.scm: ... here.
2016-07-27 14:17:10 +02:00
Mathieu Lirzin d493a58823
schema: Separate "Derivations" from "Evaluations".
* src/schema.sql (Derivations): New table.
(Evaluations): Remove 'derivation' and 'job_name' columns.  Add 'id'
column.
* src/cuirass/database.scm (db-add-evaluation): Adapt.
(db-get-derivation, db-add-derivation): New procedures.
(evaluation-exists?, db-get-evaluation): Delete.
* bin/evaluate.in (main): Adapt.
* tests/database.scm ("sqlite-exec"): Likewise.
("db-add-derivation", "db-get-derivation"): New tests.
("db-add-evaluation", "db-get-evaluation"): Delete.
2016-07-27 14:17:09 +02:00
Mathieu Lirzin 719c126863
database: Remove 'db-delete-evaluation' procedure.
* src/cuirass/database.scm (db-delete-evaluation): Delete.
2016-07-27 14:17:09 +02:00
Mathieu Lirzin b8d8c99bd3
database: with-database: Keep the data.
* src/cuirass/database.scm (with-database): Use 'db-open'.
(db-open): Fallback to 'db-init' if DB do not exist.
2016-07-26 11:40:51 +02:00
Mathieu Lirzin f40ac8a535
database: db-open: Add DB optional argument.
* src/cuirass/database.scm (db-open): Add DB optional argument.
2016-07-26 11:21:27 +02:00
Mathieu Lirzin c83d5d4da8
Use stamps to poll repositories. 2016-07-26 00:36:12 +02:00
Mathieu Lirzin e51a755f10
database: Add 'db-add-build' procedure. 2016-07-25 20:32:01 +02:00
Mathieu Lirzin 7292bd5019
database: read-quoted-string: add default value to optional argument. 2016-07-25 20:32:01 +02:00
Mathieu Lirzin efb249b056
evaluate: Use (cuirass ...) modules.
This avoids code duplication.
2016-07-25 02:37:06 +02:00
Mathieu Lirzin a063a2277e
cuirass: Use database to store specifications. 2016-07-25 02:37:00 +02:00
Mathieu Lirzin 5db6894ae2
database: db-init: Add arguments for debugging. 2016-07-25 02:12:42 +02:00
Mathieu Lirzin c7c9e91876
schema: Separate 'Evaluations' from 'Builds'.
Adapt src/cuirass/database.scm and its tests.
2016-07-25 02:12:41 +02:00
Mathieu Lirzin cf7e290dc2
maint: Update file headers. 2016-07-25 02:12:41 +02:00
Mathieu Lirzin a4c8bf0fd4
database: db-get-evaluation: Use 'sqlite-exec'. 2016-07-25 02:12:40 +02:00
Mathieu Lirzin 8ad3ce782f
database: Add 'last-insert-rowid' procedure. 2016-07-25 02:12:40 +02:00
Mathieu Lirzin 447d9f7ba8
database: Add 'assq-refs' procedure. 2016-07-25 02:12:40 +02:00
Mathieu Lirzin b1dd669196
database: sqlite-exec: Return every rows.
Export it.  Add a test.
2016-07-25 02:12:40 +02:00
Mathieu Lirzin 18e42be302
database: Use 'simple-format' in 'sqlite-exec'. 2016-07-25 02:12:40 +02:00
Mathieu Lirzin f9938a3caa
database: Don't catch exceptions from (sqlite3) module. 2016-07-25 02:12:39 +02:00
Mathieu Lirzin 46c9d432ea
database: Use an external SQL schema. 2016-07-25 02:12:39 +02:00
Mathieu Lirzin 89b1f89cfc
Move '%program-name' to (cuirass ui) module. 2016-07-25 02:12:37 +02:00
Mathieu Lirzin efe96ced25 base: Remove unneeded 'guix-variable'. 2016-07-13 23:30:59 +02:00
Mathieu Lirzin 0808ab3ecd Remove unnecessary (cuirass job) module. 2016-07-13 14:16:36 +02:00
Mathieu Lirzin 53c12be409 Evaluate derivations in a separate process.
This fixes a bug where different Guix branches gave the same
derivations.
2016-07-13 14:07:24 +02:00
Mathieu Lirzin 4b53493c3b cuirass: Move code from main to auxiliary procedures. 2016-07-02 22:30:17 +02:00
Mathieu Lirzin 13db5aa618 λ all the things! 2016-07-02 15:49:34 +02:00
Mathieu Lirzin 7ae6ce0690 Add %package-cachedir parameter. 2016-07-02 15:34:40 +02:00
Mathieu Lirzin 2bace10106 Add (cuirass utils) module.
Move 'with-directory-excursion' here.
2016-07-02 03:13:29 +02:00
Mathieu Lirzin 94f910355c job: Add load-path field to <job-spec>. 2016-07-02 01:51:56 +02:00
Mathieu Lirzin ca6b5d6677 job: Add 'commit' and 'tag' field to <job-spec>. 2016-07-01 16:46:10 +02:00
Mathieu Lirzin a62624301b base: Add %program-name parameter object. 2016-07-01 16:00:14 +02:00
Mathieu Lirzin 9a9b3fbd45 database: Remove commented code. 2016-06-29 16:32:55 +02:00
Mathieu Lirzin 990c902fcc Store build logs in the database. 2016-06-29 16:16:48 +02:00
Mathieu Lirzin 5ff38984e8 Make %package-database a parameter object.
Move it to (cuirass database).
2016-06-26 22:54:49 +02:00
Mathieu Lirzin 5efdcb4441 Add a '--database' command line argument. 2016-06-26 17:02:23 +02:00
Mathieu Lirzin b24541e604 Add (cuirass database) module. 2016-06-26 16:59:26 +02:00
Mathieu Lirzin b103ab7eae Change <job-spec> and <job> semantics. 2016-06-16 02:12:33 +02:00
Mathieu Lirzin 49ab3c8b0d
job: Add <job-spec> record type.
* src/cuirass/job.scm <job-spec>: New record type.
(%make-job-spec, make-job-spec, job-spec-name, job-spec-proc)
(job-spec-metadata): New procedures.
* tests/gnu-system.scm (package-job): Rename to ...
(package-job-spec): ... this.  Use 'make-job-spec'.
(package-cross-job): Rename to ...
(package-cross-job-spec): ... this.  Use 'make-job-spec'.
(tarball-jobs): Rename to ...
(tarball-job-specs): ... this.  Use 'make-job-spec'.
(package->alist): Rename to ...
(package-metadata): ... this.  Adapt.
(package->job): Rename to ...
(package->jobspec): ... this.  Adapt.
(hydra-jobs): Adapt.
2016-06-13 18:10:52 +02:00
Mathieu Lirzin 39750281f6
job: Add 'metadata' field to <job>.
* src/cuirass/job.scm <job>: Add 'metadata' field.
(job-metadata, %make-job): New procedures.
2016-06-13 18:09:45 +02:00
Mathieu Lirzin ecffeb7536
job: Add <job> record type.
* src/cuirass/job.scm: New file.
* Makefile.am (dist_pkgmodule_DATA): Add it.
* bin/cuirass.in (evaluate, build-packages): Use it.
2016-06-10 23:39:27 +02:00
Mathieu Lirzin 87a79ae33d
cuirass: Add command line options.
* bin/cuirass.in (show-help, %options): new variables.
(main): Adapt.
* src/cuirass/ui.scm: New file.
* Makefile.am (dist_pkgmodule_DATA): Add it.
2016-06-10 23:39:01 +02:00
Mathieu Lirzin 8fb2983dce
build: Generate config.scm at configure time.
* src/cuirass/config.scm.in: New file.
* configure.ac (AC_CONFIG_FILES): Add 'src/cuirass/config.scm'.
* Makefile.am (nodist_pkgmodule_DATA, CLEANFILES, DISTCLEANFILES):
Update.
* .gitignore: Likewise.
2016-06-10 23:38:40 +02:00
Mathieu Lirzin 9d5fda76bb
Initial commit. 2016-05-29 19:53:17 +02:00