[PATCH 0 of 1] [TEST] Don't send commands via ssh for localhost

Alright, this patch has been around for a while and I think the results are very similar to the version which sends all commands via ssh, except for the performance boost. I am now sending the patch for appreciation and requesting some feedback, especially if there is any specific test that was working but is now broke because of this patch. If possible, run the full cimtest suite first in a pristine checkout and save the run_report.txt file with a different name. After that, apply the patch to the tree and run the suite again. Reply to this email attaching both files so we can analyse the results. Best regards, Etrunko -- Eduardo de Barros Lima Software Engineer, Open Virtualization Linux Technology Center - IBM/Brazil eblima@br.ibm.com

# HG changeset patch # User Eduardo Lima (Etrunko) <eblima@br.ibm.com> # Date 1306519808 10800 # Node ID fcce3eb554659cd76e020f3cb852c352e6a02218 # Parent 6397c0670c35acc78ac13d737b408bb90e30632e [TEST] Don't send commands via ssh for localhost Also changes python strings format in many other files. Some commands required double quotes to work properly when executed locally. Signed-off-by: Eduardo Lima (Etrunko) <eblima@br.ibm.com> diff --git a/lib/VirtLib/live.py b/lib/VirtLib/live.py --- a/lib/VirtLib/live.py +++ b/lib/VirtLib/live.py @@ -30,7 +30,7 @@ """Return a list of the available bridges in the running dom0. """ - cmd = "brctl show | grep -v 'bridge name' | awk '/^[^\t]/ { print \$1 }'" + cmd = 'brctl show | grep -v "bridge name" | awk "/^[^\\t]/ { print \$1 }"' rc, out = utils.run_remote(ip, cmd) if rc != 0: @@ -39,8 +39,8 @@ return out.splitlines() def exclude_vir_bridge(ip): - cmd = "brctl show | grep -v 'bridge name' | grep -v vir | \ - grep -v vif | awk '/^[^\t]/ { print \$1 }'" + cmd = 'brctl show | grep -v "bridge name" | grep -v vir | \ + grep -v vif | awk "/^[^\\t]/ { print \$1 }"' rc, out = utils.run_remote(ip, cmd) if rc != 0: return [] @@ -51,7 +51,7 @@ """Return a list of the available virtual bridges in the running dom0. """ - cmd = "brctl show | grep -v 'bridge name' | grep -v peth | awk '/^[^\t]/ { print \$1 }'" + cmd = 'brctl show | grep -v "bridge name" | grep -v peth | awk "/^[^\\t]/ { print \$1 }"' rc, out = utils.run_remote(ip, cmd) if rc != 0: @@ -78,14 +78,14 @@ """ xm_ret, mfm = utils.run_remote(server, - "xm info | awk -F ': ' '/max_free_memory/ {print \$2}'") + 'xm info | awk -F ": " "/max_free_memory/ {print \$2}"') if xm_ret != 0: return None return int(mfm) def fv_cap(server): - cmd = "egrep flags /proc/cpuinfo | uniq | egrep 'vmx|svm'" + cmd = 'egrep flags /proc/cpuinfo | uniq | egrep "vmx|svm"' ret, out = utils.run_remote(server, cmd) return ret == 0 diff --git a/lib/VirtLib/utils.py b/lib/VirtLib/utils.py --- a/lib/VirtLib/utils.py +++ b/lib/VirtLib/utils.py @@ -31,15 +31,24 @@ SSH_KEY = os.path.join(root_dot_ssh, 'id_rsa') AUTHED_KEYS = os.path.join(root_dot_ssh, 'authorized_keys') +localhost = ["0.0.0.0", "127.0.0.1", "localhost"] + def run_remote(ip, cmd): - cmd = 'ssh %s -i %s root@%s "%s"' % (SSH_PARMS, SSH_KEY, ip, cmd) + if ip not in localhost: + cmd = "ssh %s -i %s root@%s '%s'" % (SSH_PARMS, SSH_KEY, ip, cmd) return commands.getstatusoutput(cmd) def copy_remote(ip, local, remote='/tmp'): - cmd = 'scp -r %s -i %s %s root@%s:%s' % (SSH_PARMS, - SSH_KEY, local, ip, remote) + if ip not in localhost: + cmd = 'scp -r %s -i %s %s root@%s:%s' % (SSH_PARMS, + SSH_KEY, local, ip, remote) + else: + if local == remote: + return (0, "") + cmd = 'cp -r %s %s' % (local, remote) + return commands.getstatusoutput(cmd) def setup_ssh_key(): diff --git a/suites/libvirt-cim/lib/XenKvmLib/common_util.py b/suites/libvirt-cim/lib/XenKvmLib/common_util.py --- a/suites/libvirt-cim/lib/XenKvmLib/common_util.py +++ b/suites/libvirt-cim/lib/XenKvmLib/common_util.py @@ -243,7 +243,7 @@ rc, out = utils.run_remote(ip, cmd) if rc == 0 : - cmd = "%s | awk '{ print \$8 }' | uniq" % cmd + cmd = '%s | awk "{ print \$8 }" | uniq' % cmd rc, out = utils.run_remote(ip, cmd) return rc, out @@ -252,7 +252,7 @@ cmd = "virsh -c %s list --all 2>/dev/null" % virt2uri(virt) ret, out = utils.run_remote(ip, cmd) if ret != 0: - return "This libvirt install does not support %s" % virt + return "The libvirt install on '%s' does not support %s" % (ip, virt) cmd = "virsh -c %s version 2>/dev/null" % virt2uri(virt) ret, out = utils.run_remote(ip, cmd) @@ -491,7 +491,7 @@ def get_nfs_bin(server): - cmd = "cat /etc/issue | grep -v ^$ | egrep 'Red Hat|Fedora'" + cmd = 'cat /etc/issue | grep -v ^$ | egrep "Red Hat|Fedora"' rc, out = utils.run_remote(server, cmd) if rc != 0: #SLES diff --git a/suites/libvirt-cim/lib/XenKvmLib/const.py b/suites/libvirt-cim/lib/XenKvmLib/const.py --- a/suites/libvirt-cim/lib/XenKvmLib/const.py +++ b/suites/libvirt-cim/lib/XenKvmLib/const.py @@ -166,7 +166,7 @@ # This is a sloppy mechanism for detecting a distro defined revision value distro = None - cmd = "cat /etc/issue | grep 'SUSE Linux Enterprise Server 11'" + cmd = 'cat /etc/issue | grep "SUSE Linux Enterprise Server 11"' rc, out = run_remote(ip, cmd) if rc == 0: distro = "sles11" diff --git a/suites/libvirt-cim/lib/XenKvmLib/pool.py b/suites/libvirt-cim/lib/XenKvmLib/pool.py --- a/suites/libvirt-cim/lib/XenKvmLib/pool.py +++ b/suites/libvirt-cim/lib/XenKvmLib/pool.py @@ -107,7 +107,7 @@ def enum_volumes(virt, server, pooln=default_pool_name): volume = 0 - cmd = "virsh -c %s vol-list %s 2>/dev/null | sed -e '1,2 d' -e '$ d'" % \ + cmd = 'virsh -c %s vol-list %s 2>/dev/null | sed -e "1,2 d" -e "$ d"' % \ (virt2uri(virt), pooln) ret, out = run_remote(server ,cmd) if ret != 0: diff --git a/suites/libvirt-cim/lib/XenKvmLib/reporting.py b/suites/libvirt-cim/lib/XenKvmLib/reporting.py --- a/suites/libvirt-cim/lib/XenKvmLib/reporting.py +++ b/suites/libvirt-cim/lib/XenKvmLib/reporting.py @@ -87,7 +87,7 @@ def get_env_data(ip, virt): - distro = get_cmd_val("cat /etc/issue | sed '/^$/d' | awk 'NR<=1'", ip) + distro = get_cmd_val('cat /etc/issue | sed "/^$/d" | awk "NR<=1"', ip) if 'SUSE' in distro: distro = (distro.split('-'))[0].split('to')[1] diff --git a/suites/libvirt-cim/lib/XenKvmLib/test_doms.py b/suites/libvirt-cim/lib/XenKvmLib/test_doms.py --- a/suites/libvirt-cim/lib/XenKvmLib/test_doms.py +++ b/suites/libvirt-cim/lib/XenKvmLib/test_doms.py @@ -67,7 +67,7 @@ def virdomid_list(server, virt="Xen"): """Get a list of domid from virsh""" - cmd = "virsh -c %s list 2>/dev/null | sed '1,2 d; /^$/d'" % \ + cmd = 'virsh -c %s list 2>/dev/null | sed "1,2 d; /^$/d"' % \ virt2uri(virt) ret, out = utils.run_remote(server, cmd) if ret != 0: @@ -108,7 +108,7 @@ def viruuid(name, server, virt="Xen"): """Return domain uuid given domid or domname""" - cmd = "virsh -c %s domuuid %s 2>/dev/null | sed '/^$/d'" % \ + cmd = 'virsh -c %s domuuid %s 2>/dev/null | sed "/^$/d"' % \ (virt2uri(virt), name) ret, out = utils.run_remote(server, cmd) if ret == 0: @@ -119,7 +119,7 @@ def destroy_and_undefine_domain(name, server, virt="Xen"): """Destroy and undefine a domain. name could be domid or domname""" - cmd = "virsh -c %s 'destroy %s ; undefine %s' 2>/dev/null" % \ + cmd = 'virsh -c %s "destroy %s ; undefine %s" 2>/dev/null' % \ (virt2uri(virt), name, name) utils.run_remote(server, cmd) @@ -164,7 +164,7 @@ """ Get the vcpu lists. The input is either the domid or domname. """ - cmd = "virsh -c %s vcpuinfo %s 2>/dev/null | grep '^$' | wc -l" % \ + cmd = 'virsh -c %s vcpuinfo %s 2>/dev/null | grep "^$" | wc -l' % \ (virt2uri(virt), name_id) ret, out = utils.run_remote(server, cmd) diff --git a/suites/libvirt-cim/lib/XenKvmLib/xm_virt_util.py b/suites/libvirt-cim/lib/XenKvmLib/xm_virt_util.py --- a/suites/libvirt-cim/lib/XenKvmLib/xm_virt_util.py +++ b/suites/libvirt-cim/lib/XenKvmLib/xm_virt_util.py @@ -50,7 +50,7 @@ specified bridge. """ - cmd = "brctl show %s | grep 'vif' | grep -v vif0.*" % bridge + cmd = 'brctl show %s | grep "vif" | grep -v vif0.*' % bridge rc, out = utils.run_remote(ip, cmd) if rc != 0: @@ -71,7 +71,7 @@ """Returns the list of disk of the specified VS """ - guest_cmd = "cat /proc/partitions | awk '/^ /{ print $4 } ' " + guest_cmd = 'cat /proc/partitions | awk "/^ /{ print $4 } " ' rc, out = run_remote_guest(ip, vs_name, guest_cmd) if rc != 0: @@ -86,7 +86,7 @@ """ xm_ret, mfm = utils.run_remote(server, - "xm info | awk -F ': ' '/max_free_memory/ {print \$2}'") + 'xm info | awk -F ": " "/max_free_memory/ {print \$2}"') if xm_ret != 0: return None @@ -108,7 +108,7 @@ if virt == "XenFV": virt = "Xen" - cmd = "virsh -c %s list --all 2>/dev/null | sed -e '1,2 d' -e '$ d'" % \ + cmd = 'virsh -c %s list --all 2>/dev/null | sed -e "1,2 d" -e "$ d"' % \ virt2uri(virt) ret, out = utils.run_remote(server, cmd) @@ -128,7 +128,7 @@ if virt == "XenFV": virt = "Xen" - cmd = "virsh -c %s list 2>/dev/null | sed -e '1,2 d' -e '$ d'" % \ + cmd = 'virsh -c %s list 2>/dev/null | sed -e "1,2 d" -e "$ d"' % \ virt2uri(virt) ret, out = utils.run_remote(server, cmd) @@ -162,7 +162,7 @@ if fv_cap(server) and gtype == 1: bootloader = "/usr/lib/xen/boot/hvmloader" else: - cmd = "cat /etc/issue | grep -v ^$ | egrep 'Red Hat|Fedora'" + cmd = 'cat /etc/issue | grep -v ^$ | egrep "Red Hat|Fedora"' ret, out = utils.run_remote(server,cmd) if ret != 0: # For SLES @@ -175,7 +175,7 @@ def net_list(server, virt="Xen"): """Function to list active network""" names = [] - cmd = "virsh -c %s net-list 2>/dev/null | sed -e '1,2 d' -e '$ d'" % \ + cmd = 'virsh -c %s net-list 2>/dev/null | sed -e "1,2 d" -e "$ d"' % \ virt2uri(virt) ret, out = utils.run_remote(server, cmd) @@ -192,8 +192,8 @@ def get_bridge_from_network_xml(network, server, virt="Xen"): """Function returns bridge name for a given virtual network""" - cmd = "virsh -c %s net-dumpxml %s 2>/dev/null | \ - awk '/bridge name/ { print $2 }'" % (virt2uri(virt), network) + cmd = 'virsh -c %s net-dumpxml %s 2>/dev/null | \ + awk "/bridge name/ { print $2 }"' % (virt2uri(virt), network) ret, out = utils.run_remote(server, cmd) if ret != 0: @@ -233,7 +233,7 @@ def diskpool_list(server, virt="KVM"): """Function to list active DiskPool list""" names = [] - cmd = "virsh -c %s pool-list 2>/dev/null | sed -e '1,2 d' -e '$ d'" % \ + cmd = 'virsh -c %s pool-list 2>/dev/null | sed -e "1,2 d" -e "$ d"' % \ virt2uri(virt) ret, out = utils.run_remote(server, cmd) @@ -251,7 +251,7 @@ def vol_list(server, virt="KVM", pool_name=None): """ Function to list the volumes of a pool""" - cmd = "virsh -c %s vol-list %s 2>/dev/null | sed -e '1,2 d' -e '$ d'" \ + cmd = 'virsh -c %s vol-list %s 2>/dev/null | sed -e "1,2 d" -e "$ d"' \ % (virt2uri(virt), pool_name) ret, out = utils.run_remote(server, cmd) if ret != 0: @@ -283,14 +283,14 @@ cmd = "virsh -c %s version 2>/dev/null" %virt2uri(virt) ret, out = utils.run_remote(server, cmd) if ret == 0: - cmd = "virsh -c %s version 2>/dev/null | grep ^Running | \ - cut -d ' ' -f 3,4" % virt2uri(virt) + cmd = 'virsh -c %s version 2>/dev/null | grep ^Running | \ + cut -d " " -f 3,4' % virt2uri(virt) # This is a workaround work for F10. # The version option does not seem to work on F10. if ret != 0 and virt == 'KVM': - cmd = "qemu-kvm --help | grep -i version | tr -s [:space:] |" \ - " cut -d ' ' -f 1,5" + cmd = 'qemu-kvm --help | grep -i version | tr -s [:space:] |' \ + ' cut -d " " -f 1,5' ret, out = utils.run_remote(server, cmd) if ret == 0: @@ -362,7 +362,7 @@ """Returns the number of processors of the specified VS """ - guest_cmd = "grep '^$' /proc/cpuinfo | wc -l" + guest_cmd = 'grep "^$" /proc/cpuinfo | wc -l' rc, out = run_remote_guest(ip, vs_name, guest_cmd) if rc != 0:

