Can disable slice HTB's via PLC_SlICE_PREFIX+_default: sliceattribute net_max_rate=-1
[nodemanager.git] / controller.py
index 65da89f..17268d2 100644 (file)
@@ -1,13 +1,13 @@
-"""NM-Controller accounts are used to provide secure access to the XMLRPC API.  They are normal Unix accounts with a shell that tunnels XMLRPC requests to the API server."""
+"""Delegate accounts are used to provide secure access to the XMLRPC API.  They are normal Unix accounts with a shell that tunnels XMLRPC requests to the API server."""
 
 import accounts
 import logger
 import tools
-
+from pwd import getpwnam
 
 class Controller(accounts.Account):
     SHELL = '/usr/bin/forward_api_calls'  # tunneling shell
-    TYPE = 'controller'
+    TYPE = 'controller.Controller'
 
     @staticmethod
     def create(name, vref = None):
@@ -17,6 +17,11 @@ class Controller(accounts.Account):
     @staticmethod
     def destroy(name): logger.log_call('/usr/sbin/userdel', '-r', name)
 
+    def is_running(self):
+        logger.verbose("Delegate:  %s" % self.name)
+        return getpwnam(self.name)[6] == self.SHELL
+    
+
 def add_shell(shell):
     """Add <shell> to /etc/shells if it's not already there."""
     etc_shells = open('/etc/shells')