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
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
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.
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(
dcmd=command,
datacenter=self,
flavor_name=flavor_name,
- cpu_period = cpu_period,
- cpu_quota = cpu_quota
+ environment = {'VNF_NAME':name},
+ **params
)