On Thu, 31 Aug 2017 14:29:56 +0200 ludo@gnu.org (Ludovic Courtès) wrote: > Hi Chris, Thanks for reviewing these patches Ludo, unfortunately its taken me nearly a month to get around to replying. Thankfully, I've made some progress in that time. > Christopher Baines skribis: > > > * gnu/system/vm.scm (): Add > > disk-image-size. > > (port-forwardings->qemu-options): Use disk-image-size from > > . > > In which case is it useful? Perhaps if you want to create lots of > data on the root file system in the MongoDB test? > > Currently builds a shared-store VM (like ‘guix > system vm’) in which the root file system has a fixed size that’s > usually good enough. The best answer I have at the moment is that I think MongoDB creates a rather large file, even if it has no data to store in it. I'll do some more investigation to confirm this though. > > --- a/gnu/system/vm.scm > > +++ b/gnu/system/vm.scm > > @@ -653,6 +653,8 @@ it is mostly useful when FULL-BOOT? is true." > > (default #f)) > > (memory-size virtual-machine-memory-size ;integer (MiB) > > (default 256)) > > + (disk-image-size virtual-machine-disk-image-size ;integer > > (bytes) > > + (default (* 70 (expt 2 20)))) > > I think we can use 'guess here as the default value (and we should do > the same in places where #:disk-image-size has an arbitrary default.) I've been looking at this in the last few days. Making 'guess the default value here does mean something, and I think it's a good idea. As far as I can tell, for this specific test, these are the 3 functions that are called on the way to using the actual size, and the defaults they have: system-qemu-image/shared-store-script default: (* (if full-boot? 500 70) (expt 2 20))) system-qemu-image/shared-store default: (* (if full-boot? 500 30) (expt 2 20))) qemu-image default: 'guess From my tests, if the default in the is set to 'guess, then for the mongodb test the guess seems to be 0 MiB at the moment, which doesn't work. I've started looking at setting a sensible default in qemu-image, so that the root filesystem size isn't 0 MiB. While testing with the system tests, I noticed that the ones I was testing with didn't pass without my changes, so I've started looking in to that now. So far, I've got one patch that helps [1], but I think there are other issues. 1: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=28600