Author: eelco
Date: Fri Apr 1 18:08:53 2011
New Revision: 26663
URL: https://svn.nixos.org/websvn/nix/?rev=26663&sc=1
Log:
* libvirtd job: wait until libvirtd is accepting connections.
Modified:
nixos/trunk/modules/virtualisation/libvirtd.nix
Modified: nixos/trunk/modules/virtualisation/libvirtd.nix
==============================================================================
--- nixos/trunk/modules/virtualisation/libvirtd.nix Fri Apr 1 16:02:22
2011 (r26662)
+++ nixos/trunk/modules/virtualisation/libvirtd.nix Fri Apr 1 18:08:53
2011 (r26663)
@@ -84,9 +84,20 @@
exec = "${pkgs.libvirt}/sbin/libvirtd --daemon --verbose";
+ # Wait until libvirtd is ready to accept requests.
+ postStart =
+ ''
+ for ((i = 0; i < 60; i++)); do
+ if ${pkgs.libvirt}/bin/virsh list > /dev/null; then exit 0; fi
+ sleep 1
+ done
+ exit 1 # !!! seems to be ignored
+ '';
+
daemonType = "daemon";
};
+ # !!! Split this into save and restore tasks.
jobs.libvirt_guests =
{ name = "libvirt-guests";
@@ -103,10 +114,12 @@
preStart =
''
mkdir -p /var/lock/subsys -m 755
- ${pkgs.libvirt}/etc/rc.d/init.d/libvirt-guests start
+ ${pkgs.libvirt}/etc/rc.d/init.d/libvirt-guests start || true
'';
postStop = "${pkgs.libvirt}/etc/rc.d/init.d/libvirt-guests stop";
+
+ respawn = false;
};
};
_______________________________________________
nix-commits mailing list
[email protected]
http://mail.cs.uu.nl/mailman/listinfo/nix-commits