diff options
author | Marco Capitani <m.capitani@nextworks.it> | 2018-03-26 16:52:30 +0200 |
---|---|---|
committer | Marco Capitani <m.capitani@nextworks.it> | 2018-03-26 16:56:14 +0200 |
commit | 9e499fec0ca6e2940717bce45388c59960f9bdc3 (patch) | |
tree | 307b7636cccbc7f38f3e14acb0ba616e05307c80 /rumba/model.py | |
parent | 81dfe735a72683b7dc87f329d9a25a1868fe74f1 (diff) | |
download | rumba-9e499fec0ca6e2940717bce45388c59960f9bdc3.tar.gz rumba-9e499fec0ca6e2940717bce45388c59960f9bdc3.zip |
model: make DIFs scriptable
DIFs instances can now be referenced inside .rsb files.
Also changed Node.set_link_state function to accept a DIF
as opposed to an IPCP, since IPCPs are not given a name nor
mentioned is user scripts.
Diffstat (limited to 'rumba/model.py')
-rw-r--r-- | rumba/model.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/rumba/model.py b/rumba/model.py index 20f8215..e12bddd 100644 --- a/rumba/model.py +++ b/rumba/model.py @@ -145,6 +145,10 @@ class ShimUDPDIF(DIF): # @link_speed [int] Speed of the Ethernet network, in Mbps # class ShimEthDIF(DIF): + + def get_e_id(self): + return "ShimEthDIF." + self.name + def __init__(self, name, members=None, link_speed=0): DIF.__init__(self, name, members) self.link_speed = int(link_speed) @@ -360,7 +364,8 @@ class Node(object): def fetch_file(self, path, destination, sudo=False): self.executor.fetch_files(self, path, destination, sudo) - def set_link_state(self, ipcp, state): + def set_link_state(self, dif, state): + ipcp = self.get_ipcp_by_dif(dif) self.execute_command('ip link set dev ' + ipcp.ifname + ' ' + state, as_root=True) |