sipb-xen-console-server is totally configurable
[invirt/packages/invirt-console.git] / files / usr / sbin / sipb-xen-update-conserver
index 1fc623b..8d99d64 100755 (executable)
@@ -4,8 +4,9 @@ import sipb_xen_database
 import subprocess
 import os
 import socket
 import subprocess
 import os
 import socket
+from invirt.config import structs as config
 
 
-sipb_xen_database.connect('postgres://sipb-xen@sipb-xen-dev.mit.edu/sipb_xen')
+sipb_xen_database.connect(config.db.uri)
 
 def live_vms():
     p = subprocess.Popen(['/usr/sbin/xm', 'list'], stdout=subprocess.PIPE)
 
 def live_vms():
     p = subprocess.Popen(['/usr/sbin/xm', 'list'], stdout=subprocess.PIPE)
@@ -20,15 +21,15 @@ def reload_conserver():
 
 if __name__ == '__main__':
     hostname = socket.getfqdn().lower()
 
 if __name__ == '__main__':
     hostname = socket.getfqdn().lower()
-    realm = file('/etc/invirt/realm').read().strip()
+    realm = config.authn[0].realm
     principal = 'host/'+hostname+'@'+realm
     principal = 'host/'+hostname+'@'+realm
-    config = '\n'.join('console %s { master %s; }' % (vm, hostname)
-                       for vm in live_vms())
+    conftext = '\n'.join('console %s { master %s; }' % (vm, hostname)
+                         for vm in live_vms())
     f = open('/etc/conserver/sipb-xen-consoles.cf', 'w')
     f = open('/etc/conserver/sipb-xen-consoles.cf', 'w')
-    f.write(config)
+    f.write(conftext)
     f.close()
     reload_conserver()
     subprocess.call(['/usr/bin/kinit', '-k', '-t', '/etc/krb5.keytab',
                      principal])
     f.close()
     reload_conserver()
     subprocess.call(['/usr/bin/kinit', '-k', '-t', '/etc/krb5.keytab',
                      principal])
-    subprocess.call(['/usr/bin/remctl', 'sipb-xen-console.mit.edu',
-                     'console', 'update', config])
+    subprocess.call(['/usr/bin/remctl', config.console.hostname,
+                     'console', 'update', conftext])