test new virtualization service

This commit is contained in:
Yann Dupont 2023-05-25 12:00:44 +02:00
parent 81c0ae0f9e
commit b7cc5b7456

View file

@ -0,0 +1,43 @@
(define-module (glicid services virtualization)
#:use-module (gnu services)
#:use-module (gnu services shepherd)
#:use-module (gnu services virtualization)
#:use-module (gnu packages virtualization))
;;;
;;; QEMU guest agent service.
;;;
;;
;;(define qemu-guest-agent-shepherd-service:gnu (@@ (gnu services virtualization) qemu-guest-agent-shepherd-service))
(define (qemu-guest-agent-shepherd-service config)
(let ((qemu (qemu-guest-agent-configuration-qemu config))
(device (qemu-guest-agent-configuration-device config)))
(list
(shepherd-service
(provision '(qemu-guest-agent))
(requirement '(udev)) ;; GLiCID
(documentation "Run the QEMU guest agent.")
(start #~(make-forkexec-constructor
`(,(string-append #$qemu "/bin/qemu-ga")
"--statedir" "/var/run"
,@(if (string-null? #$device)
'()
(list "--path" #$device)))
#:log-file "/var/log/qemu-ga.log"))
(stop #~(make-kill-destructor))))))
(define glicid-qemu-guest-agent-service-type
(service-type
(name 'qemu-guest-agent)
(extensions
(list (service-extension shepherd-root-service-type
qemu-guest-agent-shepherd-service)))
(default-value (qemu-guest-agent-configuration))
(description "Run the QEMU guest agent.")))