Added example SONATA package to test fake gatekeeper (used as long as there is no...
[osm/vim-emu.git] / src / emuvim / api / sonata / dummygatekeeper.py
index c69fd9a..48a167d 100644 (file)
@@ -125,7 +125,7 @@ class Service(object):
         # iterate over all deployment units within each VNFDs
         for u in vnfd.get("virtual_deployment_units"):
             # 1. get the name of the docker image to start and the assigned DC
-            docker_name = vnfd.get("vnf_name")
+            docker_name = vnfd.get("name")
             target_dc = vnfd.get("dc")
             # 2. perform some checks to ensure we can start the container
             assert(docker_name is not None)
@@ -164,7 +164,7 @@ class Service(object):
                 self.package_content_path,
                 make_relative_path(self.manifest.get("entry_service_template")))
             self.nsd = load_yaml(nsd_path)
-            LOG.debug("Loaded NSD: %r" % self.nsd.get("ns_name"))
+            LOG.debug("Loaded NSD: %r" % self.nsd.get("name"))
 
     def _load_vnfd(self):
         """
@@ -178,8 +178,8 @@ class Service(object):
                         self.package_content_path,
                         make_relative_path(pc.get("name")))
                     vnfd = load_yaml(vnfd_path)
-                    self.vnfds[vnfd.get("vnf_name")] = vnfd
-                    LOG.debug("Loaded VNFD: %r" % vnfd.get("vnf_name"))
+                    self.vnfds[vnfd.get("name")] = vnfd
+                    LOG.debug("Loaded VNFD: %r" % vnfd.get("name"))
 
     def _load_docker_files(self):
         """
@@ -272,7 +272,13 @@ class Packages(fr.Resource):
         try:
             # get file contents
             print(request.files)
-            son_file = request.files['file']
+            # lets search for the package in the request
+            if "package" in request.files:
+                son_file = request.files["package"]
+            # elif "file" in request.files:
+            #     son_file = request.files["file"]
+            else:
+                return {"service_uuid": None, "size": 0, "sha1": None, "error": "upload failed. file not found."}, 500
             # generate a uuid to reference this package
             service_uuid = str(uuid.uuid4())
             file_hash = hashlib.sha1(str(son_file)).hexdigest()
@@ -289,7 +295,7 @@ class Packages(fr.Resource):
             return {"service_uuid": service_uuid, "size": size, "sha1": file_hash, "error": None}
         except Exception as ex:
             LOG.exception("Service package upload failed:")
-            return {"service_uuid": None, "size": 0, "sha1": None, "error": "upload failed"}
+            return {"service_uuid": None, "size": 0, "sha1": None, "error": "upload failed"}, 500
 
     def get(self):
         """
@@ -338,8 +344,8 @@ app = Flask(__name__)
 app.config['MAX_CONTENT_LENGTH'] = 512 * 1024 * 1024  # 512 MB max upload
 api = fr.Api(app)
 # define endpoints
-api.add_resource(Packages, '/api/packages')
-api.add_resource(Instantiations, '/api/instantiations')
+api.add_resource(Packages, '/packages')
+api.add_resource(Instantiations, '/instantiations')
 
 
 def start_rest_api(host, port, datacenters=dict()):