Awesome. +1. Pushed. On 06/30/2011 12:04 PM, Eduardo Lima (Etrunko) wrote:
# HG changeset patch # User Eduardo Lima (Etrunko)<eblima@br.ibm.com> # Date 1306519808 10800 # Node ID fcce3eb554659cd76e020f3cb852c352e6a02218 # Parent 6397c0670c35acc78ac13d737b408bb90e30632e [TEST] Don't send commands via ssh for localhost
Also changes python strings format in many other files. Some commands required double quotes to work properly when executed locally.
Signed-off-by: Eduardo Lima (Etrunko)<eblima@br.ibm.com>
diff --git a/lib/VirtLib/live.py b/lib/VirtLib/live.py --- a/lib/VirtLib/live.py +++ b/lib/VirtLib/live.py @@ -30,7 +30,7 @@ """Return a list of the available bridges in the running dom0. """
- cmd = "brctl show | grep -v 'bridge name' | awk '/^[^\t]/ { print \$1 }'" + cmd = 'brctl show | grep -v "bridge name" | awk "/^[^\\t]/ { print \$1 }"'
rc, out = utils.run_remote(ip, cmd) if rc != 0: @@ -39,8 +39,8 @@ return out.splitlines()
def exclude_vir_bridge(ip): - cmd = "brctl show | grep -v 'bridge name' | grep -v vir | \ - grep -v vif | awk '/^[^\t]/ { print \$1 }'" + cmd = 'brctl show | grep -v "bridge name" | grep -v vir | \ + grep -v vif | awk "/^[^\\t]/ { print \$1 }"' rc, out = utils.run_remote(ip, cmd) if rc != 0: return [] @@ -51,7 +51,7 @@ """Return a list of the available virtual bridges in the running dom0. """
- cmd = "brctl show | grep -v 'bridge name' | grep -v peth | awk '/^[^\t]/ { print \$1 }'" + cmd = 'brctl show | grep -v "bridge name" | grep -v peth | awk "/^[^\\t]/ { print \$1 }"'
rc, out = utils.run_remote(ip, cmd) if rc != 0: @@ -78,14 +78,14 @@ """
xm_ret, mfm = utils.run_remote(server, - "xm info | awk -F ': ' '/max_free_memory/ {print \$2}'") + 'xm info | awk -F ": " "/max_free_memory/ {print \$2}"') if xm_ret != 0: return None
return int(mfm)
def fv_cap(server): - cmd = "egrep flags /proc/cpuinfo | uniq | egrep 'vmx|svm'" + cmd = 'egrep flags /proc/cpuinfo | uniq | egrep "vmx|svm"' ret, out = utils.run_remote(server, cmd) return ret == 0
diff --git a/lib/VirtLib/utils.py b/lib/VirtLib/utils.py --- a/lib/VirtLib/utils.py +++ b/lib/VirtLib/utils.py @@ -31,15 +31,24 @@ SSH_KEY = os.path.join(root_dot_ssh, 'id_rsa') AUTHED_KEYS = os.path.join(root_dot_ssh, 'authorized_keys')
+localhost = ["0.0.0.0", "127.0.0.1", "localhost"] + def run_remote(ip, cmd):
- cmd = 'ssh %s -i %s root@%s "%s"' % (SSH_PARMS, SSH_KEY, ip, cmd) + if ip not in localhost: + cmd = "ssh %s -i %s root@%s '%s'" % (SSH_PARMS, SSH_KEY, ip, cmd) return commands.getstatusoutput(cmd)
def copy_remote(ip, local, remote='/tmp'):
- cmd = 'scp -r %s -i %s %s root@%s:%s' % (SSH_PARMS, - SSH_KEY, local, ip, remote) + if ip not in localhost: + cmd = 'scp -r %s -i %s %s root@%s:%s' % (SSH_PARMS, + SSH_KEY, local, ip, remote) + else: + if local == remote: + return (0, "") + cmd = 'cp -r %s %s' % (local, remote) + return commands.getstatusoutput(cmd)
def setup_ssh_key(): diff --git a/suites/libvirt-cim/lib/XenKvmLib/common_util.py b/suites/libvirt-cim/lib/XenKvmLib/common_util.py --- a/suites/libvirt-cim/lib/XenKvmLib/common_util.py +++ b/suites/libvirt-cim/lib/XenKvmLib/common_util.py @@ -243,7 +243,7 @@ rc, out = utils.run_remote(ip, cmd)
if rc == 0 : - cmd = "%s | awk '{ print \$8 }' | uniq" % cmd + cmd = '%s | awk "{ print \$8 }" | uniq' % cmd rc, out = utils.run_remote(ip, cmd)
return rc, out @@ -252,7 +252,7 @@ cmd = "virsh -c %s list --all 2>/dev/null" % virt2uri(virt) ret, out = utils.run_remote(ip, cmd) if ret != 0: - return "This libvirt install does not support %s" % virt + return "The libvirt install on '%s' does not support %s" % (ip, virt)
cmd = "virsh -c %s version 2>/dev/null" % virt2uri(virt) ret, out = utils.run_remote(ip, cmd) @@ -491,7 +491,7 @@
def get_nfs_bin(server): - cmd = "cat /etc/issue | grep -v ^$ | egrep 'Red Hat|Fedora'" + cmd = 'cat /etc/issue | grep -v ^$ | egrep "Red Hat|Fedora"' rc, out = utils.run_remote(server, cmd) if rc != 0: #SLES diff --git a/suites/libvirt-cim/lib/XenKvmLib/const.py b/suites/libvirt-cim/lib/XenKvmLib/const.py --- a/suites/libvirt-cim/lib/XenKvmLib/const.py +++ b/suites/libvirt-cim/lib/XenKvmLib/const.py @@ -166,7 +166,7 @@ # This is a sloppy mechanism for detecting a distro defined revision value distro = None
- cmd = "cat /etc/issue | grep 'SUSE Linux Enterprise Server 11'" + cmd = 'cat /etc/issue | grep "SUSE Linux Enterprise Server 11"' rc, out = run_remote(ip, cmd) if rc == 0: distro = "sles11" diff --git a/suites/libvirt-cim/lib/XenKvmLib/pool.py b/suites/libvirt-cim/lib/XenKvmLib/pool.py --- a/suites/libvirt-cim/lib/XenKvmLib/pool.py +++ b/suites/libvirt-cim/lib/XenKvmLib/pool.py @@ -107,7 +107,7 @@
def enum_volumes(virt, server, pooln=default_pool_name): volume = 0 - cmd = "virsh -c %s vol-list %s 2>/dev/null | sed -e '1,2 d' -e '$ d'" % \ + cmd = 'virsh -c %s vol-list %s 2>/dev/null | sed -e "1,2 d" -e "$ d"' % \ (virt2uri(virt), pooln) ret, out = run_remote(server ,cmd) if ret != 0: diff --git a/suites/libvirt-cim/lib/XenKvmLib/reporting.py b/suites/libvirt-cim/lib/XenKvmLib/reporting.py --- a/suites/libvirt-cim/lib/XenKvmLib/reporting.py +++ b/suites/libvirt-cim/lib/XenKvmLib/reporting.py @@ -87,7 +87,7 @@
def get_env_data(ip, virt): - distro = get_cmd_val("cat /etc/issue | sed '/^$/d' | awk 'NR<=1'", ip) + distro = get_cmd_val('cat /etc/issue | sed "/^$/d" | awk "NR<=1"', ip) if 'SUSE' in distro: distro = (distro.split('-'))[0].split('to')[1]
diff --git a/suites/libvirt-cim/lib/XenKvmLib/test_doms.py b/suites/libvirt-cim/lib/XenKvmLib/test_doms.py --- a/suites/libvirt-cim/lib/XenKvmLib/test_doms.py +++ b/suites/libvirt-cim/lib/XenKvmLib/test_doms.py @@ -67,7 +67,7 @@ def virdomid_list(server, virt="Xen"): """Get a list of domid from virsh"""
- cmd = "virsh -c %s list 2>/dev/null | sed '1,2 d; /^$/d'" % \ + cmd = 'virsh -c %s list 2>/dev/null | sed "1,2 d; /^$/d"' % \ virt2uri(virt) ret, out = utils.run_remote(server, cmd) if ret != 0: @@ -108,7 +108,7 @@
def viruuid(name, server, virt="Xen"): """Return domain uuid given domid or domname""" - cmd = "virsh -c %s domuuid %s 2>/dev/null | sed '/^$/d'" % \ + cmd = 'virsh -c %s domuuid %s 2>/dev/null | sed "/^$/d"' % \ (virt2uri(virt), name) ret, out = utils.run_remote(server, cmd) if ret == 0: @@ -119,7 +119,7 @@ def destroy_and_undefine_domain(name, server, virt="Xen"): """Destroy and undefine a domain. name could be domid or domname""" - cmd = "virsh -c %s 'destroy %s ; undefine %s' 2>/dev/null" % \ + cmd = 'virsh -c %s "destroy %s ; undefine %s" 2>/dev/null' % \ (virt2uri(virt), name, name) utils.run_remote(server, cmd)
@@ -164,7 +164,7 @@ """ Get the vcpu lists. The input is either the domid or domname. """ - cmd = "virsh -c %s vcpuinfo %s 2>/dev/null | grep '^$' | wc -l" % \ + cmd = 'virsh -c %s vcpuinfo %s 2>/dev/null | grep "^$" | wc -l' % \ (virt2uri(virt), name_id) ret, out = utils.run_remote(server, cmd)
diff --git a/suites/libvirt-cim/lib/XenKvmLib/xm_virt_util.py b/suites/libvirt-cim/lib/XenKvmLib/xm_virt_util.py --- a/suites/libvirt-cim/lib/XenKvmLib/xm_virt_util.py +++ b/suites/libvirt-cim/lib/XenKvmLib/xm_virt_util.py @@ -50,7 +50,7 @@ specified bridge. """
- cmd = "brctl show %s | grep 'vif' | grep -v vif0.*" % bridge + cmd = 'brctl show %s | grep "vif" | grep -v vif0.*' % bridge
rc, out = utils.run_remote(ip, cmd) if rc != 0: @@ -71,7 +71,7 @@ """Returns the list of disk of the specified VS """
- guest_cmd = "cat /proc/partitions | awk '/^ /{ print $4 } ' " + guest_cmd = 'cat /proc/partitions | awk "/^ /{ print $4 } " ' rc, out = run_remote_guest(ip, vs_name, guest_cmd)
if rc != 0: @@ -86,7 +86,7 @@ """
xm_ret, mfm = utils.run_remote(server, - "xm info | awk -F ': ' '/max_free_memory/ {print \$2}'") + 'xm info | awk -F ": " "/max_free_memory/ {print \$2}"') if xm_ret != 0: return None
@@ -108,7 +108,7 @@ if virt == "XenFV": virt = "Xen"
- cmd = "virsh -c %s list --all 2>/dev/null | sed -e '1,2 d' -e '$ d'" % \ + cmd = 'virsh -c %s list --all 2>/dev/null | sed -e "1,2 d" -e "$ d"' % \ virt2uri(virt) ret, out = utils.run_remote(server, cmd)
@@ -128,7 +128,7 @@ if virt == "XenFV": virt = "Xen"
- cmd = "virsh -c %s list 2>/dev/null | sed -e '1,2 d' -e '$ d'" % \ + cmd = 'virsh -c %s list 2>/dev/null | sed -e "1,2 d" -e "$ d"' % \ virt2uri(virt) ret, out = utils.run_remote(server, cmd)
@@ -162,7 +162,7 @@ if fv_cap(server) and gtype == 1: bootloader = "/usr/lib/xen/boot/hvmloader" else: - cmd = "cat /etc/issue | grep -v ^$ | egrep 'Red Hat|Fedora'" + cmd = 'cat /etc/issue | grep -v ^$ | egrep "Red Hat|Fedora"' ret, out = utils.run_remote(server,cmd) if ret != 0: # For SLES @@ -175,7 +175,7 @@ def net_list(server, virt="Xen"): """Function to list active network""" names = [] - cmd = "virsh -c %s net-list 2>/dev/null | sed -e '1,2 d' -e '$ d'" % \ + cmd = 'virsh -c %s net-list 2>/dev/null | sed -e "1,2 d" -e "$ d"' % \ virt2uri(virt) ret, out = utils.run_remote(server, cmd)
@@ -192,8 +192,8 @@ def get_bridge_from_network_xml(network, server, virt="Xen"): """Function returns bridge name for a given virtual network"""
- cmd = "virsh -c %s net-dumpxml %s 2>/dev/null | \ - awk '/bridge name/ { print $2 }'" % (virt2uri(virt), network) + cmd = 'virsh -c %s net-dumpxml %s 2>/dev/null | \ + awk "/bridge name/ { print $2 }"' % (virt2uri(virt), network) ret, out = utils.run_remote(server, cmd)
if ret != 0: @@ -233,7 +233,7 @@ def diskpool_list(server, virt="KVM"): """Function to list active DiskPool list""" names = [] - cmd = "virsh -c %s pool-list 2>/dev/null | sed -e '1,2 d' -e '$ d'" % \ + cmd = 'virsh -c %s pool-list 2>/dev/null | sed -e "1,2 d" -e "$ d"' % \ virt2uri(virt) ret, out = utils.run_remote(server, cmd)
@@ -251,7 +251,7 @@ def vol_list(server, virt="KVM", pool_name=None): """ Function to list the volumes of a pool"""
- cmd = "virsh -c %s vol-list %s 2>/dev/null | sed -e '1,2 d' -e '$ d'" \ + cmd = 'virsh -c %s vol-list %s 2>/dev/null | sed -e "1,2 d" -e "$ d"' \ % (virt2uri(virt), pool_name) ret, out = utils.run_remote(server, cmd) if ret != 0: @@ -283,14 +283,14 @@ cmd = "virsh -c %s version 2>/dev/null" %virt2uri(virt) ret, out = utils.run_remote(server, cmd) if ret == 0: - cmd = "virsh -c %s version 2>/dev/null | grep ^Running | \ - cut -d ' ' -f 3,4" % virt2uri(virt) + cmd = 'virsh -c %s version 2>/dev/null | grep ^Running | \ + cut -d " " -f 3,4' % virt2uri(virt)
# This is a workaround work for F10. # The version option does not seem to work on F10. if ret != 0 and virt == 'KVM': - cmd = "qemu-kvm --help | grep -i version | tr -s [:space:] |" \ - " cut -d ' ' -f 1,5" + cmd = 'qemu-kvm --help | grep -i version | tr -s [:space:] |' \ + ' cut -d " " -f 1,5'
ret, out = utils.run_remote(server, cmd) if ret == 0: @@ -362,7 +362,7 @@ """Returns the number of processors of the specified VS """
- guest_cmd = "grep '^$' /proc/cpuinfo | wc -l" + guest_cmd = 'grep "^$" /proc/cpuinfo | wc -l'
rc, out = run_remote_guest(ip, vs_name, guest_cmd) if rc != 0:
_______________________________________________ Libvirt-cim mailing list Libvirt-cim@redhat.com https://www.redhat.com/mailman/listinfo/libvirt-cim
-- Chip Vincent Open Virtualization IBM Linux Technology Center cvincent@linux.vnet.ibm.com
participants (2)
-
Chip Vincent
-
Eduardo Lima (Etrunko)