From 9a5fba234654e19ca2ca6d9ab7419b6810283281 Mon Sep 17 00:00:00 2001 From: Guido Trotter <ultrotter@google.com> Date: Thu, 16 Jul 2009 14:44:17 +0200 Subject: [PATCH] Add a few more checks to verify config - Check that the enabled hypervisors list is valid - Check that the master node is a valid node Signed-off-by: Guido Trotter <ultrotter@google.com> Reviewed-by: Iustin Pop <iustin@google.com> --- lib/config.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/lib/config.py b/lib/config.py index 4f7efacd7..58871d511 100644 --- a/lib/config.py +++ b/lib/config.py @@ -273,6 +273,20 @@ class ConfigWriter: data = self._config_data seen_lids = [] seen_pids = [] + + # global cluster checks + if not data.cluster.enabled_hypervisors: + result.append("enabled hypervisors list doesn't have any entries") + invalid_hvs = set(data.cluster.enabled_hypervisors) - constants.HYPER_TYPES + if invalid_hvs: + result.append("enabled hypervisors contains invalid entries: %s" % + invalid_hvs) + + if data.cluster.master_node not in data.nodes: + result.append("cluster has invalid primary node '%s'" % + data.cluster.master_node) + + # per-instance checks for instance_name in data.instances: instance = data.instances[instance_name] if instance.primary_node not in data.nodes: -- GitLab