X-Git-Url: https://gerrit.akraino.org/r/gitweb?p=ta%2Fconfig-manager.git;a=blobdiff_plain;f=cmdatahandlers%2Fsrc%2Fcmdatahandlers%2Fhosts%2Fconfig.py;h=7547dbe194ec542a38b2ed81d8d0453b09f5a129;hp=1bd37d89c74420d4c9be2897cfab59afe447b0ff;hb=87d5aa1e6151010af819612a0a953ee90431607e;hpb=50946f85336ce917e6004e533a5f6aefee2c5474 diff --git a/cmdatahandlers/src/cmdatahandlers/hosts/config.py b/cmdatahandlers/src/cmdatahandlers/hosts/config.py index 1bd37d8..7547dbe 100644 --- a/cmdatahandlers/src/cmdatahandlers/hosts/config.py +++ b/cmdatahandlers/src/cmdatahandlers/hosts/config.py @@ -168,18 +168,19 @@ class Config(config.Config): 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() @@ -196,6 +197,11 @@ class Config(config.Config): 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) @@ -234,6 +240,16 @@ class Config(config.Config): 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