1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-04-06 21:20:33 +02:00

47 Commits

Author SHA1 Message Date
Rodion Goritskov
396a9451d4 services: Add configuration action to miniflux-service-type.
* gnu/services/web.scm (miniflux-shepherd-service): Add configuration action.
* gnu/tests/web.scm (run-miniflux-test): Add configuration action check.

Change-Id: I515653070cc0c39fcbe31fef19d8745a1a8d47cb
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-02-23 23:58:25 +00:00
Sören Tempel
64622248cd services: web: Add go-webdav.
* gnu/services/web.scm (go-webdav-service-type): New service.
(go-webdav-account-service): New variable.
(go-webdav-shepherd-service): New procedures.
* gnu/tests/web.scm (%test-go-webdav): Add tests for the service.
* doc/guix.texi (Web Services): Document it.

Signed-off-by: Danny Milosavljevic <dannym@friendly-machines.com>
2026-02-08 23:53:58 +01:00
Christopher Baines
f7125fb55d gnu: Fix patchwork service test.
* gnu/packages/patchutils.scm (patchwork):[arguments]: Write version.txt,
tweak some indentation, patch the STATICFILES_DIRS entry.
[propagated-inputs]: Add python-tzdata.
* gnu/services/web.scm (patchwork-settings-module-compiler): Don't set
STATIC_ROOT on debug, as this clashes with STATICFILES_DIRS.
(patchwork-django-admin-gexp): Fix.
(patchwork-shepherd-services): Workaround issue referencing random-token.
* gnu/tests/web.scm (patchwork-initial-database-setup-service): Don't use
primitive-fork, as this doesn't work with newer shepherds.
(run-patchwork-test): Check the setup runs.

Change-Id: I7dfeb816b4f6c9070358d433fb7ca8faa1fbfd2a
2025-11-10 10:27:36 +00:00
Rodion Goritskov
054aae7bb2 services: Add miniflux-service-type.
* doc/guix.texi: Document Miniflux service and configuration.
* gnu/services/web.scm: New service.
* gnu/services/web.scm: Define shepherd service and account roles.
* gnu/tests/web.scm: (%miniflux-create-admin-credentials,
miniflux-base-system, %test-miniflux-admin-string, %test-miniflux-admin-file,
%test-miniflux-socket): Add system tests for Miniflux service.

Change-Id: I4a336e677ec8b46aed632f0ded9cc11c2d38975f
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-09-26 21:39:40 +02:00
Maxim Cournoyer
10482f731e Reapply "Update Maxim's email address."
This reverts commit a7db92d9b3, this time with
the more careful command, to avoid a world rebuild:

grep -rl --exclude-dir=build --exclude-dir=patches --exclude=ld-wrapper.in \
  --exclude=sitecustomize.py --exclude=guix-emacs.el maxim.cournoyer@gmail.com |
  xargs sed -i 's/maxim.cournoyer@gmail.com/maxim@guixotic.coop/g'

Change-Id: I0871f5cf9ace79e34e78e24154d0da6ea95a3a91
2025-09-18 13:44:12 +09:00
Maxim Cournoyer
a7db92d9b3 Revert "Update Maxim's email address."
This reverts commit d0d87a744d. Oops! This
caused a world rebuild.

Change-Id: I25fff644b2b61d0ee93d69b457b04c72b5b74d15
2025-09-18 12:07:31 +09:00
Maxim Cournoyer
d0d87a744d Update Maxim's email address.
The change was automated via:

  git grep -l maxim.cournoyer@gmail.com |
    xargs sed -i 's/maxim.cournoyer@gmail.com/maxim@guixotic.coop/g'

* .mailmap: New entry.

Change-Id: Iaa88b1e51c94159c49138fb43910badb990eb169
2025-09-18 08:05:19 +09:00
Ian Eure
96c30d2bf6 gnu: Remove Tailon services and documentation.
The tailon package was removed in 63023deaf9,
but the associated service and documentation weren’t, leading to `guix pull`
breaking.

Fixes guix/guix#2689.

