diff options
author | blsaws <blsaws@hotmail.com> | 2015-11-10 14:17:22 -0800 |
---|---|---|
committer | blsaws <blsaws@hotmail.com> | 2015-11-10 14:31:51 -0800 |
commit | 51f1c01d34888b48694e3c4ea67f707706532310 (patch) | |
tree | 2ec8f1354b906431bc45ca2a1d76f544fc736442 /vnfmgr/vnfmgr_main.py | |
parent | dc75170d734debbe8a5de88cc71b52c3e53fd45e (diff) |
Correct structure
Add docs folder
Update HTML theme
Remove example docs
JIRA: SFC-3
Change-Id: If0158796aee5f020f3bb4403b8a67952f9e6bb26
Signed-off-by: blsaws <blsaws@hotmail.com>
Diffstat (limited to 'vnfmgr/vnfmgr_main.py')
-rwxr-xr-x | vnfmgr/vnfmgr_main.py | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/vnfmgr/vnfmgr_main.py b/vnfmgr/vnfmgr_main.py new file mode 100755 index 00000000..b5ab8be1 --- /dev/null +++ b/vnfmgr/vnfmgr_main.py @@ -0,0 +1,72 @@ +################################################################# +# # +# Copyright 2015 Ericsson AB # +# All Rights Reserved # +# # +# Author: Manuel Buil <Manuel.Buil@ericsson.com> # +# Version: 0.1 # +# # +################################################################# + +import pdb +from vnfmgr_os.vnfmgr_os import OpenStack_API +import vnfmgr_odl.vnfmgr_odl as odlscript +import time +import json + +if __name__ == "__main__": + #OpenStack environment information + authurl = "http://localhost:5000/v2.0" + adminTenantName = 'admin' + adminTenantUser = 'admin' + adminTenantPass = 'abc123' + tenantName = adminTenantName + tenantUser = adminTenantUser + tenantPass = adminTenantPass + + openstack = OpenStack_API(authurl, tenantName, tenantUser, tenantPass) + + # 1 - Get the SF type + # Provide the file with the SFC configuration + file_json = "vnfmgr_odl/sample_config/RestConf-SFCs-HttpPut.json" + # Read the config files which refer to SF + json_data=open(file_json).read() + data = json.loads(json_data) + pdb.set_trace() + + # Grab the SF type + chains = data['service-function-chains']['service-function-chain'] + for chain in chains: + SFs = chain['sfc-service-function'] + for SF in SFs: + sf_type = SF['type'] + name = SF['name'] + #2 - Search the image in glance with that SF type + image = openstack.find_image(sf_type) + if image == None: + print("There is no image with that sf_name") + exit(1) + # 3 - Boot the VM without network + flavor = 1 + print("About to deploy") + vm = openstack.create_vm(name,image,flavor) + if vm == None: + print("Problems to deploy the VM") + exit(1) + + #Make the call to ODL to deploy SFC + context = odlscript.Context() + context.set_path_prefix_paths("vnfmgr_odl/sample_config") + pdb.set_trace() + odlscript.send_rest(context, "PUT", context.rest_url_sf_sel, context.rest_path_sf_sel) + odlscript.send_rest(context, "PUT", context.rest_url_sf, context.rest_path_sf) + odlscript.send_rest(context, "PUT", context.rest_url_sff, context.rest_path_sff) + odlscript.send_rest(context, "PUT", context.rest_url_sfc, context.rest_path_sfc) + odlscript.send_rest(context, "PUT", context.rest_url_sfp, context.rest_path_sfp) + time.sleep(1); + odlscript.send_rest(context, "POST", context.rest_url_rsp_rpc, context.rest_path_rsp) + + + #TO DO + # Check if the SF_VM already exists before creating it + # Network of the VM |