X-Git-Url: http://xvm.mit.edu/gitweb/invirt/packages/invirt-remote.git/blobdiff_plain/b4aa88984ee1f2eb0d11d61737099032816732a4..8b723d5c2cad29205e1f48142a9f5d4350c9fd2a:/server/usr/sbin/invirt-remconffs diff --git a/server/usr/sbin/invirt-remconffs b/server/usr/sbin/invirt-remconffs index ac4fe15..17ec450 100755 --- a/server/usr/sbin/invirt-remconffs +++ b/server/usr/sbin/invirt-remconffs @@ -37,11 +37,11 @@ class RemConfFS(routefs.RouteFS): def make_map(self): m = Mapper() - m.connect('', controller='getroot') - m.connect('acl', controller='getmachines') - m.connect('acl/:machine', controller='getacl') - m.connect('adminacl', controller='getadmin') - m.connect('conf', controller='getconf') + m.connect('/', controller='getroot') + m.connect('/acl', controller='getmachines') + m.connect('/acl/:machine', controller='getacl') + m.connect('/adminacl', controller='getadmin') + m.connect('/conf', controller='getconf') return m def getroot(self, **kw): @@ -57,21 +57,21 @@ class RemConfFS(routefs.RouteFS): from_obj=[database.machine_access_table, database.machine_table]) # from tables users = [self.userToPrinc(acl[0]) for acl in database.session.execute(s)] - return "\n".join(users - + ['include /etc/remctl/acl/web', - '']) + return routefs.File("\n".join(users + + ['include /etc/remctl/acl/web', + ''])) def getconf(self, **kw): """Build the master conf file, with all machines """ - return '\n'.join("control %s /usr/sbin/invirt-remote-proxy-control" - " /etc/remctl/remconffs/acl/%s" - % (machine_name, machine_name) - for machine_name in self.getmachines())+'\n' + return routefs.File('\n'.join("control %s /usr/sbin/invirt-remote-proxy-control" + " /etc/remctl/remconffs/acl/%s" + % (machine_name, machine_name) + for machine_name in self.getmachines())+'\n') def getmachines(self, **kw): """Get the list of VMs in the database. Does not cache to prevent race conditions.""" - return list(row[0] for row in database.session.execute(sa.sql.select([database.Machine.c.name]))) + return list(row[0] for row in database.session.execute(sa.sql.select([database.Machine.name]))) def getadmin(self, **kw): """ @@ -79,7 +79,7 @@ class RemConfFS(routefs.RouteFS): """ acl = [self.userToPrinc(row[0]) for row in database.session.execute(sa.sql.select([database.admins_table.c.user]))] acl.append('include /etc/remctl/acl/web\n') - return '\n'.join(acl) + return routefs.File('\n'.join(acl)) def userToPrinc(self, user): """Convert Kerberos v4-style names to v5-style and append a default