* doc/guix.texi: Remove Tailon documentation.
* gnu/services/web.scm (tailon-service-type): Delete variable.
(tailon-configuration-file): Delete variable.
(tailon-configuration-file?): Delete variable.
(tailon-configuration-file-files): Delete variable.
(tailon-configuration-file-bind): Delete variable.
(tailon-configuration-file-relative-root): Delete variable.
(tailon-configuration-file-allow-transfers?): Delete variable.
(tailon-configuration-file-follow-names?): Delete variable.
(tailon-configuration-file-tail-lines): Delete variable.
(tailon-configuration-file-allowed-commands): Delete variable.
(tailon-configuration-file-debug?): Delete variable.
(tailon-configuration-file-http-auth): Delete variable.
(tailon-configuration-file-users): Delete variable
(tailon-configuration): Delete variable.
(tailon-configuration?): Delete variable.
(tailon-configuration-config-file): Delete variable.
(tailon-configuration-package): Delete variable.
* gnu/tests/web.scm (%test-tailon): Delete variable.

Change-Id: I3b507df8233b0440baa6a2bce4604b5813cb3bb0
2025-09-14 11:13:17 -07:00
Gabriel Wicki
39405f7981 gnu: tests: Replace deprecated dhcp client service.
* gnu/tests/audio.scm, gnu/tests/avahi.scm, gnu/tests/ci.scm,
gnu/tests/containers.scm, gnu/tests/cups.scm, gnu/tests/databases.scm,
gnu/tests/dict.scm, gnu/tests/dns.scm, gnu/tests/docker.scm,
gnu/tests/file-sharing.scm, gnu/tests/guix.scm, gnu/tests/install.scm,
gnu/tests/ldap.scm, gnu/tests/lightdm.scm, gnu/tests/mail.scm,
gnu/tests/messaging.scm, gnu/tests/monitoring.scm, gnu/tests/networking.scm,
gnu/tests/nfs.scm, gnu/tests/package-management.scm, gnu/tests/rsync.scm,
gnu/tests/samba.scm, gnu/tests/ssh.scm, gnu/tests/telephony.scm,
gnu/tests/upnp.scm, gnu/tests/version-control.scm,
gnu/tests/virtualization.scm, gnu/tests/vnstat.scm,
gnu/tests/web.scm: (services): Replace dhcp-client-service-type with its
replacement dhcpcd-service-type.

Change-Id: I01d7f9a8c01736d8c8da591aaf4749bbfa4dcdad
2025-07-24 18:46:34 +02:00
Maxim Cournoyer
bcb5724e59 tests: web: Add nginx+anonip test.
This test reproduces the problem reported in bug #59181 ("[berlin] web
services fail to start on reboot due to anonip").

* gnu/tests/web.scm (run-webserver-test) <extra-args>: New keyword argument.
(%nginx+anonip-os, nginx-anonip-tests, %test-nginx+anonip): New variables.

Change-Id: I7bbc8fb9f2ab33ce89bf1c0945d7ddbddf26a7ea
2025-02-13 00:07:21 +09:00
Maxim Cournoyer
a595a52b7b tests: Add anonip system test.
* gnu/tests/web.scm (%test-anonip): New test.
(%anonip-os): New variables.
(run-anonip-test): New procedure.

Change-Id: Ieed210a784dbdeee8a498e74b6c0e31cb72cd9b8
2025-02-13 00:07:21 +09:00
Maxim Cournoyer
df568fc411 tests: web: Have the retry-on-error throw on exhausted attempts.
Previously, it'd simply return the error arguments, which would not always
fail a 'test-assert' test, for example.

* gnu/tests/web.scm (retry-on-error): Re-throw the error when the attempts
have been exhausted.

Change-Id: Ic1468d8ba23f0f78377e90d19bccb2878dc56f0e
2025-02-13 00:07:21 +09:00
Ludovic Courtès
e7cd328714 tests: Adjust for new return value of ‘start-service’.
In Shepherd 1.0, the “running value” of processes is no longer a plain
integer; instead, it is a (process …) sexp.  This commit adjusts tests
to this change in a way that works both for 1.0 and for previous
versions.

