summaryrefslogtreecommitdiff
path: root/gnu/tests
Commit message (Collapse)AuthorAgeFilesLines
* services: Add memcached.Christopher Baines2017-07-301-0/+121
| | | | | | | | | | * gnu/services/databases.scm (memcached-service-type, %memcached-accounts): New variables. (<memcached-configuration>): New record type. (memcached-service-type): New procedures. * gnu/tests/databases.scm: New file. * doc/guix.texi (Database Services): Document the new memcached service. * gnu/local.mk (GNU_SYSTEM_MODULES): Add entry for tests/databases.scm.
* gnu: services: admin: Add tailon.Christopher Baines2017-07-291-0/+128
| | | | | | | | | | | * gnu/services/admin.scm (<tailon-configuration>, <tailon-configuration-file>): New record types. (tailon-configuration-files-string, tailon-shepherd-service): New procedures. (%tailon-accounts, tailon-service-type: New variables. * doc/guix.texi (Monitoring Services: Document the Tailon service. * gnu/local.mk (GNU_SYSTEM_MODULES): Add gnu/tests/admin.scm. * gnu/tests/admin.scm: New file.
* tests: Use 'virtual-machine' records instead of monadic procedures.Ludovic Courtès2017-07-208-843/+846
| | | | | | | | | | | | | | | * 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.
* gnu: Rename (gnu packages qemu) to (gnu packages virtualization).宋文武2017-07-151-1/+1
| | | | | | | | | * gnu/packages/qemu.scm: Rename this ... * gnu/packages/virtualization.scm: ... to this. * gnu/local.mk (GNU_SYSTEM_MODULES), gnu/packages/bootloaders.scm, gnu/packages/debug.scm, gnu/packages/gnome.scm, gnu/system/vm.scm, gnu/tests/install.scm: Adjust accordingly.
* tests: Add extlinux gpt test.Mathieu Othacehe2017-06-211-6/+86
| | | | | | | | | * gnu/tests/install.scm (%test-installed-extlinux-os): New exported variable. (%minimal-extlinux-os, %minimal-extlinux-os-source): New variables. (%extlinux-gpt-installation-script): New variable. (run-install)[packages]: New argument. The packages specified are appended to the installation image.
* marionette: Factorize 'wait-for-file'.Ludovic Courtès2017-06-123-49/+7
| | | | | | | | | | | * gnu/build/marionette.scm (wait-for-file): New procedure. * gnu/tests/base.scm (run-mcron-test)[test](wait-for-file): Remove. Pass second argument in 'wait-for-file' calls. * gnu/tests/ssh.scm (run-ssh-test)[test](wait-for-file): Remove. Pass second argument in 'wait-for-file' calls. * gnu/tests/messaging.scm (run-xmpp-test)[test](guest-wait-for-file): Remove. Use 'wait-for-file' instead, with second argument.
* activation: Change permissions on /root to #o700.Ludovic Courtès2017-05-301-0/+9
| | | | | | | | | Reported by Alex Griffin <a@ajgrf.com>. Fixes <http://bugs.gnu.org/27135>. * gnu/build/activation.scm (add-user): When UID is zero, add 'chmod' call. * gnu/tests/base.scm (run-basic-test)["permissions on /root"]: New test.
* Merge branch 'version-0.13.0'Marius Bakke2017-05-221-1/+1
|\
| * tests: ssh: Use 'guile2.0-ssh'.Ludovic Courtès2017-05-211-1/+1
| | | | | | | | | | | | Fixes a regression introduced in 4d8806c3d662c74e6d48d0f0d6ce423fce9a3a08. * gnu/tests/ssh.scm (run-ssh-test): Use GUILE2.0-SSH instead of GUILE-SSH.
| * services: user-homes: Do not create home directories marked as no-create.Ludovic Courtès2017-05-201-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | Fixes a bug whereby GuixSD would create the /nonexistent directory, from user 'nobody', even though it has 'create-home-directory?' set to #f. * gnu/build/activation.scm (activate-users+groups): Add comment for \#:create-home?. (activate-user-home)[ensure-user-home]: Skip when CREATE-HOME? is #f or SYSTEM? is #t. * gnu/tests/base.scm (run-basic-test)["no extra home directories"]: New tests.
* | services: user-homes: Do not create home directories marked as no-create.Ludovic Courtès2017-05-181-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | Fixes a bug whereby GuixSD would create the /nonexistent directory, from user 'nobody', even though it has 'create-home-directory?' set to #f. * gnu/build/activation.scm (activate-users+groups): Add comment for \#:create-home?. (activate-user-home)[ensure-user-home]: Skip when CREATE-HOME? is #f or SYSTEM? is #t. * gnu/tests/base.scm (run-basic-test)["no extra home directories"]: New tests.
* | bootloader: Add extlinux support.Mathieu Othacehe2017-05-161-1/+2
|/ | | | | | | | | | | | | | | * gnu/bootloader.scm: New file. * gnu/bootloader/extlinux.scm: New file. * gnu/bootloader/grub.scm: New file. * gnu/local.mk: Build new files. * gnu/system.scm: Adapt to new bootloader api. * gnu/scripts/system.scm: Adapt to new bootloader api. * gnu.scm: Remove (gnu system grub) and replace by (gnu bootloader) and (gnu bootloader grub) modules. * gnu/system/grub.scm: Moved content to gnu/bootloader/grub.scm. * gnu/system/vm: Replace (gnu system grub) module by (gnu bootloader). * gnu/tests.scm: Ditto. * gnu/tests/nfs.scm: Ditto.
* tests: "basic" test loads (guix …) modules from the right place.Ludovic Courtès2017-05-131-13/+8
| | | | | | | | This is a followup to 7561881f2a5d2dc463c24713745eca03e67044bf. * gnu/tests/base.scm (run-basic-test)["/run/current-system is a GC root"]: Remove 'set!' statements, add 'add-to-load-path' statement for GUIX.
* tests: Strengthen GC root test.Ludovic Courtès2017-05-131-2/+4
| | | | | * gnu/tests/base.scm (run-basic-test)["/run/current-system is a GC root"]: Check for a specific return value, 'success!.
* tests: mail: Add test for eximCarlo Zancanaro2017-04-191-1/+134
| | | | | | | * gnu/tests/mail.scm (%exim-os, %test-exim): New variables. (run-exim-test): New procedure. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* tests: dicod: Bail out if we cannot connect within 20 seconds.Ludovic Courtès2017-04-161-4/+5
| | | | | * gnu/tests/dict.scm (run-dicod-test)["connect inside"]: Bail out after 20 seconds of failure to connect.
* services: 'service-parameters' becomes 'service-value'.Ludovic Courtès2017-04-161-1/+1
| | | | | | | | | * gnu/services.scm (<service>)[parameters]: Rename to... [value]: ... this. Change calls to 'service-parameters' to 'service-value'. * gnu/system.scm, gnu/tests/base.scm, guix/scripts/system.scm, tests/services.scm: Likewise. * doc/guix.texi (Service Reference): Adjust accordingly.
* tests: Remove unused import (gnu system grub).Danny Milosavljevic2017-04-151-1/+0
| | | | * gnu/tests/web.scm: Remove unused import.
* tests: Add GNU dicod test.Ludovic Courtès2017-04-011-0/+141
| | | | | * gnu/tests/dict.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* tests: Introduce 'simple-operating-system' and use it.Ludovic Courtès2017-04-016-149/+46
| | | | | | | | | | | | | | * 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.
* services: Add inetd-service-type.Thomas Danckaert2017-03-241-0/+149
| | | | | | | | | | * gnu/services/networking.scm (<inetd-configuration>, <inetd-entry>): New record types. (inetd-config-file, inetd-shepherd-service): New procedures. (inetd-service-type): New variable. * doc/guix.texi (Networking Services): Document it. * gnu/tests/networking.scm: New file. * gnu/local.mk: Add it.
* tests: ssh: Add a test for SFTP.Clément Lassieur2017-03-211-4/+23
| | | | | | * gnu/tests/ssh.scm (run-ssh-test): Introduce "SFTP file writing and reading". Make 'sftp?' a keyword parameter. (%test-openssh): Pass #:sftp? #t to 'run-ssh-test'.
* tests: ssh: Abstract session connection and authentication.Clément Lassieur2017-03-211-29/+53
| | | | | | | * gnu/tests/ssh.scm (run-ssh-test): Introduce make-session-for-test, call-with-connected-session and call-with-connected-session/auth. (run-ssh-test)["connect"]: Rename to "shell command". Abstract its session connection and authentication work into the above three functions.
* tests: Add 'prosody-service-type' test.Clément Lassieur2017-02-101-0/+194
| | | | | | | | | * gnu/tests/messaging.scm: New file. * gnu/services/messaging.scm: New exported procedure. (<shepherd-service>)[provision]: Add 'xmpp-daemon'. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* services: Add 'special-files-service-type'.Ludovic Courtès2017-02-081-0/+17
| | | | | | | | | | | | | * gnu/build/activation.scm (activate-/bin/sh): Remove. (activate-special-files): New procedure. * gnu/services.scm (activation-script): Remove call to 'activate-/bin/sh'. (special-files-service-type): New variable. (extra-special-file): New procedure. * gnu/services/base.scm (%base-services): Add SPECIAL-FILES-SERVICE-TYPE instance. * gnu/tests/base.scm (run-basic-test)[special-files]: New variables. ["special files"]: New test.
* activation: Set the right owner for home directories.Ludovic Courtès2017-02-041-8/+28
| | | | | | | | | | | | | | This fixes a regression introduced in ae763b5b0b7d5e7316a3d0efe991fe8ab2261031 whereby home directories and skeletons would be root-owned. * gnu/build/activation.scm (copy-account-skeletons): Make 'directory' a keyword parameter. Add #:uid and #:gid and honor them. [set-owner]: New procedure. (activate-user-home): Add call to 'getpw' and 'chown'. Pass UID and GID to 'copy-account-skeletons'. * gnu/tests/base.scm (run-basic-test)["skeletons in home directories"]: Test file ownership under HOME.
* system: Create home directories once 'file-systems' is up.Ludovic Courtès2017-02-012-1/+96
| | | | | | | | | | | | | | | | | Fixes <http://bugs.gnu.org/21108>. Reported by Andy Patterson <ajpatter@uwaterloo.ca> and Leo Famulari <leo@famulari.name>. * gnu/build/activation.scm (activate-users+groups)[activate-user]: Pass #:create-home? #t iff CREATE-HOME? and SYSTEM?. (activate-user-home): New procedure. * gnu/system/shadow.scm (account-shepherd-service): New procedure. (account-service-type)[extensions]: Add SHEPHERD-ROOT-SERVICE-TYPE extension. * gnu/tests/base.scm (run-basic-test)["home"] ["skeletons in home directories"]: New tests. * gnu/tests/install.scm (%separate-home-os, %separate-home-os-source) (%test-separate-home-os): New variables.
* services: Create /var/log/wtmp upon activation.Ludovic Courtès2017-01-241-0/+23
| | | | | | | | This fixes a bug whereby /var/log/wtmp would never be created, and thus accounting information would be lost. * gnu/services.scm (activation-script): Create /var/log/wtmp. * gnu/tests/base.scm (run-basic-test)["wtmp entry"]: New test.
* services: Create /var/run/utmpx upon activation.Ludovic Courtès2017-01-191-2/+20
| | | | | | | | This fixes a bug whereby /var/run/utmpx would never be created, and thus accounting information would be missing. * gnu/services.scm (activation-script): Create /var/run/utmpx. * gnu/tests/base.scm (run-basic-test)["utmpx entry"]: New test.
* tests: Add 'nginx-service-type' test.Ludovic Courtès2017-01-191-0/+146
| | | | | * gnu/tests/web.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* file-systems: 'file-system-needed-for-boot?' is #t for parents of the store.Ludovic Courtès2017-01-161-3/+2
| | | | | | | | | | | | Suggested by John Darrington <john@darrington.wattle.id.au>. * gnu/system/file-systems.scm (%not-slash): New variable. (file-prefix?): New procedure. (file-system-needed-for-boot?): Use it to check whether FS holds the store. * tests/file-systems.scm ("file-system-needed-for-boot?"): New test. * gnu/tests/install.scm (%separate-store-os)[file-systems]: Remove 'needed-for-boot?' field for "/gnu".
* system: Add btrfs file system support.David Craven2017-01-101-1/+76
| | | | | | | | | | | | | | | | * gnu/build/file-systems.scm (%btrfs-endianness, btrfs-superblock?, read-btrfs-superblock, btrfs-superblock-uuid, btrfs-superblock-volume-name, check-btrfs-file-system): New variables. (%paritition-label-readers, %partition-uuid-readers): Add btrfs readers. * gnu/system/linux-initrd.scm (linux-modules): Add btrfs modules when a btrfs file-system is used. * gnu/tests/install.scm (%btrfs-root-os %btrfs-root-os-source, %btrfs-root-installation-script, %test-btrfs-root-os): New system test. * doc/guix.texi: Adjust accordingly. Fixes <http://bugs.gnu.org/19280>.
* gnu: Add system test for the rpcbind-daemon service.John Darrington2016-12-151-0/+131
| | | | | * gnu/tests/nfs.scm: New file. * gnu/local.mk: Add it.
* tests: Create a copy-on-write image instead of copying eagerly.Ludovic Courtès2016-11-301-2/+9
| | | | | * gnu/tests/install.scm (qemu-command/writable-image): Invoke 'qemu-img -o backing_file' instead of calling 'copy-file'.
* tests: Add 'opensmtpd-service-type' test.宋文武2016-11-271-0/+159
| | | | | * gnu/tests/mail.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* tests: Remove 'GUIX_LOCPATH' hack that had been added for glibc@2.23.Ludovic Courtès2016-11-231-8/+2
| | | | | | * gnu/tests/base.scm (run-basic-test)[test]("locale"): Remove 'GUIX_LOCPATH' hack, which is no longer needed since commit 9f58fe3d1c32e3f0ced065e286532a10cad1b5e3.
* install: Enable "cryptodisk" handling in GRUB.Ludovic Courtès2016-11-232-13/+66
| | | | | | | | | | | | | | | | | | This allows 'grub-install' to do the right thing when / or /boot is a LUKS-encrypted partition. Fixes <http://bugs.gnu.org/21843>. * gnu/build/install.scm (install-grub): Add 'setenv' to set 'GRUB_ENABLE_CRYPTODISK'. (wait-for-screen-text): New test. * gnu/tests/base.scm (run-basic-test): Add #:initialization parameter and honor it. * gnu/tests/install.scm (%encrypted-root-os)[kernel-arguments]: Remove. (%encrypted-root-installation-script): Pass '--uuid' to 'cryptsetup luksFormat'. Remove 'sed' invocation. (enter-luks-passphrase): New procedure. (%test-encrypted-os)[value]: Pass #:initialization to 'run-basic-test'.
* marionette: Add 'marionette-screen-text' using OCR.Ludovic Courtès2016-11-231-0/+16
| | | | | * gnu/build/marionette.scm (marionette-screen-text): New procedure. * gnu/tests/base.scm (run-basic-test)["screen text"]: New test.
* tests: basic: Fix harmless thinko.Ludovic Courtès2016-11-171-7/+13
| | | | | | | * gnu/tests/base.scm (run-basic-test)["login on tty1"]: Move the file-waiting loop inside the 'marionette-eval' body. Before that, we were waiting for the file to appear on the host, which would never happen, meaning that we were always waiting for 15 seconds.
* tests: Test installation with a RAID root partition.Ludovic Courtès2016-10-271-0/+84
| | | | | * gnu/tests/install.scm (%raid-root-os, %raid-root-os-source) (%raid-root-installation-script, %test-raid-root-os): New variables.
* tests: Add #:memory-size parameter for the command to run the installed OS.Ludovic Courtès2016-10-271-3/+3
| | | | | * gnu/tests/install.scm (qemu-command/writable-image): Add #:memory-size parameter and honor it.
* tests: Test installation with store on a separate partition.Ludovic Courtès2016-10-271-0/+82
| | | | | | | | This is a followup to 0f65f54ebd76324653fd5506a7dab42ee44d9255. * gnu/tests/install.scm (%separate-store-os, %separate-store-os-source) (%separate-store-installation-script, %test-separate-store-os): New variables.
* tests: ssh: Add Dropbear test.Ludovic Courtès2016-10-031-11/+35
| | | | | | * gnu/tests/ssh.scm (run-ssh-test): Try authenticating with 'userauth-none!' when 'userauth-password!' fails. (%test-dropbear): New variable.
* tests: ssh: Generalize.Ludovic Courtès2016-10-031-14/+25
| | | | | | | | | | | * gnu/tests/ssh.scm (%openssh-os): Rename to... (%base-os): ... this. [services]: Remove 'openssh-service-type' instance. (os-with-service): New procedure. (run-openssh-test): Rename to... (run-ssh-test): ... this. Add 'ssh-service' and 'pid-file' parameters. Use 'os-with-service' to add SSH-SERVICE to %BASE-OS. Honor PID-FILE. (%test-openssh): Adjust accordingly.
* tests: Add 'openssh-service-type' test.Ludovic Courtès2016-10-031-0/+158
| | | | | * gnu/tests/ssh.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* services: syslog: Use syslog-configuration.David Craven2016-09-061-3/+6
| | | | | | | | | * gnu/services/base.scm (<syslog-configuration>): New variable. (syslog-service-type): Use <syslog-configuration>. (syslog-service): Use <syslog-configuration>. * gnu/tests/base.scm (%avahi-os): Use <syslog-configuration>. * doc/guix.texi (syslog-configuration-type): Add @deftp. (syslog-service): Update @deffn.
* services: herd: Provide <live-service> objects.Ludovic Courtès2016-08-311-5/+7
| | | | | | | | | | * gnu/services/herd.scm (<live-service>): New record type. (current-services): Change to return a single value: #f or a list of <live-service>. * guix/scripts/system.scm (call-with-service-upgrade-info): Adjust accordingly. * gnu/tests/base.scm (run-basic-test)["shepherd services"]: Adjust accordingly.
* tests: Make sure /var/guix/gcroots/profiles is a valid symlink.Ludovic Courtès2016-08-291-0/+9
| | | | | | | | | | Reported by csanchezdll@gmail.com (Carlos Sánchez de La Lama) at <https://lists.gnu.org/archive/html/guix-devel/2016-08/msg01641.html>. * gnu/build/install.scm (directives): Add /var/guix/gcroots/profiles symlink. * gnu/tests/base.scm (run-basic-test)["/var/guix/gcroots/profiles is a valid symlink"]: New test.
* tests: Make sure /run/current-system is a GC root.Ludovic Courtès2016-08-291-0/+27
| | | | | * gnu/tests/base.scm (run-basic-test)["/run/current-system is a GC root"]: New test.
* system: Define 'GUIX_LOCPATH' to work around 'glibc' package defect.Ludovic Courtès2016-08-021-0/+12
| | | | | | | | | | | Our 'glibc' package currently ignores /run/current-system/locale, although the intent is to look for locales in that directory. * gnu/packages/base.scm (glibc/linux): Add comment about /run/current-system/locale being ignored. * gnu/system.scm (operating-system-environment-variables): Add 'GUIX_LOCPATH'. * gnu/tests/base.scm (run-basic-test): Add "locale" test.