# Author: Alina Quereilhac <alina.quereilhac@inria.fr>
from nepi.execution.attribute import Attribute, Types, Flags
-from nepi.execution.resource import ResourceManager, clsinit, ResourceState
+from nepi.execution.resource import ResourceManager, clsinit, ResourceState, \
+ reschedule_delay
from nepi.resources.linux.node import LinuxNode
from nepi.resources.linux.channel import LinuxChannel
# TODO: UP, MTU attributes!
-reschedule_delay = "0.5s"
@clsinit
class LinuxInterface(ResourceManager):
_rtype = "LinuxInterface"
+ _help = "Controls network devices on Linux hosts through the ifconfig tool"
+ _backend = "linux"
@classmethod
def _register_attributes(cls):
mtu = self.get("mtu")
# Get current interfaces information
- (out, err), proc = self.node.execute("ifconfig", sudo = True)
+ (out, err), proc = self.node.execute("ifconfig", sudo = True, tty = True)
if err and proc.poll():
msg = " Error retrieving interface information "
self.discover()
self.provision()
except:
- self._state = ResourceState.FAILED
+ self.fail()
raise
super(LinuxInterface, self).deploy()