diff options
author | Yiting.Li <liyiting@huawei.com> | 2015-12-22 17:11:12 -0800 |
---|---|---|
committer | Yiting.Li <liyiting@huawei.com> | 2015-12-22 17:11:12 -0800 |
commit | 8f1101df131a4d3e03b377738507d88b745831c0 (patch) | |
tree | 73f140474fcec2a77c85a453f6946957ca0742d1 /vstf/vstf/agent/env/plugins/Readme | |
parent | 1a24ebbda3f95600c0e7d5ed8661317a8ff7e265 (diff) |
Upload the contribution of vstf as bottleneck network framework.
End to End Performance test
JIRA:BOTTLENECK-29
Change-Id: Ib2c553c8b60d6cda9e7a7b52b737c9139f706ebd
Signed-off-by: Yiting.Li <liyiting@huawei.com>
Diffstat (limited to 'vstf/vstf/agent/env/plugins/Readme')
-rwxr-xr-x | vstf/vstf/agent/env/plugins/Readme | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/vstf/vstf/agent/env/plugins/Readme b/vstf/vstf/agent/env/plugins/Readme new file mode 100755 index 00000000..a2879ba0 --- /dev/null +++ b/vstf/vstf/agent/env/plugins/Readme @@ -0,0 +1,49 @@ +All the plugins should subclass EnvBuilderPlugin from "model.py". + +The EnvBuilderPlugin is a template class with a template algorithm: + + def __init__(self, ): + pass + @abstractmethod + def clean(self): + #clean Environment before goes further. + @abstractmethod + def install(self): + #install network virtualization software from source code. + @abstractmethod + def load_drivers(self): + #loads drivers for network card. + @abstractmethod + def create_brs(self): + #creates virtual switches. + @abstractmethod + def config_br_ports(self): + #config the vlan property for vswitch ports. + def create_vms(self): + #create vms + def wait_vms(self): + #wait vm to boot up and config vm for ips and other configurations. + def check_vm_connectivity(self): + #check if the vms correctly setup the control panel ips. + def build(self, cfg_intent): + self.host_cfg = cfg_intent #please retrieve options from self.host_cfg for your use in other methods. + self.clean() + self.download_and_compile() + self.load_drivers() + self.create_brs() + self.create_vms() + self.wait_vms() + self.config_tap_vlans() + self.check_vm_connectivity() + +You should implements the abstract methods left empty, however you can make some methods do nothing to skip steps.. + +The plugin receives a "cfg_intent", The "cfg_intent" is a python dict parsed from a env-build configuration file. + +It contains the detail configurations for the plugin to build a "virtual network" for testing. + +There are some example json config files for building different type of "virtual network" under "etc/vstf/env" that you can refer to. + +Before you creates a new plugin, you should make sure you understand these json config file properly. + + |