Merge "[deployment_handler] Fix some nits and improve output"
authorJose Lausuch <jose.lausuch@ericsson.com>
Tue, 21 Feb 2017 19:18:05 +0000 (19:18 +0000)
committerGerrit Code Review <gerrit@opnfv.org>
Tue, 21 Feb 2017 19:18:05 +0000 (19:18 +0000)
1  2 
modules/opnfv/deployment/manager.py

@@@ -174,13 -174,15 +174,15 @@@ class Node(object)
          Run command remotely on a node
          '''
          if self.status is not NodeStatus.STATUS_OK:
-             logger.error("The node %s is not active" % self.ip)
+             logger.error(
+                 "Error running command %s. The node %s is not active"
+                 % (cmd, self.ip))
              return None
          _, stdout, stderr = (self.ssh_client.exec_command(cmd))
          error = stderr.readlines()
          if len(error) > 0:
              logger.error("error %s" % ''.join(error))
-             return error
+             return None
          output = ''.join(stdout.readlines()).rstrip()
          return output
  
              'info': self.info
          }
  
+     def is_active(self):
+         '''
+         Returns if the node is active
+         '''
+         if self.status == NodeStatus.STATUS_OK:
+             return True
+         return False
      def is_controller(self):
          '''
          Returns if the node is a controller
          '''
 -        if 'controller' in self.roles:
 -            return True
 -        return False
 +        return Role.CONTROLLER in self.roles
  
      def is_compute(self):
          '''
          Returns if the node is a compute
          '''
 -        if 'compute' in self.roles:
 -            return True
 -        return False
 +        return Role.COMPUTE in self.roles
 +
 +    def is_odl(self):
 +        '''
 +        Returns if the node is an opendaylight
 +        '''
 +        return Role.ODL in self.roles
  
      def get_ovs_info(self):
          '''
          Returns the ovs version installed
          '''
-         cmd = "ovs-vsctl --version|head -1| sed 's/^.*) //'"
-         return self.run_cmd(cmd)
+         if self.is_active():
+             cmd = "ovs-vsctl --version|head -1| sed 's/^.*) //'"
+             return self.run_cmd(cmd)
+         return None
  
      def get_system_info(self):
          '''