#!/usr/bin/env python # An example script using the rumba package from rumba.model import * # import testbed plugins import rumba.testbeds.emulab as emulab import rumba.testbeds.jfed as jfed import rumba.testbeds.faketestbed as fake import rumba.testbeds.qemu as qemu # import prototype plugins import rumba.prototypes.ouroboros as our import rumba.prototypes.rlite as rl import rumba.prototypes.irati as irati import rumba.log as log log.set_logging_level('DEBUG') n1 = NormalDIF("n1") n2 = NormalDIF("n2") n3 = NormalDIF("n3") n4 = NormalDIF("n4") e1 = ShimEthDIF("e1") e2 = ShimEthDIF("e2") e3 = ShimEthDIF("e3") a = Node("a", difs = [n3, n4, n1, e1], dif_registrations = {n4: [n1], n3: [n1], n1 : [e1]}) b = Node("b", difs = [n1, e1, e2], dif_registrations = {n1 : [e1, e2]}) c = Node("c", difs = [n3, n4, n1, n2, e2, e3], dif_registrations = {n4: [n1], n3: [n1, n2], n1 : [e2], n2: [e3]}) d = Node("d", difs = [n3, n2, e3], dif_registrations = {n3: [n2], n2 : [e3]}) tb = qemu.Testbed(exp_name = "twolayers", username = "root", password = "root") exp = irati.Experiment(tb, nodes = [a, b, c, d]) print(exp) try: exp.swap_in() exp.bootstrap_prototype() finally: exp.swap_out()