diff --git a/cfg_checker/nodes.py b/cfg_checker/nodes.py
index 615a1a4..e6943a6 100644
--- a/cfg_checker/nodes.py
+++ b/cfg_checker/nodes.py
@@ -600,13 +600,17 @@
         # OpenStack versions
         self.mcp_release = ""
         # Quick and Dirty way to detect OS release
-        _nova_version = self.kube.exec_on_target_pod(
-            "nova-manage --version",
-            "nova-api-osapi",
-            "openstack"
-        )
-        _nmajor = _nova_version.partition('.')[0]
-        self.openstack_release = nova_openstack_versions[_nmajor]
+        try:
+            _nova_version = self.kube.exec_on_target_pod(
+                "nova-manage --version",
+                "nova-api-osapi",
+                "openstack"
+            )
+            _nmajor = _nova_version.partition('.')[0]
+            self.openstack_release = nova_openstack_versions[_nmajor]
+        except KubeException as e:
+            logger_cli.warn("Openstack not detected: {}".format(e.message))
+            self.openstack_release = nova_openstack_versions["00"]
 
         return
 
@@ -667,7 +671,7 @@
     def execute_script_on_node(self, node, script_filename, args=[]):
         # Prepare path
         _target_path = os.path.join(
-            self.env_config.node_homepath,
+            self.env_config.kube_node_homepath,
             self.env_config.kube_scripts_folder,
             script_filename
         )
@@ -747,7 +751,7 @@
             _sh.do("apt install python3", sudo=True)
         # check if script already there
         _folder = os.path.join(
-            self.env_config.node_homepath,
+            self.env_config.kube_node_homepath,
             _conf.kube_scripts_folder
         )
         # check if folder exists
@@ -789,7 +793,7 @@
         # Prepare script
         _source_path = os.path.join(pkg_dir, 'scripts', script_filename)
         _target_path = os.path.join(
-            self.env_config.node_homepath,
+            self.env_config.kube_node_homepath,
             self.env_config.kube_scripts_folder,
             script_filename
         )
@@ -852,12 +856,12 @@
 
         _source_path = create_temp_file_with_content(_dumps)
         _target_path = os.path.join(
-            self.env_config.node_homepath,
+            self.env_config.kube_node_homepath,
             self.env_config.kube_scripts_folder,
             filename
         )
         _folder = os.path.join(
-            self.env_config.node_homepath,
+            self.env_config.kube_node_homepath,
             self.env_config.kube_scripts_folder
         )
         _check = "echo $(if [[ -s '{}' ]]; then echo True; " \
