return sorted(self.config[self.ROOT].keys())
def get_labels(self, hostname):
- noderole_label = "node-role.kubernetes.io/{}".format(self.get_noderole(hostname))
mandatory_labels = \
{"nodetype": self.get_nodetype(hostname),
"nodeindex": self.get_nodeindex(hostname),
- "nodename": self.get_nodename(hostname),
- noderole_label: ""}
+ "nodename": self.get_nodename(hostname)}
labels = self.config[self.ROOT][hostname].get('labels', {}).copy()
labels.update(mandatory_labels)
if self.is_sriov_enabled(hostname):
labels.update({"sriov": "enabled"})
+ if self.is_localstorage_used(hostname):
+ labels.update({"localstorage": "enabled"})
+
black_list = ['name']
return {name: attributes
for name, attributes in labels.iteritems()
return service_profiles[0]
+ def set_noderole(self):
+ hosts = self.get_hosts()
+ for host in hosts:
+ self.config[self.ROOT][host]['noderole'] = self.get_noderole(host)
+
def set_nodeindex(self):
hostsconf = self.confman.get_hosts_config_handler()
install_host = utils.get_installation_host_name(hostsconf)
return True
return False
+ def is_localstorage_used(self, hostname):
+ storageprofs = self.get_storage_profiles(hostname)
+ storageprofconf = self.confman.get_storage_profiles_config_handler()
+ for profile in storageprofs:
+ if "shared" in self.config[storageprofconf.ROOT][profile]:
+ for volume in self.config[storageprofconf.ROOT][profile]["shared"]["volumes"]:
+ if volume["name"] == 'caas_app':
+ return True
+ return False
+
def get_enabled_hosts(self):
""" get the list of enabled hosts in the cloud
caasconf = self.confman.get_caas_config_handler()
if caasconf.is_vnf_embedded_deployment():
return VNF_EMBEDDED_RESERVED_MEMORY
-
+
profiles = self.get_service_profiles(hostname)
if 'controller' in profiles:
return DUAL_VIM_CONTROLLER_RESERVED_MEMORY
if 'compute' in profiles:
return DUAL_VIM_DEFAULT_RESERVED_MEMORY
- return self.config.get(self.ROOT, {}).get('middleware_reserved_memory',
+ return self.config.get(self.ROOT, {}).get('middleware_reserved_memory',
MIDDLEWARE_RESERVED_MEMORY)
def set_default_reserved_memory_to_all_hosts(self, def_memory):
for host in self.get_hosts():
self.config[self.ROOT][host]['middleware_reserved_memory'] = def_memory
+ def set_default_ipmi_priv_level_to_all_hosts(self, def_priv):
+ for host in self.get_hosts():
+ if 'hwmgmt' not in self.config[self.ROOT][host]:
+ self.config[self.ROOT][host]['hwmgmt'] = {'priv_level': def_priv}
+ elif 'priv_level' not in self.config[self.ROOT][host]['hwmgmt']:
+ self.config[self.ROOT][host]['hwmgmt']['priv_level'] = def_priv
+
def _get_path_for_virtio_id(disk):
disk_id = disk.get('id', '')