* gnu/tests/databases.scm (run-memcached-test)
(run-mysql-test): Don’t expect PID to be a number.
* gnu/tests/docker.scm (run-docker-test)
(run-docker-system-test, run-oci-container-test): Likewise.
* gnu/tests/guix.scm (run-guix-build-coordinator-test)
(run-guix-data-service-test, run-nar-herder-test)
(run-bffe-test): Likewise.
* gnu/tests/ldap.scm (run-ldap-test): Likewise.
* gnu/tests/monitoring.scm (run-prometheus-node-exporter-server-test):
Likewise.
* gnu/tests/virtualization.scm (run-libvirt-test)
(run-qemu-guest-agent-test, run-childhurd-test): Likewise.
* gnu/tests/web.scm (run-webserver-test, run-php-fpm-test)
(run-hpcguix-web-server-test, run-patchwork-test)
(run-agate-test): Likewise
* gnu/tests/ssh.scm (run-ssh-test): Accept a number, an ‘inetd-service’
sexp, or a ‘process’ sexp.

Change-Id: I8c7a37a981f0788780fbc33752a38e7f9a026437
2024-12-09 23:15:44 +01:00
Rodion Goritskov
61a7930cb0 services: agate: Change variable names and add system test.
* doc/guix.texi (Web Services): Update documentation for agate-service-type.
* gnu/services/web.scm (agate-configuration): Rename certs, addr, lang and
central-conf variables.
* gnu/tests/web.scm (%test-agate): Add system test for agate-service-type.

Change-Id: Ie14814fca1d5158acd67899da0c3fc2c5b586c72
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-08-31 19:06:39 +02:00
Ludovic Courtès
e1dbac04c3 gnu: hpcguix-web: Update to 0.3.0.
* gnu/packages/web.scm (hpcguix-web): Update to 0.3.0.
[inputs]: Add GUILE-SYNTAX-HIGHLIGHT.
[arguments]: In 'wrap-program' phase, take guile-syntax-highlight into
account.
* gnu/tests/web.scm (%hpcguix-web-specs): Remove 'define'.
* doc/guix.texi (Web Services): Adjust accordingly.
2023-01-22 18:12:09 +01:00
Mathieu Othacehe
7b9ee58925 tests: Fix tailon test.
This is a follow-up of 73eeeeafbb.

