Merge branch 'master' into master
[osm/vim-emu.git] / src / emuvim / dcemulator / node.py
index 8e7a63a..2702bf5 100755 (executable)
@@ -90,6 +90,7 @@ class EmulatorCompute(Docker):
         status["memswap_limit"] = self.memswap_limit
         status["state"] = self.dcli.inspect_container(self.dc)["State"]
         status["id"] = self.dcli.inspect_container(self.dc)["Id"]
+        status["short_id"] = self.dcli.inspect_container(self.dc)["Id"][:12]
         status["datacenter"] = (None if self.datacenter is None
                                 else self.datacenter.label)
         return status
@@ -112,7 +113,7 @@ class Datacenter(object):
         self.name = "dc%d" % Datacenter.DC_COUNTER
         Datacenter.DC_COUNTER += 1
         # use this for user defined names that can be longer than self.name
-        self.label = label  
+        self.label = label
         # dict to store arbitrary metadata (e.g. latitude and longitude)
         self.metadata = metadata
         # path to which resource information should be logged (e.g. for experiments). None = no logging
@@ -147,7 +148,7 @@ class Datacenter(object):
     def start(self):
         pass
 
-    def startCompute(self, name, image=None, command=None, network=None, flavor_name="tiny", **kwargs):
+    def startCompute(self, name, image=None, command=None, network=None, flavor_name="tiny", **params):
         """
         Create a new container as compute resource and connect it to this
         data center.
@@ -174,13 +175,10 @@ class Datacenter(object):
                 network.append({})
 
         # apply hard-set resource limits=0
-        cpu_percentage = kwargs.get('cpu_percent')
+        cpu_percentage = params.get('cpu_percent')
         if cpu_percentage:
-            cpu_period = self.net.cpu_period
-            cpu_quota = self.net.cpu_period * float(cpu_percentage)
-        else:
-            cpu_quota = None
-            cpu_period = None
+            params['cpu_period'] = self.net.cpu_period
+            params['cpu_quota'] = self.net.cpu_period * float(cpu_percentage)
 
         # create the container
         d = self.net.addDocker(
@@ -189,8 +187,8 @@ class Datacenter(object):
             dcmd=command,
             datacenter=self,
             flavor_name=flavor_name,
-            cpu_period = cpu_period,
-            cpu_quota = cpu_quota
+            environment = {'VNF_NAME':name},
+            **params
         )