PlanetLab support toon-up: home_cleanup only nepi folders + make server support longe...
[nepi.git] / examples / omf-plexuslab-xeyes.py
1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
3
4 #
5 # Experiment Topology:
6 #
7 #  n1 --- n2
8 #  0.1   0.2 
9 #    
10
11 from nepi.core.design import ExperimentDescription, FactoriesProvider
12 from nepi.core.execute import ExperimentController
13 import getpass
14 import logging
15 import tempfile
16 import time
17
18 logging.basicConfig(level=logging.DEBUG)
19
20 root_dir = tempfile.mkdtemp()
21
22 exp_desc = ExperimentDescription()
23
24 testbed_id = "omf"
25 omf_provider = FactoriesProvider(testbed_id)
26 omf_desc = exp_desc.add_testbed_description(omf_provider)
27 omf_desc.set_attribute_value("homeDirectory", root_dir)
28 omf_desc.set_attribute_value("enableDebug", True)
29 omf_desc.set_attribute_value("xmppSlice", "default_slice")
30 omf_desc.set_attribute_value("xmppHost", "xmpp-plexus.onelab.eu")
31 omf_desc.set_attribute_value("xmppPort", 5222)
32 omf_desc.set_attribute_value("xmppPassword", "1234")
33
34 node1 = omf_desc.create("Node")
35 node1.set_attribute_value("hostname", "omf.plexus.wlab17")
36
37 app1 = omf_desc.create("OmfApplication")
38 app1.set_attribute_value("appId", "xeyes#1")
39 app1.set_attribute_value("path", "/usr/bin/xeyes")
40 app1.set_attribute_value("env", "DISPLAY=localhost:10.0 XAUTHORITY=/root/.Xauthority")
41 app1.connector("node").connect(node1.connector("apps"))
42
43 xml = exp_desc.to_xml()
44
45 controller = ExperimentController(xml, root_dir)
46 controller.start()
47
48 time.sleep(30)
49
50 controller.stop()
51 controller.shutdown()
52