tests: Create a copy-on-write image instead of copying eagerly.
* gnu/tests/install.scm (qemu-command/writable-image): Invoke 'qemu-img -o backing_file' instead of calling 'copy-file'.
This commit is contained in:
		
							parent
							
								
									dcd9d1637a
								
							
						
					
					
						commit
						130079ae27
					
				
					 1 changed files with 9 additions and 2 deletions
				
			
		| 
						 | 
				
			
			@ -199,8 +199,15 @@ IMAGE, a disk image.  The QEMU VM is has access to MEMORY-SIZE MiB of RAM."
 | 
			
		|||
  (mlet %store-monad ((system (current-system)))
 | 
			
		||||
    (return #~(let ((image #$image))
 | 
			
		||||
                ;; First we need a writable copy of the image.
 | 
			
		||||
                (format #t "copying image '~a'...~%" image)
 | 
			
		||||
                (copy-file image "disk.img")
 | 
			
		||||
                (format #t "creating writable image from '~a'...~%" image)
 | 
			
		||||
                (unless (zero? (system* #+(file-append qemu-minimal
 | 
			
		||||
                                                       "/bin/qemu-img")
 | 
			
		||||
                                        "create" "-f" "qcow2"
 | 
			
		||||
                                        "-o"
 | 
			
		||||
                                        (string-append "backing_file=" image)
 | 
			
		||||
                                        "disk.img"))
 | 
			
		||||
                  (error "failed to create writable QEMU image" image))
 | 
			
		||||
 | 
			
		||||
                (chmod "disk.img" #o644)
 | 
			
		||||
                `(,(string-append #$qemu-minimal "/bin/"
 | 
			
		||||
                                  #$(qemu-command system))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Reference in a new issue