* gnu/tests/web.scm (run-tailon-test): Wait for the TCP port 8080 instead of
relying on start-service.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2022-05-01 12:53:53 +02:00
Mathieu Othacehe
32750e8c3e Merge remote-tracking branch 'signed/master' into core-updates 2021-12-10 21:49:25 +01:00
Marius Bakke
757a2eb970 tests: patchwork: Use the default PostgreSQL.
* gnu/tests/web.scm (patchwork-os)[services]: Change from POSTGRESQL-10 to
POSTGRESQL.
2021-12-06 21:17:31 +01:00
Ludovic Courtès
3a317f7476 Merge branch 'master' into core-updates-frozen 2021-11-17 23:43:14 +01:00
Ludovic Courtès
21332f3b8c gnu: hpcguix-web: Update to 0.2.0.
* gnu/packages/web.scm (hpcguix-web): Update to 0.2.0.
[arguments]: In 'wrap-program' phase, add guile-zlib to DEPS.
[native-inputs]: Add GUILE.
[inputs]: Add GUILE-ZLIB, GUILE-COMMONMARK, and GUILE-JSON.
[propagated-inputs]: Remove.  These were pointless.
* gnu/services/web.scm (<hpcguix-web-configuration>)[address, port]: New
fields.
* doc/guix.texi (Web Services): Document them.
* gnu/tests/web.scm (%hpcguix-web-os): Add 'address'.
2021-11-15 17:55:50 +01:00
Ludovic Courtès
89b0544293 tests: Reduce boilerplate for users of 'system-test-runner'.
* gnu/tests/audio.scm, gnu/tests/base.scm, gnu/tests/ci.scm,
gnu/tests/cups.scm, gnu/tests/databases.scm, gnu/tests/desktop.scm,
gnu/tests/dict.scm, gnu/tests/docker.scm, gnu/tests/file-sharing.scm,
gnu/tests/ganeti.scm, gnu/tests/guix.scm, gnu/tests/ldap.scm,
gnu/tests/linux-modules.scm,
gnu/tests/mail.scm, gnu/tests/messaging.scm, gnu/tests/monitoring.scm,
gnu/tests/networking.scm, gnu/tests/nfs.scm,
gnu/tests/package-management.scm, gnu/tests/reconfigure.scm,
gnu/tests/rsync.scm, gnu/tests/security-token.scm,
gnu/tests/singularity.scm, gnu/tests/ssh.scm, gnu/tests/telephony.scm,
gnu/tests/version-control.scm, gnu/tests/virtualization.scm,
gnu/tests/web.scm: Remove (mkdir #$output) (chdir #$output) and
pass #$output as argument to 'system-test-runner'.
2021-09-26 23:20:56 +02:00
Ludovic Courtès
1fb75128a5 tests: Adjust to SRFI-64 as found in Guile 3.0.7.
In Guile 3.0.7, 'test-runner-current' is set to #f upon 'test-end'.
Consequently, the previous strategy, where we'd call
'test-runner-current' after 'test-end', no longer works.  Instead, set
the test runner in each test right before 'test-begin'.

* gnu/build/marionette.scm (system-test-runner): New procedure.
* gnu/tests/audio.scm (run-mpd-test): Replace (exit (= ...)) idiom
by (test-runner-current (system-test-runner)).
* gnu/tests/base.scm (run-basic-test)
(run-cleanup-test, run-mcron-test, run-nss-mdns-test): Likewise.
* gnu/tests/ci.scm (run-laminar-test): Likewise.
* gnu/tests/cups.scm (run-cups-test): Likewise.
* gnu/tests/databases.scm (run-memcached-test)
(run-postgresql-test, run-mysql-test): Likewise.
* gnu/tests/desktop.scm (run-elogind-test): Likewise.
* gnu/tests/dict.scm (run-dicod-test): Likewise.
* gnu/tests/docker.scm (run-docker-test): Likewise.
(run-docker-system-test): Likewise.
* gnu/tests/file-sharing.scm (run-transmission-daemon-test): Likewise.
* gnu/tests/ganeti.scm (run-ganeti-test): Likewise.
* gnu/tests/guix.scm (run-guix-build-coordinator-test): Likewise.
(run-guix-data-service-test): Likewise.
* gnu/tests/ldap.scm (run-ldap-test): Likewise.
* gnu/tests/linux-modules.scm (run-loadable-kernel-modules-test-base): Likewise.
* gnu/tests/mail.scm (run-opensmtpd-test)
(run-exim-test, run-dovecot-test, run-getmail-test): Likewise.
* gnu/tests/messaging.scm (run-xmpp-test)
(run-bitlbee-test, run-quassel-test): Likewise.
* gnu/tests/monitoring.scm (run-prometheus-node-exporter-server-test)
(run-zabbix-server-test): Likewise.
* gnu/tests/networking.scm (run-inetd-test, run-openvswitch-test)
(run-dhcpd-test, run-tor-test, run-iptables-test, run-ipfs-test): Likewise.
* gnu/tests/nfs.scm (run-nfs-test)
(run-nfs-server-test, run-nfs-root-fs-test): Likewise.
* gnu/tests/package-management.scm (run-nix-test): Likewise.
* gnu/tests/reconfigure.scm (run-switch-to-system-test)
(run-upgrade-services-test, run-install-bootloader-test): Likewise.
* gnu/tests/rsync.scm (run-rsync-test): Likewise.
* gnu/tests/security-token.scm (run-pcscd-test): Likewise.
* gnu/tests/singularity.scm (run-singularity-test): Likewise.
* gnu/tests/ssh.scm (run-ssh-test): Likewise.
* gnu/tests/telephony.scm (run-jami-test): Likewise.
* gnu/tests/version-control.scm (run-cgit-test): Likewise.
(run-git-http-test, run-gitolite-test, run-gitile-test): Likewise.
* gnu/tests/virtualization.scm (run-libvirt-test, run-childhurd-test): Likewise.
* gnu/tests/web.scm (run-webserver-test, run-php-fpm-test)
(run-hpcguix-web-server-test, run-tailon-test, run-patchwork-test): Likewise.
2021-09-25 18:52:05 +02:00
Mathieu Othacehe
0b76b25a0e tests: hpcguix-web: Fix it.
* gnu/tests/web.scm (run-hpcguix-web-server-test): Increase the VM memory size
and add retries for the http-get test.
2021-06-01 14:33:27 +02:00
Mathieu Othacehe
89af95313d tests: Increase VM memory size.
The patchwork test sometimes fail because there's not enough available RAM in
the marionette. Increase the VM memory size to 1024MiB.

* gnu/tests/web.scm (run-patchwork-test): Increase VM memory size to 1024MiB.
2021-04-18 09:52:18 +02:00
Mathieu Othacehe
3b5c4e6fb2 tests: patchwork: Fix it.
The "http-get" test is sometimes failing because the Web server is not yet
initialized and returns the 500 error code.

Use the retry-or-error procedure, like in the tailon test to do a few retries.

* gnu/tests/web.scm (run-tailon-test): Move "retry-or-error" procedure to the
top level and adapt its call.
(run-patchwork-test): Use it.
2021-04-18 09:52:18 +02:00
Christopher Baines
c311147bd1 services: postgresql: Change service default socket directory.
Fixes <https://bugs.gnu.org/46737>.

PostgreSQL running with a different socket directory to the default one in the
package itself breaks some services, this commit restores the previous
behaviour where PostgreSQL by default will run with a socket directory that
matches the default used by PostgreSQL packaged for Guix.

Switching to a different default value can happen, but only alongside changing
the PostgreSQL package.

* gnu/services/databases.scm (<postgresql-config-file>)[socket-directory]:
Change default to #false.
* doc/guix.texi (Database Services): Update documentation, and specify a
different value for disabling connections via sockets.
* gnu/tests/guix.scm (%guix-data-service-os): Use default PostgreSQL
behaviour.
* gnu/tests/monitoring.scm (%zabbix-os): Likewise.
* gnu/tests/web.scm (patchwork-os): Likewise.

Signed-off-by: Leo Famulari <leo@famulari.name>
2021-04-12 19:12:46 -04:00
Mathieu Othacehe
6c0679215f services: postgresql: Add socket directory support.
* gnu/services/databases.scm (postgresql-config-file-socket-directory): New
procedure.
(<postgresql-config-file>)[socket-directory]: New field.
(postgresql-config-file-compiler): Honor it.
(postgresql-activation): Create the socket directory if needed.
* doc/guix.texi (Database Services): Document it.
* gnu/tests/guix.scm (%guix-data-service-os): Adapt it.
* gnu/tests/monitoring.scm (%zabbix-os): Ditto.
* gnu/tests/web.scm (patchwork-os): Ditto.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-01-28 12:57:26 +01:00
Christopher Baines
bdcf4d88d5 services: databases: Don't specify a default postgresql version.
Currently, if the postgresql package major version changes, this is going to
break the service upon upgrade, because PostgreSQL will reject the data files
from the differing major version of the service.

Because it's important to either keep running a particular major version, or
intentionally upgrade, I think the configuration would be better with no
default. I think this is also going to be helpful when trying to assist users
upgrading PostgreSQL.

* gnu/services/databases.scm (<postgresql-configuration>): Remove default for
postgresql.
(postgresql-service-type): Remove the default value.
* gnu/tests/databases.scm (%postgresql-os): Update accordingly.
* gnu/tests/guix.scm (%guix-data-service-os): Update accordingly.
* gnu/tests/monitoring.scm (%zabbix-os): Update accordingly.
* gnu/tests/web.scm (patchwork-os): Update accordingly.
* doc/guix.texi (PostgreSQL): Update accordingly.
2020-10-20 22:39:43 +01:00
Julien Lepiller
5cd9cd644c gnu: tests: Fix unbound variable.
Record type descriptors were made private in
a143e92446, but a usage of them was
forgotten in the tests files.

* gnu/tests/web.scm (patchwork-initial-database-setup-service): Use
accessors to access field values instead of unexported type descriptor.
2020-07-13 04:23:43 +02:00
Ludovic Courtès
aa7b3c6c0e tests: web: Explicitly wait for the HTTP port.
* gnu/tests/web.scm (run-webserver-test)["HTTP port ready"]: New test.
2020-04-21 16:33:21 +02:00
Christopher Baines
2177d9222f services: Add patchwork.
* gnu/service/web.scm (<patchwork-database-configuration>
<patchwork-settings-module>, <patchwork-configuration>): New record types.
(patchwork-virtualhost): New procedure.
(patchwork-service-type): New variable.
* gnu/tests/web.scm (%test-patchwork): New variable.
* doc/guix.text (Web Services): Document it.
2019-05-31 20:22:23 +01:00
Ludovic Courtès
39d7fdce45 services: dhcp-client: Deprecate 'dhcp-client-service' procedure.
* gnu/services/networking.scm (dhcp-client-service-type): Add default
value.
* gnu/system/examples/bare-bones.tmpl: Use (service
dhcp-client-service-type) instead of (dhcp-client-service).
* gnu/system/examples/beaglebone-black.tmpl: Likewise.
* gnu/tests/base.scm (%avahi-os): Likewise.
* gnu/tests/databases.scm (%memcached-os): Likewise.
(%mongodb-os): Likewise.
* gnu/tests/dict.scm (%dicod-os): Likewise.
* gnu/tests/mail.scm (%opensmtpd-os): Likewise.
(%exim-os): Likewise.
(%dovecot-os): Likewise.
* gnu/tests/messaging.scm (run-xmpp-test): Likewise.
(run-bitlbee-test): Likewise.
* gnu/tests/monitoring.scm (%prometheus-node-exporter-os): Likewise.
* gnu/tests/networking.scm (%inetd-os): Likewise.
(run-iptables-test): Likewise.
* gnu/tests/nfs.scm (%base-os): Likewise.
* gnu/tests/rsync.scm (%rsync-os): Likewise.
* gnu/tests/ssh.scm (run-ssh-test): Likewise.
* gnu/tests/version-control.scm (%cgit-os): Likewise.
(%git-http-os): Likewise.
(%gitolite-os): Likewise.
* gnu/tests/virtualization.scm (%libvirt-os): Likewise.
* gnu/tests/web.scm (%httpd-os): Likewise.
(%nginx-os): Likewise.
(%varnish-os): Likewise.
(%php-fpm-os): Likewise.
(%hpcguix-web-os): Likewise.
(%tailon-os): Likewise.
* tests/guix-system.sh: Likewise.
* doc/guix.texi (Networking Services): Document
'dhcp-client-service-type' and remove 'dhcp-client-service'.
2018-10-18 01:12:22 +02:00
Marius Bakke
4353981eb0 tests: Add missing copyright statement.
This is a follow-up to commit 3b97a1779f.

* gnu/tests/web.scm: Update copyright header.
2018-09-28 18:23:00 +02:00
Marius Bakke
3b97a1779f services: Add Varnish service.
* gnu/services/web.scm (<varnish-configuration>): New record type.
(%varnish-accounts, %varnish-service-type): New variables.
(varnish-shepherd-service): New procedure.
* gnu/tests/web.scm (%varnish-vcl, %varnish-os): New variables.
(%test-varnish): New test.
* doc/guix.texi (Web Services): Document it.
2018-09-26 00:33:01 +02:00
Ludovic Courtès
19de8273ee services: tailon: Move to (gnu services web).
This allows (gnu services admin) to remain deeper in the module graph
and to be used by (gnu services web).

* gnu/services/admin.scm (<tailon-configuration-file>)
(tailon-configuration-files-string)
(tailon-configuration-file-compiler, <tailon-configuration>)
(tailon-shepherd-service, %tailon-accounts)
(tailon-service-type): Move to...
* gnu/services/web.scm: ... here.
* gnu/tests/admin.scm: Remove.  Move test to...
* gnu/tests/web.scm (%tailon-os)
(run-tailon-test, %test-tailon): ... here.
2018-09-10 12:12:50 +02:00
Clément Lassieur
c24b15472b tests: Honor the return value of 'start-service'.
Since commit dc7b3e5633, 'start-service' returns
the Shepherd's representation of the service as a sexp, and '#f' if the
service fails to start.  Also, it doesn't throw an exception when the service
fails to start, so relying on an exception instead of relying on its return
value is a false positive.

* gnu/tests/base.scm (run-nss-mdns-test): Split tests so to check the return
value of 'start-service'.
(run-mcron-test, run-nss-mdns-test): Use 'test-assert' with the return value
of 'start-service'.
* gnu/tests/admin.scm (run-tailon-test): Idem.
* gnu/tests/dict.scm (run-dicod-test): Idem.
* gnu/tests/mail.scm (run-opensmtpd-test, run-exim-test, run-dovecot-test):
Idem.
* gnu/tests/messaging.scm (run-xmpp-test, run-bitlbee-test): Idem.
* gnu/tests/nfs.scm (run-nfs-test): Idem.
* gnu/tests/rsync.scm (run-rsync-test): Idem.
* gnu/tests/ssh.scm (run-ssh-test): Idem.
* gnu/tests/version-control.scm (run-cgit-test, run-git-http-test): Idem.
* gnu/tests/web.scm (run-php-fpm-test): Idem.
2018-06-13 09:11:45 +02:00
Rouby Pierre-Antoine
93b83eb31e services: Add hpcguix-web.
* gnu/service/web.scm (<hpcguix-web-configuration>): New record-type.
  (%hpcguix-web-accounts): New variable.
  (%hpcguix-web-activation,hpcguix-web-shepherd-service,
  hpcguix-web-service-type): New procedures.
* gnu/tests/web.scm (run-hpcguix-web-server-test): New procedure.
  (%hpcguix-web-specs, %hpcguix-web-os, %test-hpcguix-web): New variable.
* doc/guix.texi (Web Services): Add 'hpcguix-web'.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2018-06-01 13:50:26 +02:00
Christopher Baines
d067e4badc gnu: services: web: Add service for httpd.
* gnu/services/web.scm (<httpd-module>,
  <httpd-config-file>, <httpd-virtualhost>
  <httpd-configuration>): New record types.
  (%default-httpd-modules, %httpd-accounts,
  httpd-service-type): New variables.
  (httpd-shepherd-services, httpd-activation,
  httpd-process-extensions): New procedures.
* gnu/tests/web.scm (run-httpd-test): New procedure.
  (%httpd-os, %tests-httpd): New variables.
* doc/guix.texi (Web Services): Document the Apache HTTP Server.
2018-01-17 08:43:47 +00:00
Christopher Baines
d9b530813f gnu: tests: web: Generalise the nginx test.
So that it can also be used for other web servers.

* gnu/tests/web.scm (%index.html-contents): Change nginx to guix.
  (%make-http-root): Move the index.html file from /srv to /srv/http.
  (%nginx-servers): Remove the setting of root.
  (run-nginx-test, run-webserver-test): Rename run-nginx-test to
  run-webserver-test and generalise its behaviour
  (%test-nginx): Change to use run-webserver-test, rather than run-nginx-test.
2018-01-17 08:43:41 +00:00
Ludovic Courtès
a1ac7bf361 tests: Adjust php-fpm test to new nginx API.
Fixes <https://bugs.gnu.org/29769>.
Reported by Mark H Weaver <mhw@netris.org>.

This is a followup to 8b223ceac4.

* gnu/tests/web.scm (%php-fpm-nginx-server-blocks): Turn 'listen' into a
list.
2017-12-19 09:53:56 +01:00
Clément Lassieur
8b223ceac4 services: nginx: Replace 'http-port' and 'https-port' with 'listen'.
* doc/guix.texi (Web Services, Version Control Services): Update accordingly.
* gnu/services/certbot.scm (certbot-nginx-server-configurations): Likewise.
* gnu/services/version-control.scm (%cgit-configuration-nginx): Likewise.
* gnu/services/web.scm (<nginx-server-configuration>,
emit-nginx-server-config): Likewise.
* gnu/tests/version-control.scm (%cgit-configuration-nginx,
%git-nginx-configuration): Likewise.
* gnu/tests/web.scm (%nginx-servers, %php-fpm-nginx-server-blocks): Likewise.
2017-12-18 12:03:14 +01:00
nee
64bae7237c gnu: services: Add php-fpm.
* gnu/services/web.scm (<php-fpm-configuration>,
  <php-fpm-process-manager-configuration>): New record types.
  (php-fpm-configuration?,
   php-fpm-process-manager-configuration?,
   php-fpm-service-type,
   nginx-php-location): New procedures.
* doc/guix.texi (Web-Services): Document php-fpm service.
* gnu/tests/web.scm: Add php-fpm system test.

Signed-off-by: Christopher Baines <mail@cbaines.net>
2017-12-12 21:29:39 +00:00
Christopher Baines
c48aa70a9a services: web: Remove default certificate and key files for nginx.
If nginx is configured with a ssl-certificate file, and ssl-certificate-key,
it will fail to start unless these exist. To avoid this happening, change the
default to #f.

* gnu/services/web.scm (<nginx-server-configuration>)
  [ssl-certificate,ssl-certificate-key]: Set the defaults to #f.
* gnu/tests/web.scm (%nginx-servers): Remove redundant
  nginx-server-configuration fields.
* doc/guix.texi (Web Services): Update examples and documentation.
2017-12-11 20:36:43 +00:00
Ludovic Courtès
8b113790fa tests: Use 'virtual-machine' records instead of monadic procedures.
* gnu/tests/base.scm (%test-basic-os): Use 'let*' instead of 'mlet*' and
'virtual-machine' instead of 'system-qemu-image/shared-store-script'.
(run-mcron-test): Likewise.
(run-nss-mdns-test): Likewise.
* gnu/tests/dict.scm (run-dicod-test): Likewise.
* gnu/tests/mail.scm (run-opensmtpd-test): Likewise.
(run-exim-test): Likewise.
* gnu/tests/messaging.scm (run-xmpp-test): Likewise.
* gnu/tests/networking.scm (run-inetd-test): Likewise.
* gnu/tests/nfs.scm (run-nfs-test): Likewise.
* gnu/tests/ssh.scm (run-ssh-test): Likewise.
* gnu/tests/web.scm (run-nginx-test): Likewise.
2017-07-20 11:57:13 +02:00
Danny Milosavljevic
99828febe0 tests: Remove unused import (gnu system grub).
* gnu/tests/web.scm: Remove unused import.
2017-04-15 15:32:25 +02:00
Ludovic Courtès
892d9089a8 tests: Introduce 'simple-operating-system' and use it.
* gnu/tests.scm (%simple-os): New macro.
(simple-operating-system): New macro.
* gnu/tests/base.scm (%simple-os): Define using 'simple-operating-system'.
(%mcron-os): Use 'simple-operating-system'.
* gnu/tests/mail.scm (%opensmtpd-os): Likewise.
* gnu/tests/messaging.scm (%base-os, os-with-service): Remove.
(run-xmpp-test): Use 'simple-operating-system'.
* gnu/tests/networking.scm (%inetd-os): Likewise.
* gnu/tests/ssh.scm (%base-os, os-with-service): Remove.
(run-ssh-test): Use 'simple-operating-system'.
* gnu/tests/web.scm (%nginx-os): Likewise.
2017-04-01 00:45:18 +02:00
Ludovic Courtès
11f3885bb5 tests: Add 'nginx-service-type' test.
* gnu/tests/web.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
2017-01-19 14:44:59 +01:00