One of these days I'll learn not to hack when I should be sleeping
[invirt/packages/invirt-console.git] / files / usr / sbin / sipb-xen-update-conserver
index 297fefe..fb3a7a0 100755 (executable)
@@ -1,4 +1,24 @@
-#!/bin/bash
+#!/usr/bin/python
 
-ls /etc/conserver/conf.d/ | sed -e 's|^|#include /etc/conserver/conf.d/|' >/etc/conserver/includes.cf
-/etc/init.d/conserver-server reload
\ No newline at end of file
+import sipb_xen_database
+import subprocess
+import os
+
+sipb_xen_database.connect('postgres://sipb-xen@sipb-xen-dev.mit.edu/sipb_xen')
+
+def live_vms():
+    p = subprocess.Popen(['xm', 'list'], stdout=subprocess.PIPE)
+    p.wait()
+    output = p.stdout.read()
+    vms = [x.split()[0][2:] for x in output.splitlines() if x.startswith('d_')]
+    return vms
+
+def reload_conserver():
+    p = subprocess.Popen(['/etc/init.d/conserver-server', 'reload'], stdout=subprocess.PIPE)
+    p.wait()
+
+if __name__ == '__main__':
+    f = open('/etc/conserver/sipb-xen-consoles.cf', 'w')
+    f.write('\n'.join('console %s {}' % vm for vm in live_vms()))
+    f.close()
+    reload_conserver()