aboutsummaryrefslogtreecommitdiff
path: root/gnu/build/marionette.scm
Commit message (Collapse)AuthorAge
* marionette: Use QEMU's "VM channel" mechanism.Ludovic Courtès2018-02-19
| | | | | | | | | * gnu/tests.scm (<marionette-configuration>)[device]: Default to "/dev/virtio-ports/org.gnu.guix.port.0". * gnu/tests.scm (marionette-shepherd-service): Remove (guix build syscalls) from 'modules'. Remove 'tcsetattr' call from 'start'. * gnu/build/marionette.scm (make-marionette): Use "-virtserialport" instead of "-virtconsole".
* marionette: 'wait-for-file' can be passed a read procedure.Ludovic Courtès2017-09-08
| | | | | | | * gnu/build/marionette.scm (wait-for-file): Add #:read parameter and honor it. * gnu/tests/base.scm (run-basic-test)["login on tty1"]: Use 'wait-for-file' instead of inline code.
* marionette: Augment the set of keystrokes.Ludovic Courtès2017-08-28
| | | | * gnu/build/marionette.scm (%qwerty-us-keystrokes): Add ', ", and `.
* marionette: Fix typing of capital letters.Ludovic Courtès2017-08-28
| | | | | | | | Previously we'd use "sendkey P" instead of "sendkey shift-p", which had no effect. * gnu/build/marionette.scm (character->keystroke): New procedure. (string->keystroke-commands): Use it.
* marionette: 'wait-for-file' really raises an error when a file is missing.Ludovic Courtès2017-08-28
| | | | | * gnu/build/marionette.scm (wait-for-file): Arrange to call 'error' on the host, not in the guest.
* marionette: Factorize 'wait-for-file'.Ludovic Courtès2017-06-12
| | | | | | | | | | | * 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.
* install: Enable "cryptodisk" handling in GRUB.Ludovic Courtès2016-11-23
| | | | | | | | | | | | | | | | | | 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-23
| | | | | * gnu/build/marionette.scm (marionette-screen-text): New procedure. * gnu/tests/base.scm (run-basic-test)["screen text"]: New test.
* marionette: Delay synchronization with the host's REPL.Ludovic Courtès2016-11-23
| | | | | | | | | * gnu/build/marionette.scm (<marionette>)[marionette-repl]: Rename to... [%marionette-repl]: ... this. (marionette-repl): New macro. (make-marionette): Wrap last 'read' call into 'delay', making the last argument to 'marionette' a promise of a port. (marionette-eval): Use 'force' in 'match' clause.
* marionette: Avoid use of SIGALRM for timeouts.Ludovic Courtès2016-11-22
| | | | | * gnu/build/marionette.scm (make-marionette)[accept*]: New procedures. Remove calls to 'sigaction'. Use 'accept*' instead of 'accept'.
* Add (gnu tests) and (gnu build marionette).Ludovic Courtès2016-05-04
* gnu/build/marionette.scm, gnu/tests.scm: New files. * gnu/local.mk (GNU_SYSTEM_MODULES): Add them. * gnu/system/vm.scm (common-qemu-options): Remove '-serial stdio'.