[CVP] Refactor salt client class

Change-Id: I91cfffe1c8d5df0224657ce9e36be9063b56f0b3
Related-PROD: PROD-28981
Related-PROD: PROD-28729
Related-PROD: PROD-28624
Related-PROD: PROD-29286
diff --git a/test_set/cvp-sanity/tests/test_duplicate_ips.py b/test_set/cvp-sanity/tests/test_duplicate_ips.py
index afe1afe..3b55a26 100644
--- a/test_set/cvp-sanity/tests/test_duplicate_ips.py
+++ b/test_set/cvp-sanity/tests/test_duplicate_ips.py
@@ -1,4 +1,3 @@
-import pytest
 from collections import Counter
 from pprint import pformat
 import os
@@ -16,22 +15,24 @@
 
 
 def test_duplicate_ips(local_salt_client):
-    active_nodes = utils.get_active_nodes()
-
     testname = os.path.basename(__file__).split('.')[0]
     config = utils.get_configuration()
     skipped_ifaces = config.get(testname)["skipped_ifaces"]
 
-    local_salt_client.cmd('L@'+','.join(active_nodes),
-                          'saltutil.refresh_grains',
+    local_salt_client.cmd(tgt='*',
+                          fun='saltutil.refresh_grains',
                           expr_form='compound')
-    nodes = local_salt_client.cmd('L@'+','.join(active_nodes),
-                                  'grains.item',
-                                  ['ip4_interfaces'],
+    nodes = local_salt_client.cmd(tgt='*',
+                                  fun='grains.item',
+                                  param='ip4_interfaces',
                                   expr_form='compound')
 
     ipv4_list = []
     for node in nodes:
+        if isinstance(nodes[node], bool):
+            # TODO: do not skip node
+            print ("{} node is skipped".format(node))
+            continue
         for iface in nodes[node]['ip4_interfaces']:
             # Omit 'ip-less' ifaces
             if not nodes[node]['ip4_interfaces'][iface]: