X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=src%2Fnepi%2Fresources%2Flinux%2Fns3%2Fns3simulation.py;h=94029a1480a3da24dc4e5074e9051e18c4354a5d;hb=5fa6535b90a0f14e36b20be4af03f75e1485cfde;hp=0080846b3a59862bd64baf8d2d40f15e7d2f2928;hpb=d65870034ee507548249831729459ab5edf6da40;p=nepi.git diff --git a/src/nepi/resources/linux/ns3/ns3simulation.py b/src/nepi/resources/linux/ns3/ns3simulation.py index 0080846b..94029a14 100644 --- a/src/nepi/resources/linux/ns3/ns3simulation.py +++ b/src/nepi/resources/linux/ns3/ns3simulation.py @@ -275,7 +275,22 @@ class LinuxNS3Simulation(LinuxApplication, NS3Simulation): if self.get("populateRoutingTables") == True: self.invoke(IPV4_GLOBAL_ROUTING_HELPER_UUID, "PopulateRoutingTables") - self._client.start() + self._client.start() + + # Wait until the Simulation starts... + is_running = False + for i in xrange(100): + is_running = self.invoke(SIMULATOR_UUID, "isRunning") + + if is_running: + break + else: + time.sleep(1) + else: + if not is_running: + msg = " Simulation did not start" + self.error(msg) + raise RuntimeError self.set_started() else: @@ -408,7 +423,6 @@ class LinuxNS3Simulation(LinuxApplication, NS3Simulation): 'dce_repo': self.dce_repo } - return ( # NS3 installation "( "