summaryrefslogtreecommitdiff
path: root/gnu/services/cuirass.scm
AgeCommit message (Collapse)Author
2022-12-07service: cuirass: Rotate remote server logs.Ludovic Courtès
* gnu/services/cuirass.scm (cuirass-log-rotations): Add the remote server log when it is used.
2022-12-07services: cuirass-remote-worker: Rotate logs.Ludovic Courtès
* gnu/services/cuirass.scm (cuirass-remote-worker-log-rotations): New procedure. (cuirass-remote-worker-service-type): Use it.
2022-12-02records: 'match-record' checks fields at macro-expansion time.Ludovic Courtès
This allows 'match-record' to be more efficient (field offsets are computed at compilation time) and to report unknown fields at macro-expansion time. * guix/records.scm (map-fields): New macro. (define-record-type*)[rtd-identifier]: New procedure. Define TYPE as a macro and use a separate identifier for the RTD. (lookup-field, match-record-inner): New macros. (match-record): Rewrite in terms of 'match-error-inner'. * tests/records.scm ("match-record, simple") ("match-record, unknown field"): New tests. * gnu/services/cuirass.scm (cuirass-shepherd-service): Rename 'log-file' local variable to 'main-log-file'. * gnu/services/getmail.scm (serialize-getmail-configuration-file): Move after <getmail-configuration-file> definition.
2022-08-01services: rottlog: More convenient default options for <log-rotation>.Ludovic Courtès
* gnu/services/admin.scm (%default-log-rotation-options): New variable. (%default-rotations): Use it. * gnu/services/cuirass.scm (cuirass-log-rotations): Likewise. * doc/guix.texi (Log Rotation): Adjust accordingly.
2022-02-17services: cuirass: Also rotate the web log.Maxim Cournoyer
* gnu/services/cuirass.scm (cuirass-log-rotations): Add the web log to the list of rotated files.
2021-12-15services: cuirass: Remove the default database host.Mathieu Othacehe
* gnu/services/cuirass.scm (%cuirass-default-database): Remove the default host.
2021-11-30services: Accept <inferior-package>s in lieu of <package>s.Tobias Geerinckx-Rice
* gnu/services/authentication.scm (fprintd-configuration) (nslcd-configuration): Substitute file-like objects for package ones. * gnu/services/cgit.scm (cgit-configuration, opaque-cgit-configuration): Likewise. * gnu/services/cups.scm (package-list?, cups-configuration): Likewise. * gnu/services/dns.scm (verify-knot-configuration) (ddclient-configuration): Likewise. * gnu/services/docker.scm (docker-configuration): Likewise. * gnu/services/file-sharing.scm (transmission-daemon-configuration): Likewise. * gnu/services/getmail.scm (getmail-configuration): Likewise. * gnu/services/mail.scm (dovecot-configuration) (opaque-dovecot-configuration): Likewise. * gnu/services/messaging.scm (prosody-configuration) (opaque-prosody-configuration): Likewise. * gnu/services/monitoring.scm (zabbix-server-configuration) (zabbix-agent-configuration): Likewise. * gnu/services/networking.scm (opendht-configuration): Likewise. * gnu/services/pm.scm (tlp-configuration): Likewise. * gnu/services/telephony.scm (jami-configuration): Likewise. * gnu/services/virtualization.scm (libvirt-configuration) (qemu-guest-agent-configuration): Likewise. * gnu/services/vpn.scm (openvpn-client-configuration): Likewise.
2021-08-13services: cuirass: Reverse the no-publish logic.Mathieu Othacehe
This is a follow-up of d128c6fd33f46ec4e2d0ef352d20a858c377bf6f. * gnu/services/cuirass.scm (<cuirass-remote-server-configuration>) [no-publish?]: Rename it to ... [publish?]: ... this new field. (cuirass-shepherd-service): Adapt it. * doc/guix.texi (Cuirass remote building): Document it.
2021-08-12services: cuirass: Fix the substitute-urls argument.Mathieu Othacehe
This is a follow-up of: 23b5b168ae95aed04cbaa0598449361af3423688. * gnu/services/cuirass.scm (cuirass-remote-worker-shepherd-service): Fix it.
2021-08-12services: cuirass: Add a substitute-urls argument.Mathieu Othacehe
* gnu/services/cuirass.scm (<cuirass-remote-worker-configuration>): Add a substitute-urls field. (cuirass-remote-worker-shepherd-service): Honor it. * doc/guix.texi (Cuirass remote building): Document it.
2021-08-12services: cuirass: Add a no-publish argument.Mathieu Othacehe
* gnu/services/cuirass.scm (<cuirass-remote-server-configuration>): Add a no-publish? field. (cuirass-shepherd-service): Honor it. * doc/guix.texi (Cuirass remote building): Document it.
2021-06-01services: cuirass: Do not export record type descriptors.Ludovic Courtès
* gnu/services/cuirass.scm (<cuirass-remote-server-configuration>) (<cuirass-configuration>, <cuirass-remote-worker-configuration>): Do not export.
2021-06-01services: cuirass: Create the profile and GC root directory.Ludovic Courtès
* gnu/services/cuirass.scm (cuirass-activation): Create /var/guix/profiles/per-user/cuirass/cuirass or similar.
2021-04-14services: cuirass: Use "/tmp" database host.Mathieu Othacehe
This is a follow-up of c311147bd16aa0e5746d9cbf31502f5fd61e470c. * gnu/services/cuirass.scm (%cuirass-default-database): Use "/tmp" database host.
2021-03-23services: cuirass: Set default port values.Mathieu Othacehe
* gnu/services/cuirass.scm (<cuirass-remote-server-configuration>, <cuirass-configuration>): Set default port values.
2021-03-23services: cuirass: Adapt to Cuirass 1.0.Mathieu Othacehe
* gnu/services/cuirass.scm (cuirass-shepherd-service, cuirass-remote-worker-shepherd-service): Adapt to Cuirass 1.0.
2021-03-10services: cuirass: Remove simple cuirass configuration.Mathieu Othacehe
The Cuirass configuration has been simplified so that this is no longer needed. * gnu/services/cuirass.scm (<build-manifest>, <simple-cuirass-configuration>, simple-cuirass-configuration->specs): Remove them.
2021-03-10services: cuirass: Do not create the database directory.Mathieu Othacehe
Fixes: <https://issues.guix.gnu.org/46683>. * gnu/services/cuirass.scm (cuirass-activation): Since the PostgreSQL switch, it is no longer needed to create the database directory.
2021-02-23services: cuirass: Fix services requirements.Mathieu Othacehe
* gnu/services/cuirass.scm (cuirass-shepherd-service): Add "postgres-roles" to cuirass requirements. Set cuirass-web requirements to cuirass only. Remove "guix-daemon" and "networking" from cuirass-remote-server requirements as are already required by cuirass.
2021-02-23services: cuirass: Improve simple-cuirass-services.Mathieu Othacehe
Instead of returning multiple services in simple-cuirass-services, rely on the instantiate-missing-services procedure to instantiate postgresql and postgresql-role-service-type when missing. Turn simple-cuirass-services procedure into simple-cuirass-configuration->specs, that takes a simple-cuirass-configuration record and returns a Cuirass specification. Suggested-by: Ludovic Courtès <ludo@gnu.org> * gnu/services/cuirass.scm (%default-cuirass-config): Remove it. (simple-cuirass-services): Rename it to ... (simple-cuirass-configuration->specs): ... this procedure. * gnu/tests/cuirass.scm (cuirass-services): Remove postgresql and postgresql-role services that are automatically instantiated. (simple-cuirass-service): New variable. (%cuirass-simple-test): Adapt it to use simple-cuirass-configuration->specs instead of simple-cuirass-services. * doc/guix.texi (Simple Cuirass): Update it.
2021-02-22services: cuirass: Instantiate postgresql service.Mathieu Othacehe
* gnu/services/cuirass.scm (cuirass-service-type): Instantiate postgresql service when missing.
2021-02-22services: cuirass: Add parameters support.Mathieu Othacehe
* gnu/services/cuirass.scm (<cuirass-configuration>)[parameters]: New field. [zabbix-uri]: Remove it. (cuirass-shepherd-service): Honor it.
2021-02-19services: cuirass: Add "simple-cuirass-services".Mathieu Othacehe
* gnu/services/cuirass.scm (<build-manifest>, <simple-cuirass-configuration>): New records. (build-manifest, build-manifest?, simple-cuirass-configuration, simple-cuirass-configuration?, simple-cuirass-services): New procedures. (%default-cuirass-config): New variable. * gnu/tests/cuirass.scm (%cuirass-simple-test): New variable. * doc/guix.texi (Continuous Integration): Document it.
2021-02-12services: cuirass: Add server argument for the remote-worker.Mathieu Othacehe
* gnu/services/cuirass.scm (<cuirass-remote-worker-configuration>)[server]: New field. (cuirass-remote-worker-shepherd-service): Honor it.
2021-02-09services: cuirass: Move zabbix argument to the web process.Mathieu Othacehe
This is a follow-up of 703e5c92eeb38d86455c2b1cace5cad9fc08b349. * gnu/services/cuirass.scm (cuirass-shepherd-service): Move "zabbix-uri" argument to the web process.
2021-02-08services: cuirass: Add Zabbix support.Mathieu Othacehe
* gnu/services/cuirass.scm (<cuirass-configuration>)[zabbix-uri]: New field. (cuirass-shepherd-service): Honor it.
2021-01-28services: cuirass: Create remote-server cache directory.Mathieu Othacehe
* gnu/services/cuirass.scm (cuirass-activation): Create remote-server cache directory if needed. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-01-28services: cuirass: Fix syntax error.Mathieu Othacehe
This is a follow-up of 189e62fa69049538884077155cc70cac43260118. * gnu/services/cuirass.scm (<cuirass-remote-server-configuration>): Fix syntax. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-01-28services: cuirass: Add log-file support.Mathieu Othacehe
* gnu/services/cuirass.scm (cuirass-remote-worker-shepherd-service): Add log-file support. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-01-28services: cuirass: Fix workers argument.Mathieu Othacehe
* gnu/services/cuirass.scm (cuirass-remote-worker-shepherd-service): Fix workers arguments. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-01-28services: cuirass: Add systems argument.Mathieu Othacehe
* gnu/services/cuirass.scm (<cuirass-remote-worker-configuration>)[systems]: New field. (cuirass-remote-worker-shepherd-service): Honor it. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-01-28services: cuirass: Add remote build support.Mathieu Othacehe
2021-01-28service: cuirass: Update it.Mathieu Othacehe
2020-12-08services: cuirass: Add queue-size option.Mathieu Othacehe
* gnu/services/cuirass.scm (<cuirass-configuration>): Add "queue-size" field. (cuirass-shepherd-service): Honor it. * doc/guix.texi (Continuous Integration): Document it.
2020-10-02services: cuirass: Fix activation.Mathieu Othacehe
Fixes: <https://issues.guix.gnu.org/43760>. * gnu/services/cuirass.scm (cuirass-activation): Do not create queries-log-file and web-queries-log-file if the corresponding config file are unset.
2020-09-24services: cuirass: Create queries log files at activation.Mathieu Othacehe
* gnu/services/cuirass.scm (cuirass-activation)[queries-log-file]: Create and set user permissions on "queries-log-file" and "web-queries-log-file".
2020-09-24services: cuirass: Add web SQL queries logging support.Mathieu Othacehe
* gnu/services/cuirass.scm (<cuirass-configuration>)[web-queries-log-file]: New field. (cuirass-shepherd-service): Honor it. (cuirass-log-rotations): If defined, add the web queries log file to the log rotation.
2020-09-24services: cuirass: Add SQL queries logging support.Mathieu Othacehe
* gnu/services/cuirass.scm (<cuirass-configuration>)[queries-log-file]: New field. (cuirass-shepherd-service): Honor it. (cuirass-log-rotations): If defined, add the queries log file to the log rotation.
2020-03-08services: cuirass: Allow passing extra command line options.Christopher Baines
This is so that the options supported by the service configuration don't have to always be changed. Generally though all options should be explicitly supported and documented, so this is mostly to facilitate experimentation. * gnu/services/cuirass.scm (<cuirass-configuration>): Add an extra-options field. (cuirass-shepherd-service): Pass the extra options to the shepherd servvices. * doc/guix.texi (Continuous Integration): Document it.
2020-01-06Adjust module autoloads.Ludovic Courtès
In Guile < 2.9.7, autoloading a module would give you access to all its bindings. In future versions, autoloading a module gives access only to the listed bindings, as per #:select (see <https://bugs.gnu.org/38895>). This commit adjusts autoloads to the new semantics, allowing Guix to be built with Guile 2.9.7/2.9.8. * guix/build/download.scm <top level>: Remove call to 'module-autoload!'. (load-gnutls): New procedure. (tls-wrap): Call it. * guix/git.scm <top level>: Remove call to 'module-autoload!'. (load-git-submodules): New procedure. (update-submodules): Call it instead of 'resolve-interface'. * gnu/bootloader/grub.scm: Replace #:autoload with #:use-module. * gnu/packages.scm: Likewise. * gnu/packages/ssh.scm: Likewise. * gnu/packages/tex.scm: Likewise. * gnu/services/cuirass.scm: Likewise. * gnu/services/mcron.scm: Likewise. * guix/lint.scm: Augment list of bindings in #:autoload. * guix/scripts/build.scm: Likewise. * guix/scripts/gc.scm: Likewise. * guix/scripts/pack.scm: Likewise. * guix/scripts/publish.scm: Likewise. * guix/scripts/pull.scm: Likewise. * guix/utils.scm: Remove unnecessary #:autoload clauses; replace one of them with #:use-module.
2019-10-23services: cuirass: Create /var/log/cuirass during activation.Ludovic Courtès
* gnu/services/cuirass.scm (cuirass-activation): Create "/var/log/cuirass".
2019-09-23services: cuirass: Remove unneeded conditional.Ludovic Courtès
* gnu/services/cuirass.scm (cuirass-shepherd-service): Remove unneeded 'and'.
2019-08-29services: cuirass: Log web interface to separate file.Ricardo Wurmus
* gnu/services/cuirass.scm (<cuirass-configuration>): Add web-log-file field. (cuirass-shepherd-service): Read it and use it. * doc/guix.texi (Continuous Integration): Document it.
2019-08-26services: cuirass: Split into two separate services.Ricardo Wurmus
* gnu/services/cuirass.scm (cuirass-shepherd-service): Return two shepherd services, one for the web interface, another for building packages.
2019-03-04services: Use 'file-append' for user account shells.Ludovic Courtès
* gnu/services/cuirass.scm (cuirass-account): Use 'file-append' instead of #~(string-append #$shadow "/sbin/nologin"). * gnu/services/monitoring.scm (zabbix-server-account): Likewise. (zabbix-agent-account): Likewise. * gnu/services/rsync.scm (rsync-account): Likewise. * gnu/services/ssh.scm (%openssh-accounts): Likewise.
2018-11-07services: cuirass: Add 'ttl' configuration field.Ludovic Courtès
* gnu/services/cuirass.scm (<cuirass-configuration>)[ttl]: New field. (cuirass-shepherd-service): Honor it.
2018-08-16services: cuirass: Put data in /var/lib to avoid removal at boot.Clément Lassieur
Fixes <https://bugs.gnu.org/32330>. * gnu/services/cuirass.scm (<cuirass-configuration>)[database]: Change default from /var/run/cuirass/cuirass.db to /var/lib/cuirass/cuirass.db. (cuirass-account): Change home directory from /var/run/<user> to /var/lib/<user>.
2018-07-16services: cuirass: Remove the LOAD-PATH option.Clément Lassieur
* gnu/services/cuirass.scm (<cuirass-configuration>, cuirass-shepherd-service): Remove the LOAD-PATH option.
2018-06-22services: cuirass: Add description.Ricardo Wurmus
* gnu/services/cuirass.scm (cuirass-service-type): Add description.
2018-06-20services: Fix GPLv3 header in cuirass and pm modules.Nils Gillmann
* gnu/services/cuirass.scm, gnu/services/pm.scm: Adjust to canonical GPLv3 header used throughout Guix. Signed-off-by: Leo Famulari <leo@famulari.name>