aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* base: Use (guix git) module.Mathieu Othacehe2017-07-05
| | | | | | | | | | * src/cuirass/base.scm (copy-repository-cache) : New procedure. (fetch-repository): Use latest-repository-commit to fetch git repository instead of raw git system commands. (process-specs): Use fetch-repository to get a store directory containing the repository described in SPEC, add copy it to cache with "copy-repository-cache". * configure.ac: Check (guix git) module presence.
* utils: Remove useless procedures.Mathieu Othacehe2017-07-01
| | | | | | | | | | | * src/cuirass/utils.scm (mkdir-p, make-user-module, call-with-temporary-directory, with-directory-excursion): Remove because already defined in guix. * tests/utils (with-directory-excursion): Remove associated test. * src/cuirass/base.scm: Use (guix build utils) to provide procedure removed from (cuirass utils). * bin/evaluate.in: Ditto. * bin/cuirass.in: Use "make-user-module" provided by (guix ui).
* repo: remove git-repo.Mathieu Othacehe2017-07-01
| | | | | | | * src/cuirass/repo.scm (git-repo): Remove it. * tests/repo.scm: Remove related tests. git-repo is not used and it's usecases will be covered by (guix git).
* configure.ac: Update homepage and bug report email.Mathieu Othacehe2017-07-01
| | | | * configure.ac (AC_INIT): Update homepage and bug report email.
* base: Send build output to the bit bucket.Ludovic Courtès2017-06-04
| | | | | | | | | Fixes a regression introduced in a42cf16fec114c26d16d5153053a2c6a1a3b1d11 whereby build logs would go the Cuirass' stderr. * src/cuirass/base.scm (build-packages): Parameterize 'current-build-output-port' to a void output port.
* build: Fix load-path/compile-path confusion.Ludovic Courtès2017-05-10
| | | | | | | | This is a followup to b4400bc98996f1a3ac7088a8f9e19daf684afcb1. * Makefile.am (nodist_pkgmodule_DATA): New variable. (nodist_pkgobject_DATA): Remove config.scm. (do_subst): Use $(guileobjectdir).
* build: Install .go files to $(libdir)/guile.Ludovic Courtès2017-05-10
| | | | | | | | | * Makefile.am (guileobjectdir): New variable. (nodist_guilesite_DATA): Rename to... (nodist_guileobject_DATA): ... this. (pkgobjectdir): New variable. (nodist_pkgmodule_DATA): Rename to... (nodist_pkgobject_DATA): ... this.
* build: Prefer building with Guile 2.2.Ludovic Courtès2017-05-10
| | | | | * Makefile.am (guilesitedir): Append @GUILE_EFFECTIVE_VERSION@. * configure.ac: Use 'GUILE_PKG', and pass "2.2" first.
* tests: Compare JSON objects instead of JSON strings.Ludovic Courtès2017-05-10
| | | | | | | This fixes a test failure with Guile 2.2. * tests/http.scm (hash-table-keys, hash-table=?): New procedures. ("spec->json-string"): Use it to compare the JSON objects.
* doc: Do not use "path" when a file name is meant.Ricardo Wurmus2017-05-05
| | | | | * doc/cuirass.texi (Database): Replace instances of "path" with more accurate terms.
* doc: Document database schema.Ricardo Wurmus2017-05-05
| | | | * doc/cuirass.texi: Add "Database" node.
* doc: Fix spelling.Ricardo Wurmus2017-05-05
| | | | | | | * doc/cuirass.texi (Introduction): Fix typos and use American English spelling. Co-authored-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
* base: Provide 'build-derivations' with the full list of derivations.Ludovic Courtès2017-02-24
| | | | | | | | | | This improves parallelism when 'max-jobs' is large. * src/cuirass/base.scm (build-packages): Rewrite to pass the complete list of derivations to 'build-derivations' at once. Handle multiple outputs. * src/schema.sql (Builds): Make "output" part of the primary key. Co-authored-by: Mathieu Lirzin <mthl@gnu.org>
* base: Remove unnecessary 'file-exists?' call.Ludovic Courtès2017-02-24
| | | | | * src/cuirass/base.scm (fetch-repository): Remove 'file-exists?' call before 'mkdir-p'.
* base: Do not stop on the first build failure.Ludovic Courtès2017-02-24
| | | | | * src/cuirass/base.scm (process-specs): Systematically call 'set-build-options'. Pass #:keep-going? #t.
* evaluate: Use specification #:name in evaluation alists.Mathieu Lirzin2017-02-24
| | | | | | | | This fixes an issue in the database, where rows from the 'Evaluations' table were having an "#f" value instead of a valid reference to their corresponding specification. * bin/evaluate.in (main): Use specification #:name instead of obsolete #:id.
* base: Handle multi-directories in load-path.Mathieu Othacehe2017-02-06
| | | | | | | * src/cuirass/base.scm (set-guix-package-path!): Parse colon separated directories in load-path. Co-authored-by: Mathieu Lirzin <mthl@gnu.org>
* doc: Describe how to send patches.Mathieu Lirzin2017-01-29
| | | | * doc/cuirass.texi (Contributing): Describe how to send patches.
* maint: Add a pointer to the manual in the README.Mathieu Lirzin2017-01-29
| | | | * README <Contributing>: Point to the corresponding section in the manual.
* base: Handle 'git clone' errors correctly.Mathieu Othacehe2017-01-29
| | | | | | | | | Fixes https://notabug.org/mthl/cuirass/issues/1. * src/cuirass/base.scm (fetch-repository): Return #f when 'git clone' fails. (process-specs): Test if commit is not #f before using its value. Signed-off-by: Mathieu Lirzin <mthl@gnu.org>
* cuirass: Add "--load-path" option.Mathieu Othacehe2017-01-29
| | | | | | | | | | | | * bin/cuirass.in (%options): Add "--load-path" and "-L" command line options. (show-help): Adapt. * src/cuirass/base.scm (%guix-package-path): New parameter. (set-guix-package-path!): New procedure. (evaluate): Call "evaluate" script with '%guix-package-path'. * bin/evaluate.in (main): Match 'guix-package-path' command line argument and handle it. Signed-off-by: Mathieu Lirzin <mthl@gnu.org>
* build: Add '%aux-dir' variable.Mathieu Lirzin2017-01-24
| | | | * build-aux/guix.scm (%aux-dir): New variable. Use it.
* build: Define 'spec+package-list' in "build-aux/guix.scm".Mathieu Lirzin2017-01-23
| | | | * build-aux/guix.scm (spec+package-list): New procedure. Use it.
* build: Don't generate ".version" since it has no use.Mathieu Lirzin2017-01-23
| | | | | | | | | * Makefile.am (.version): Remove target. (EXTRA_DIST): Adapt. (BUILT_SOURCES): Likewise. * build-aux/guix.scm (git-version-gen): Call 'git-version-gen' with '.tarball-version'. * .gitignore: Update.
* doc: Update email contact for contributors.Mathieu Lirzin2017-01-23
| | | | | * doc/cuirass.texi (Contributing): Use "bug-cuirass@framalistes.org" email address.
* database: db-add-derivation: Don't try to add a derivation twice.Mathieu Lirzin2017-01-09
| | | | | | | | | This fixes the issue of having multiple identical derivations associated with an evaluation as reported by Ludovic Courtès <ludo@gnu.org> at <https://lists.gnu.org/archive/html/guix-devel/2017-01/msg00109.html>. * src/cuirass/database.scm (db-add-derivation): Ignore if JOB is already present in DB.
* maint: Fix mistake in copying permission statement.Mathieu Lirzin2017-01-09
| | | | | | | This was mistakenly added in commit 05e5495e8fdd7c0ba8f5d4afb5a59749b4474169. * Makefile.am: Declare GPLv3+ instead of GPLv2+. * configure.ac: Likewise.
* maint: Add new mailing list and webpage.Mathieu Lirzin2017-01-09
| | | | | | * configure.ac: Declare <bug-cuirass@framalistes.org> as package mailing list, and <https://notabug.org/mthl/cuirass/> as package website. * src/cuirass/ui.scm (show-package-information): Display them.
* build: Reformat assignments.Mathieu Lirzin2017-01-08
| | | | | * Makefile.am (guilesitedir, pkgmoduledir, BUILT_SOURCES): Add whitespaces around '='.
* build: Do not require "build-aux/guix.scm".Mathieu Lirzin2016-12-29
| | | | | | | | | When building Cuirass with 'guix build -f build-aux/guix.scm' we don't want to add "build-aux/guix.scm" in the repository snapshot since it is considered as metadata. As a consequence we can't make 'autoconf' require it. * configure.ac (AC_REQUIRE_AUX_FILE): Remove "build-aux/guix.scm". * Makefile.am (EXTRA_DIST): Only distribute it.
* build: Fix typo "the" => "they".Mathieu Lirzin2016-12-28
| | | | * Makefile.am <Generated files>: Fix typo "the" => "they".
* build: Use portable substitution references.Mathieu Lirzin2016-12-28
| | | | | * Makefile.am (nodist_guilesite_DATA, nodist_pkgmodule_DATA, CLEANFILES): Use portable substitution references.
* build: Add "build-aux/guix.scm".Mathieu Lirzin2016-12-28
| | | | | | | | * guix.scm: Delete. * build-aux/guix-env: Likewise. * build-aux/guix.scm: New file. * configure.ac (AC_REQUIRE_AUX_FILE): Distribute it. * README <Build Instructions>: Document it.
* ci: Remove custom Guix package defintion.Mathieu Lirzin2016-12-28
| | | | | | * guix/ci.scm: Delete file. Guix already provides a package definition for Cuirass. * build-aux/pre-inst-env.in (GUIX_PACKAGE_PATH): Remove.
* maint: Generate version number.Mathieu Lirzin2016-12-28
| | | | | | | | | | * build-aux/git-version-gen: New script. * configure.ac (AC_INIT): Use it. (AC_REQUIRE_AUX_FILE): Distribute it. * Makefile.am (.version): New target. (BUILT_SOURCES, EXTRA_DIST): Add it. (dist-hook): Generate ".tarball-version". * .gitignore: Update.
* cuirass: Add "--port" command line option.Mathieu Lirzin2016-12-28
| | | | | | | | * bin/cuirass.in (%options): Add "--port" and "-p" command line options. (show-help): Adapt. (main): Set default to 8080. Call 'run-cuirass-server' with this. * src/cuirass/http.scm (run-cuirass-server): Display the port number. * doc/cuirass.texi (Invocation): Document new option.
* http: Add 'port' keyword argument to 'run-cuirass-server'.Mathieu Lirzin2016-12-28
| | | | * src/cuirass/http.scm (run-cuirass-server): Add 'port' keyword argument.
* config: Remove references to '$prefix' expansion hack.Mathieu Lirzin2016-12-28
| | | | | * src/cuirass/config.scm.in (%datadir, %localstatedir): Don't refer to previous '$prefix' expansion hack in comments.
* build: Set Guile load paths in 'pre-inst-env'.Mathieu Lirzin2016-12-28
| | | | | | | | | | | | | | | | This reverts most of 4f0d665746e0c6efe43c0f281e0eaac5012c79da. The load paths are still hard coded after installation, however 'pre-inst-env' wrapper is used for defining them in the local build environment. This is more convenient for running the tests manually or launching a Guile REPL with all the Cuirass modules accessible. * build-aux/pre-inst-env.in (GUILE_LOAD_PATH, GUILE_LOAD_COMPILED_PATH): New variables. * bin/cuirass.in: Comment Guile load paths. * Makefile.am (local_load_path, local_load_compiled_path): Delete. (AM_TESTS_ENVIRONMENT): Don't set Guile load paths. (do_subst): Use install directories for Guile load paths. (install-exec-hook): Uncomment 'cuirass' hard coded load paths.
* repo: Add <repo> record datatype.Mathieu Lirzin2016-12-28
| | | | | | | * src/cuirass/utils.scm (call-with-temporary-directory): New procedure. * src/cuirass/repo.scm: Use it. New file. * tests/repo.scm: New tests. * Makefile.am (dist_pkgmodule_DATA, TESTS): Add them.
* doc: Add 'Overview' Chapter.Mathieu Lirzin2016-12-16
| | | | * doc/cuirass.texi (Overview): New chapter.
* doc: Include 'Continuous Integration' in the introduction.Mathieu Lirzin2016-12-16
| | | | | * doc/cuirass.texi (Continuous Integration): Make it a section of the 'Introduction' chapter.
* build: Install the examples.Mathieu Lirzin2016-12-16
| | | | | * Makefile.am (EXTRA_DIST): Move examples to ... (nobase_dist_pkgdata_DATA): ... here. New variable.
* maint: Move examples from 'tests' to 'examples' directory.Mathieu Lirzin2016-12-16
| | | | | | | | | | | * examples/gnu-system.scm: Moved from 'tests' directory. * examples/guix-jobs.scm: Likewise. * examples/guix-track-git.scm: Likewise. * examples/hello-git.scm: Likewise. * examples/hello-singleton.scm: Likewise. * examples/hello-subset.scm: Likewise. * Makefile.am (EXTRA_DIST): Adapt. * README <Example>: Likewise.
* doc: Write Introduction.Mathieu Lirzin2016-12-09
| | | | * doc/cuirass.texi (Introduction): Write it.
* doc: Change short description.Mathieu Lirzin2016-12-08
| | | | | * doc/cuirass.texi: Use "Build automation server" instead of "Continuous Integration Tool".
* doc: Add Cuirass manual.Mathieu Lirzin2016-12-04
| | | | | | | | * doc/cuirass.texi: New file. * doc/fdl-1.3.texi: Likewise. * Makefile.am (info_TEXINFOS, doc_cuirass_TEXINFOS): New variables. * dir-locals.el: Use the American dictionary for Texinfo mode. * .gitignore: Update.
* base: Create the parent directories of '%package-cachedir'.Mathieu Lirzin2016-12-01
| | | | | * src/cuirass/base.scm (fetch-repository): Use 'mkdir-p' instead of 'mkdir' for 'cachedirectory'.
* build: Unquote local load paths.Mathieu Lirzin2016-11-29
| | | | | * Makefile.am (local_load_path, local_load_compiled_path): Remove quotes that were expanded in the generated files.
* build: Remove duplicate sed expression.Mathieu Lirzin2016-11-17
| | | | * Makefile.am (do_subst): Remove duplicate line.