Coverage report: /home/ellis/comp/core/lib/cli/tools/virt.lisp
Kind | Covered | All | % |
expression | 11 | 115 | 9.6 |
branch | 0 | 10 | 0.0 |
Key
Not instrumented
Conditionalized out
Executed
Not executed
Both branches taken
One branch taken
Neither branch taken
1
;;; virt.lisp --- Container and VM CLI Tools
6
(in-package :cli/tools/virt)
8
(define-cli-tool :podman (&rest args)
9
(let ((proc (sb-ext:run-program *podman* (or args nil) :output t)))
10
(unless (eq 0 (sb-ext:process-exit-code proc))
11
(podman-error "PODMAN command failed: ~A ~A" *podman* (or args "")))))
13
(defun podman-machine-upgrade ()
14
(run-podman "machine" "ssh" "sudo rpm-ostree upgrade --check"))
16
;; podman system service --time=0 unix:///tmp/podman.sock (local-socket)
17
;; podman system service --time=0 tcp://localhost:8888 (inet-socket :stream :tcp)
18
(defun start-podman-service (addr &optional (protocol :unix) (time 0))
19
"Start the Libpod API on ADDR over PROTO which is either :TCP or :UNIX."
20
(declare ((member :unix :tcp) protocol))
23
(format nil "~(~a~)://~a" protocol addr)
24
(format nil "--time=~a" time)))
26
(define-cli-tool :buildah (args &key (output t) input)
27
(let ((proc (sb-ext:run-program *buildah* args :output output :input input)))
28
(unless (eq 0 (sb-ext:process-exit-code proc))
29
(buildah-error "BUILDAH command failed: ~A ~A" *buildah* args))))
31
(define-cli-tool :mkarchiso (&rest args)
32
(let ((proc (sb-ext:run-program *mkarchiso* (or args nil) :output t)))
33
(unless (eq 0 (sb-ext:process-exit-code proc))
34
(mkarchiso-error "MKARCHISO command failed: ~A ~A" *mkarchiso* (or args "")))))
36
(defun find-qemu-exe (&optional (arch (machine-type)))
37
(find-exe (concatenate 'string "qemu-system-" (string-downcase (substitute #\_ #\- arch)))))
39
(defvar *qemu* (find-qemu-exe))
41
(define-cli-tool :qemu (&rest args)
42
(let ((proc (sb-ext:run-program *qemu* (or args nil) :output t)))
43
(unless (eq 0 (sb-ext:process-exit-code proc))
44
(qemu-error "QEMU command failed: ~A ~A" *qemu* (or args "")))))
46
(defun run-qemu-img (&rest args)
47
(let ((proc (sb-ext:run-program #1=(find-exe "qemu-img") (or args nil) :output t)))
48
(unless (eq 0 (sb-ext:process-exit-code proc))
49
(qemu-error "QEMU-IMG command failed: ~A ~A" #1# (or args "")))))