Author: eelco
Date: Thu Apr  7 09:59:11 2011
New Revision: 26735
URL: https://svn.nixos.org/websvn/nix/?rev=26735&sc=1

Log:
* Properly initialise Nova's state.

Modified:
   nixos/trunk/modules/virtualisation/nova.nix

Modified: nixos/trunk/modules/virtualisation/nova.nix
==============================================================================
--- nixos/trunk/modules/virtualisation/nova.nix Thu Apr  7 09:58:46 2011        
(r26734)
+++ nixos/trunk/modules/virtualisation/nova.nix Thu Apr  7 09:59:11 2011        
(r26735)
@@ -41,7 +41,7 @@
 
   config = mkIf cfg.enableSingleNode {
 
-    environment.systemPackages = [ nova ];
+    environment.systemPackages = [ nova pkgs.euca2ools ];
 
     environment.etc =
       [ # The Paste configuration file for nova-api.
@@ -56,6 +56,19 @@
 
     # `qemu-nbd' required the `nbd' kernel module.
     boot.kernelModules = [ "nbd" ];
+
+    system.activationScripts.nova =
+      ''
+        mkdir -m 700 -p /var/lib/nova
+
+        # Allow the CA certificate generation script (called by
+        # nova-api) to work.
+        mkdir -m 700 -p /var/lib/nova/CA /var/lib/nova/CA/private
+        cp -p ${nova}/libexec/nova/openssl.cnf.tmpl /var/lib/nova/CA/
+
+        # Initialise the SQLite database.        
+        ${nova}/bin/nova-manage db sync
+      '';
       
     # `nova-api' receives and executes external client requests from
     # tools such as euca2ools.  It listens on port 8773 (XML) and 8774
@@ -67,6 +80,8 @@
 
         startOn = "ip-up";
 
+        path = [ pkgs.openssl ];
+          
         exec = "${nova}/bin/nova-api";
       };
 
_______________________________________________
nix-commits mailing list
[email protected]
http://mail.cs.uu.nl/mailman/listinfo/nix-commits

Reply via email to