| peusterm | 5831076 | 2016-01-12 17:09:20 +0100 | [diff] [blame] | 1 | #!/usr/bin/python |
| 2 | """ |
| 3 | Simple CLI client to interact with a running emulator. |
| 4 | |
| peusterm | 2ec74e1 | 2016-01-13 11:17:53 +0100 | [diff] [blame] | 5 | (c) 2016 by Manuel Peuster <manuel.peuster@upb.de> |
| 6 | |
| peusterm | 5831076 | 2016-01-12 17:09:20 +0100 | [diff] [blame] | 7 | The CLI offers different tools, e.g., compute, network, ... |
| 8 | Each of these tools is implemented as an independent Python |
| 9 | module. |
| 10 | |
| 11 | cli compute start dc1 my_name flavor_a |
| 12 | cli network create dc1 11.0.0.0/24 |
| 13 | """ |
| 14 | |
| 15 | import sys |
| cgeoffroy | 9524ad3 | 2016-03-03 18:24:15 +0100 | [diff] [blame] | 16 | from emuvim.cli import compute |
| 17 | from emuvim.cli import network |
| 18 | from emuvim.cli import datacenter |
| 19 | from emuvim.cli import monitor |
| peusterm | 5831076 | 2016-01-12 17:09:20 +0100 | [diff] [blame] | 20 | |
| 21 | def main(): |
| 22 | if len(sys.argv) < 2: |
| 23 | print "Usage: son-emu-cli <toolname> <arguments>" |
| 24 | exit(0) |
| 25 | if sys.argv[1] == "compute": |
| 26 | compute.main(sys.argv[2:]) |
| 27 | elif sys.argv[1] == "network": |
| 28 | network.main(sys.argv[2:]) |
| peusterm | d313dc1 | 2016-02-04 15:36:02 +0100 | [diff] [blame] | 29 | elif sys.argv[1] == "datacenter": |
| 30 | datacenter.main(sys.argv[2:]) |
| stevenvanrossem | 8fbf978 | 2016-02-17 11:40:23 +0100 | [diff] [blame] | 31 | elif sys.argv[1] == "monitor": |
| stevenvanrossem | c5a536a | 2016-02-16 14:52:39 +0100 | [diff] [blame] | 32 | monitor.main(sys.argv[2:]) |
| peusterm | 5831076 | 2016-01-12 17:09:20 +0100 | [diff] [blame] | 33 | |
| 34 | if __name__ == '__main__': |
| 35 | main() |