You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by an...@apache.org on 2013/12/03 10:49:16 UTC

[3/3] git commit: updated refs/heads/4.3 to 971b159

put shell scripts to a seperate directory in XS
use same scripts for both XS and XCP


Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/971b159f
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/971b159f
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/971b159f

Branch: refs/heads/4.3
Commit: 971b159f45314a25f7de322b10cbbbc08207e8ba
Parents: b1c8efb
Author: Anthony Xu <an...@citrix.com>
Authored: Tue Dec 3 01:36:24 2013 -0800
Committer: Anthony Xu <an...@citrix.com>
Committed: Tue Dec 3 01:48:55 2013 -0800

----------------------------------------------------------------------
 .../xen/resource/CitrixResourceBase.java        |    7 +
 .../xenserver/copy_vhd_from_secondarystorage.sh |    2 +-
 .../xenserver/copy_vhd_to_secondarystorage.sh   |    5 +-
 .../create_privatetemplate_from_snapshot.sh     |    2 +-
 scripts/vm/hypervisor/xenserver/launch_hb.sh    |    4 +-
 scripts/vm/hypervisor/xenserver/ovs-pvlan       |   10 +-
 .../xenserver/setup_heartbeat_file.sh           |    2 +-
 .../vm/hypervisor/xenserver/setupxenserver.sh   |    2 +-
 scripts/vm/hypervisor/xenserver/swiftxen        |    2 +-
 .../vm/hypervisor/xenserver/upgrade_snapshot.sh |    2 +-
 scripts/vm/hypervisor/xenserver/vmops           |   35 +-
 scripts/vm/hypervisor/xenserver/vmopsSnapshot   |   10 +-
 scripts/vm/hypervisor/xenserver/vmopspremium    |   21 +-
 .../xcposs/copy_vhd_from_secondarystorage.sh    |  188 ---
 .../xcposs/copy_vhd_to_secondarystorage.sh      |  130 --
 .../create_privatetemplate_from_snapshot.sh     |  138 --
 scripts/vm/hypervisor/xenserver/xcposs/patch    |   68 +-
 scripts/vm/hypervisor/xenserver/xcposs/vmops    | 1493 ------------------
 .../hypervisor/xenserver/xcposs/vmopsSnapshot   |  601 -------
 .../vm/hypervisor/xenserver/xcposs/vmopspremium |  146 --
 scripts/vm/hypervisor/xenserver/xcpserver/patch |   58 +-
 scripts/vm/hypervisor/xenserver/xenheartbeat.sh |    2 +-
 .../vm/hypervisor/xenserver/xenserver56/patch   |   58 +-
 .../hypervisor/xenserver/xenserver56fp1/patch   |   58 +-
 .../vm/hypervisor/xenserver/xenserver60/patch   |   68 +-
 25 files changed, 217 insertions(+), 2895 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/971b159f/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java
----------------------------------------------------------------------
diff --git a/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java b/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java
index f6df605..7fa0aad 100644
--- a/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java
+++ b/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java
@@ -268,6 +268,7 @@ import java.util.Queue;
 import java.util.Random;
 import java.util.Set;
 import java.util.UUID;
+import com.cloud.utils.ssh.SSHCmdHelper;
 
 import static com.cloud.utils.ReflectUtil.flattenProperties;
 import static com.google.common.collect.Lists.newArrayList;
@@ -5301,6 +5302,12 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe
                 }
 
                 com.trilead.ssh2.Session session = sshConnection.openSession();
+
+                String cmd = "mkdir -p /opt/cloud/bin";
+                if (!SSHCmdHelper.sshExecuteCmd(sshConnection, cmd)) {
+                    throw new CloudRuntimeException("Cannot create directory /opt/cloud/bin on XenServer hosts");
+                }
+
                 SCPClient scp = new SCPClient(sshConnection);
 
                 List<File> files = getPatchFiles();

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/971b159f/scripts/vm/hypervisor/xenserver/copy_vhd_from_secondarystorage.sh
----------------------------------------------------------------------
diff --git a/scripts/vm/hypervisor/xenserver/copy_vhd_from_secondarystorage.sh b/scripts/vm/hypervisor/xenserver/copy_vhd_from_secondarystorage.sh
index 2443891..098015a 100755
--- a/scripts/vm/hypervisor/xenserver/copy_vhd_from_secondarystorage.sh
+++ b/scripts/vm/hypervisor/xenserver/copy_vhd_from_secondarystorage.sh
@@ -89,7 +89,7 @@ fi
 
 
 
-VHDUTIL="/opt/xensource/bin/vhd-util"
+VHDUTIL="/opt/cloud/bin/vhd-util"
 
 copyvhd()
 {

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/971b159f/scripts/vm/hypervisor/xenserver/copy_vhd_to_secondarystorage.sh
----------------------------------------------------------------------
diff --git a/scripts/vm/hypervisor/xenserver/copy_vhd_to_secondarystorage.sh b/scripts/vm/hypervisor/xenserver/copy_vhd_to_secondarystorage.sh
index b315c07..36e8222 100755
--- a/scripts/vm/hypervisor/xenserver/copy_vhd_to_secondarystorage.sh
+++ b/scripts/vm/hypervisor/xenserver/copy_vhd_to_secondarystorage.sh
@@ -78,6 +78,7 @@ if [ $? -ne 0 ]; then
 fi
 
 vhdfile=$localmp/${vdiuuid}.vhd
+VHDUTIL="vhd-util"
 
 if [ $type == "nfs" -o $type == "ext" ]; then
   dd if=/var/run/sr-mount/$sruuid/${vdiuuid}.vhd of=$vhdfile bs=2M
@@ -94,7 +95,7 @@ elif [ $type == "lvmoiscsi" -o $type == "lvm" -o $type == "lvmohba" ]; then
     cleanup
     exit 0
   fi
-  size=$(vhd-util query -s -n /dev/VG_XenStorage-$sruuid/VHD-$vdiuuid)
+  size=$($VHDUTIL query -s -n /dev/VG_XenStorage-$sruuid/VHD-$vdiuuid)
   if [ $? -ne 0 ]; then
     echo "10#can not get physical size of /dev/VG_XenStorage-$sruuid/VHD-$vdiuuid"
     cleanup
@@ -112,7 +113,7 @@ elif [ $type == "lvmoiscsi" -o $type == "lvm" -o $type == "lvmohba" ]; then
   fi
 #in byte unit
   size=$((size<<21))
-  vhd-util modify -s $size -n $vhdfile
+  $VHDUTIL modify -s $size -n $vhdfile
   if [ $? -ne 0 ]; then
     rm -f $vhdfile
     echo "11#failed to change $vhdfile physical size"

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/971b159f/scripts/vm/hypervisor/xenserver/create_privatetemplate_from_snapshot.sh
----------------------------------------------------------------------
diff --git a/scripts/vm/hypervisor/xenserver/create_privatetemplate_from_snapshot.sh b/scripts/vm/hypervisor/xenserver/create_privatetemplate_from_snapshot.sh
index 93b8705..d39fc6e 100755
--- a/scripts/vm/hypervisor/xenserver/create_privatetemplate_from_snapshot.sh
+++ b/scripts/vm/hypervisor/xenserver/create_privatetemplate_from_snapshot.sh
@@ -96,7 +96,7 @@ if [ $? -ne 0 ]; then
   exit 0
 fi
 
-VHDUTIL="/opt/xensource/bin/vhd-util"
+VHDUTIL="/opt/cloud/bin/vhd-util"
 
 copyvhd()
 {

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/971b159f/scripts/vm/hypervisor/xenserver/launch_hb.sh
----------------------------------------------------------------------
diff --git a/scripts/vm/hypervisor/xenserver/launch_hb.sh b/scripts/vm/hypervisor/xenserver/launch_hb.sh
index b8a36a0..289eb5f 100755
--- a/scripts/vm/hypervisor/xenserver/launch_hb.sh
+++ b/scripts/vm/hypervisor/xenserver/launch_hb.sh
@@ -33,7 +33,7 @@ if [ -z $2 ]; then
   exit 3
 fi
 
-if [ ! -f /opt/xensource/bin/xenheartbeat.sh ]; then
+if [ ! -f /opt/cloud/bin/xenheartbeat.sh ]; then
   printf "Error: Unable to find xenheartbeat.sh to launch\n"
   exit 4
 fi
@@ -42,5 +42,5 @@ for psid in `ps -ef | grep xenheartbeat | grep -v grep | awk '{print $2}'`; do
   kill $psid
 done
 
-nohup /opt/xensource/bin/xenheartbeat.sh $1 $2 >/dev/null 2>/dev/null &
+nohup /opt/cloud/bin/xenheartbeat.sh $1 $2 >/dev/null 2>/dev/null &
 echo "======> DONE <======"

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/971b159f/scripts/vm/hypervisor/xenserver/ovs-pvlan
----------------------------------------------------------------------
diff --git a/scripts/vm/hypervisor/xenserver/ovs-pvlan b/scripts/vm/hypervisor/xenserver/ovs-pvlan
index c821870..8579b55 100755
--- a/scripts/vm/hypervisor/xenserver/ovs-pvlan
+++ b/scripts/vm/hypervisor/xenserver/ovs-pvlan
@@ -32,11 +32,11 @@ from time import localtime as _localtime, asctime as _asctime
 
 xePath = "/opt/xensource/bin/xe"
 lib.setup_logging("/var/log/ovs-pvlan.log")
-dhcpSetupPath = "/opt/xensource/bin/ovs-pvlan-dhcp-host.sh"
-vmSetupPath = "/opt/xensource/bin/ovs-pvlan-vm.sh"
-getDhcpIfacePath = "/opt/xensource/bin/ovs-get-dhcp-iface.sh"
-pvlanCleanupPath = "/opt/xensource/bin/ovs-pvlan-cleanup.sh"
-getBridgePath = "/opt/xensource/bin/ovs-get-bridge.sh"
+dhcpSetupPath = "/opt/cloud/bin/ovs-pvlan-dhcp-host.sh"
+vmSetupPath = "/opt/cloud/bin/ovs-pvlan-vm.sh"
+getDhcpIfacePath = "/opt/cloud/bin/ovs-get-dhcp-iface.sh"
+pvlanCleanupPath = "/opt/cloud/bin/ovs-pvlan-cleanup.sh"
+getBridgePath = "/opt/cloud/bin/ovs-get-bridge.sh"
 
 def echo(fn):
     def wrapped(*v, **k):

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/971b159f/scripts/vm/hypervisor/xenserver/setup_heartbeat_file.sh
----------------------------------------------------------------------
diff --git a/scripts/vm/hypervisor/xenserver/setup_heartbeat_file.sh b/scripts/vm/hypervisor/xenserver/setup_heartbeat_file.sh
index fb178e0..125fc2b 100755
--- a/scripts/vm/hypervisor/xenserver/setup_heartbeat_file.sh
+++ b/scripts/vm/hypervisor/xenserver/setup_heartbeat_file.sh
@@ -58,7 +58,7 @@ if [ `xe pbd-list sr-uuid=$2 | grep -B 1 $1 | wc -l` -eq 0 ]; then
   exit 0
 fi
 
-hbfile=/opt/xensource/bin/heartbeat
+hbfile=/opt/cloud/bin/heartbeat
 
 if [ "$3" = "true" ]; then
 

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/971b159f/scripts/vm/hypervisor/xenserver/setupxenserver.sh
----------------------------------------------------------------------
diff --git a/scripts/vm/hypervisor/xenserver/setupxenserver.sh b/scripts/vm/hypervisor/xenserver/setupxenserver.sh
index 311f273..14ba1c2 100755
--- a/scripts/vm/hypervisor/xenserver/setupxenserver.sh
+++ b/scripts/vm/hypervisor/xenserver/setupxenserver.sh
@@ -55,7 +55,7 @@ mv -n /etc/cron.daily/logrotate /etc/cron.hourly 2>&1
 echo 1048576 >/proc/sys/fs/aio-max-nr
 
 # empty heartbeat
-cat /dev/null > /opt/xensource/bin/heartbeat
+cat /dev/null > /opt/cloud/bin/heartbeat
 # empty knownhost
 cat /dev/null > /root/.ssh/known_hosts
 

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/971b159f/scripts/vm/hypervisor/xenserver/swiftxen
----------------------------------------------------------------------
diff --git a/scripts/vm/hypervisor/xenserver/swiftxen b/scripts/vm/hypervisor/xenserver/swiftxen
index 1be4107..46229e3 100644
--- a/scripts/vm/hypervisor/xenserver/swiftxen
+++ b/scripts/vm/hypervisor/xenserver/swiftxen
@@ -34,7 +34,7 @@ def echo(fn):
         return res
     return wrapped
 
-SWIFT = "/opt/xensource/bin/swift"
+SWIFT = "/opt/cloud/bin/swift"
 
 MAX_SEG_SIZE = 5 * 1024 * 1024 * 1024
 

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/971b159f/scripts/vm/hypervisor/xenserver/upgrade_snapshot.sh
----------------------------------------------------------------------
diff --git a/scripts/vm/hypervisor/xenserver/upgrade_snapshot.sh b/scripts/vm/hypervisor/xenserver/upgrade_snapshot.sh
index 6dcc2c45..4cb2e30 100755
--- a/scripts/vm/hypervisor/xenserver/upgrade_snapshot.sh
+++ b/scripts/vm/hypervisor/xenserver/upgrade_snapshot.sh
@@ -87,7 +87,7 @@ if [ $? -ne 0 ]; then
   exit 0
 fi
 
-VHDUTIL="/opt/xensource/bin/vhd-util"
+VHDUTIL="/opt/cloud/bin/vhd-util"
 
 upgradeSnapshot()
 {

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/971b159f/scripts/vm/hypervisor/xenserver/vmops
----------------------------------------------------------------------
diff --git a/scripts/vm/hypervisor/xenserver/vmops b/scripts/vm/hypervisor/xenserver/vmops
index 3f11960..5383e0e 100755
--- a/scripts/vm/hypervisor/xenserver/vmops
+++ b/scripts/vm/hypervisor/xenserver/vmops
@@ -22,7 +22,10 @@
 
 import os, sys, time
 import XenAPIPlugin
-sys.path.extend(["/opt/xensource/sm/", "/usr/local/sbin/", "/sbin/"])
+if os.path.exists("/opt/xensource/sm"):
+    sys.path.extend(["/opt/xensource/sm/", "/usr/local/sbin/", "/sbin/"])
+if os.path.exists("/usr/lib/xcp/sm"):
+    sys.path.extend(["/usr/lib/xcp/sm/", "/usr/local/sbin/", "/sbin/"])
 import base64
 import hostvmstats
 import socket
@@ -48,7 +51,7 @@ def add_to_VCPUs_params_live(session, args):
     value = args['value']
     vmname = args['vmname']
     try:
-        cmd = ["bash", "/opt/xensource/bin/add_to_vcpus_params_live.sh", vmname, key, value]
+        cmd = ["bash", "/opt/cloud/bin/add_to_vcpus_params_live.sh", vmname, key, value]
         txt = util.pread2(cmd)
     except:
         return 'false'
@@ -67,7 +70,7 @@ def gethostvmstats(session, args):
 def setup_iscsi(session, args):
    uuid=args['uuid']
    try:
-       cmd = ["bash", "/opt/xensource/bin/setup_iscsi.sh", uuid]
+       cmd = ["bash", "/opt/cloud/bin/setup_iscsi.sh", uuid]
        txt = util.pread2(cmd)
    except:
        txt = ''
@@ -78,7 +81,7 @@ def setup_iscsi(session, args):
 def getgateway(session, args):
     mgmt_ip = args['mgmtIP']
     try:
-        cmd = ["bash", "/opt/xensource/bin/network_info.sh", "-g", mgmt_ip]
+        cmd = ["bash", "/opt/cloud/bin/network_info.sh", "-g", mgmt_ip]
         txt = util.pread2(cmd)
     except:
         txt = ''
@@ -89,7 +92,7 @@ def getgateway(session, args):
 def preparemigration(session, args):
     uuid = args['uuid']
     try:
-        cmd = ["/opt/xensource/bin/make_migratable.sh", uuid]
+        cmd = ["/opt/cloud/bin/make_migratable.sh", uuid]
         util.pread2(cmd)
         txt = 'success'
     except:
@@ -101,7 +104,7 @@ def preparemigration(session, args):
 @echo
 def setIptables(session, args):
     try:
-        cmd = ["/bin/bash", "/opt/xensource/bin/setupxenserver.sh"]
+        cmd = ["/bin/bash", "/opt/cloud/bin/setupxenserver.sh"]
         txt = util.pread2(cmd)
         txt = 'success'
     except:
@@ -130,7 +133,7 @@ def pingdomr(session, args):
 def kill_copy_process(session, args):
     namelabel = args['namelabel']
     try:
-        cmd = ["bash", "/opt/xensource/bin/kill_copy_process.sh", namelabel]
+        cmd = ["bash", "/opt/cloud/bin/kill_copy_process.sh", namelabel]
         txt = util.pread2(cmd)
     except:
         txt = 'false'
@@ -144,7 +147,7 @@ def pingxenserver(session, args):
 def pingtest(session, args):
     sargs = args['args']
     cmd = sargs.split(' ')
-    cmd.insert(0, "/opt/xensource/bin/pingtest.sh")
+    cmd.insert(0, "/opt/cloud/bin/pingtest.sh")
     cmd.insert(0, "/bin/bash")
     try:
         txt = util.pread2(cmd)
@@ -159,7 +162,7 @@ def pingtest(session, args):
 def savePassword(session, args):
     sargs = args['args']
     cmd = sargs.split(' ')
-    cmd.insert(0, "/opt/xensource/bin/save_password_to_domr.sh")
+    cmd.insert(0, "/opt/cloud/bin/save_password_to_domr.sh")
     cmd.insert(0, "/bin/bash")
     try:
         txt = util.pread2(cmd)
@@ -174,7 +177,7 @@ def savePassword(session, args):
 def saveDhcpEntry(session, args):
     sargs = args['args']
     cmd = sargs.split(' ')
-    cmd.insert(0, "/opt/xensource/bin/dhcp_entry.sh")
+    cmd.insert(0, "/opt/cloud/bin/dhcp_entry.sh")
     cmd.insert(0, "/bin/bash")
     try:
         txt = util.pread2(cmd)
@@ -236,7 +239,7 @@ def setLinkLocalIP(session, args):
 def setFirewallRule(session, args):
     sargs = args['args']
     cmd = sargs.split(' ')
-    cmd.insert(0, "/opt/xensource/bin/call_firewall.sh")
+    cmd.insert(0, "/opt/cloud/bin/call_firewall.sh")
     cmd.insert(0, "/bin/bash")
     try:
         txt = util.pread2(cmd)
@@ -251,7 +254,7 @@ def setFirewallRule(session, args):
 def routerProxy(session, args):
     sargs = args['args']
     cmd = sargs.split(' ')
-    cmd.insert(0, "/opt/xensource/bin/router_proxy.sh")
+    cmd.insert(0, "/opt/cloud/bin/router_proxy.sh")
     cmd.insert(0, "/bin/bash")
     try:
         txt = util.pread2(cmd)
@@ -269,7 +272,7 @@ def routerProxy(session, args):
 def setLoadBalancerRule(session, args):
     sargs = args['args']
     cmd = sargs.split(' ')
-    cmd.insert(0, "/opt/xensource/bin/call_loadbalancer.sh")
+    cmd.insert(0, "/opt/cloud/bin/call_loadbalancer.sh")
     cmd.insert(0, "/bin/bash")
     try:
         txt = util.pread2(cmd)
@@ -296,7 +299,7 @@ def configdnsmasq(session, args):
 def createipAlias(session, args):
     args = args['args']
     cmd = args.split(' ')
-    cmd.insert(0, "/opt/xensource/bin/createipAlias.sh")
+    cmd.insert(0, "/opt/cloud/bin/createipAlias.sh")
     cmd.insert(0, "bin/bash")
     try:
        txt=util.pread2(cmd)
@@ -310,7 +313,7 @@ def createipAlias(session, args):
 def deleteipAlias(session, args):
     args = args['args']
     cmd = args.split(' ')
-    cmd.insert(0, "/opt/xensource/bin/deleteipAlias.sh")
+    cmd.insert(0, "/opt/cloud/bin/deleteipAlias.sh")
     cmd.insert(0, "bin/bash")
     try:
        txt=util.pread2(cmd)
@@ -1616,7 +1619,7 @@ def network_rules(session, args):
 def bumpUpPriority(session, args):
     sargs = args['args']
     cmd = sargs.split(' ')
-    cmd.insert(0, "/opt/xensource/bin/bumpUpPriority.sh")
+    cmd.insert(0, "/opt/cloud/bin/bumpUpPriority.sh")
     cmd.insert(0, "/bin/bash")
     try:
         txt = util.pread2(cmd)

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/971b159f/scripts/vm/hypervisor/xenserver/vmopsSnapshot
----------------------------------------------------------------------
diff --git a/scripts/vm/hypervisor/xenserver/vmopsSnapshot b/scripts/vm/hypervisor/xenserver/vmopsSnapshot
index f638de4..00ed93a 100755
--- a/scripts/vm/hypervisor/xenserver/vmopsSnapshot
+++ b/scripts/vm/hypervisor/xenserver/vmopsSnapshot
@@ -22,7 +22,11 @@
 
 import os, sys, time
 import XenAPIPlugin
-sys.path.append("/opt/xensource/sm/")
+if os.path.exists("/opt/xensource/sm"):
+    sys.path.extend(["/opt/xensource/sm/", "/usr/local/sbin/", "/sbin/"])
+if os.path.exists("/usr/lib/xcp/sm"):
+    sys.path.extend(["/usr/lib/xcp/sm/", "/usr/local/sbin/", "/sbin/"])
+
 import SR, VDI, SRCommand, util, lvutil
 from util import CommandException
 import vhdutil
@@ -35,7 +39,7 @@ import cleanup
 import stat
 import random
 
-VHD_UTIL = '/opt/xensource/bin/vhd-util'
+VHDUTIL = "vhd-util"
 VHD_PREFIX = 'VHD-'
 CLOUD_DIR = '/var/run/cloud_mount'
 
@@ -263,7 +267,7 @@ def getParentOfSnapshot(snapshotUuid, primarySRPath, isISCSI):
 
 def setParent(parent, child):
     try:
-        cmd = [VHD_UTIL, "modify", "-p", parent, "-n", child]
+        cmd = [VHDUTIL, "modify", "-p", parent, "-n", child]
         txt = util.pread2(cmd)
     except:
         errMsg = "Unexpected error while trying to set parent of " + child + " to " + parent 

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/971b159f/scripts/vm/hypervisor/xenserver/vmopspremium
----------------------------------------------------------------------
diff --git a/scripts/vm/hypervisor/xenserver/vmopspremium b/scripts/vm/hypervisor/xenserver/vmopspremium
index 38ec2e8..d7d0c6f 100755
--- a/scripts/vm/hypervisor/xenserver/vmopspremium
+++ b/scripts/vm/hypervisor/xenserver/vmopspremium
@@ -22,7 +22,10 @@
 
 import os, sys, time
 import XenAPIPlugin
-sys.path.append("/opt/xensource/sm/")
+if os.path.exists("/opt/xensource/sm"):
+    sys.path.extend(["/opt/xensource/sm/", "/usr/local/sbin/", "/sbin/"])
+if os.path.exists("/usr/lib/xcp/sm"):
+    sys.path.extend(["/usr/lib/xcp/sm/", "/usr/local/sbin/", "/sbin/"])
 import util
 import socket
 
@@ -52,7 +55,7 @@ def create_privatetemplate_from_snapshot(session, args):
     snapshotPath = args['snapshotPath']
     tmpltLocalDir = args['tmpltLocalDir']
     try:
-        cmd = ["bash", "/opt/xensource/bin/create_privatetemplate_from_snapshot.sh",snapshotPath, templatePath, tmpltLocalDir]
+        cmd = ["bash", "/opt/cloud/bin/create_privatetemplate_from_snapshot.sh",snapshotPath, templatePath, tmpltLocalDir]
         txt = util.pread2(cmd)
     except:
         txt = '10#failed'
@@ -63,7 +66,7 @@ def upgrade_snapshot(session, args):
     templatePath = args['templatePath']
     snapshotPath = args['snapshotPath']
     try:
-        cmd = ["bash", "/opt/xensource/bin/upgrate_snapshot.sh",snapshotPath, templatePath]
+        cmd = ["bash", "/opt/cloud/bin/upgrate_snapshot.sh",snapshotPath, templatePath]
         txt = util.pread2(cmd)
     except:
         txt = '10#failed'
@@ -75,7 +78,7 @@ def copy_vhd_to_secondarystorage(session, args):
     vdiuuid = args['vdiuuid']
     sruuid = args['sruuid']
     try:
-        cmd = ["bash", "/opt/xensource/bin/copy_vhd_to_secondarystorage.sh", mountpoint, vdiuuid, sruuid]
+        cmd = ["bash", "/opt/cloud/bin/copy_vhd_to_secondarystorage.sh", mountpoint, vdiuuid, sruuid]
         txt = util.pread2(cmd)
     except:
         txt = '10#failed'
@@ -87,7 +90,7 @@ def copy_vhd_from_secondarystorage(session, args):
     sruuid = args['sruuid']
     namelabel = args['namelabel']
     try:
-        cmd = ["bash", "/opt/xensource/bin/copy_vhd_from_secondarystorage.sh", mountpoint, sruuid, namelabel]
+        cmd = ["bash", "/opt/cloud/bin/copy_vhd_from_secondarystorage.sh", mountpoint, sruuid, namelabel]
         txt = util.pread2(cmd)
     except:
         txt = '10#failed'
@@ -98,7 +101,7 @@ def setup_heartbeat_sr(session, args):
     host = args['host']
     sr = args['sr']
     try:
-        cmd = ["bash", "/opt/xensource/bin/setup_heartbeat_sr.sh", host, sr]
+        cmd = ["bash", "/opt/cloud/bin/setup_heartbeat_sr.sh", host, sr]
         txt = util.pread2(cmd)
     except:
         txt = ''
@@ -110,7 +113,7 @@ def setup_heartbeat_file(session, args):
     sr = args['sr']
     add = args['add']
     try:
-        cmd = ["bash", "/opt/xensource/bin/setup_heartbeat_file.sh", host, sr, add]
+        cmd = ["bash", "/opt/cloud/bin/setup_heartbeat_file.sh", host, sr, add]
         txt = util.pread2(cmd)
     except:
         txt = ''
@@ -121,7 +124,7 @@ def check_heartbeat(session, args):
     host = args['host']
     interval = args['interval']
     try:
-       cmd = ["bash", "/opt/xensource/bin/check_heartbeat.sh", host, interval]
+       cmd = ["bash", "/opt/cloud/bin/check_heartbeat.sh", host, interval]
        txt = util.pread2(cmd)
     except:
        txt=''
@@ -133,7 +136,7 @@ def heartbeat(session, args):
     host = args['host']
     interval = args['interval']
     try: 
-       cmd = ["/bin/bash", "/opt/xensource/bin/launch_hb.sh", host, interval]
+       cmd = ["/bin/bash", "/opt/cloud/bin/launch_hb.sh", host, interval]
        txt = util.pread2(cmd)
     except:
        txt='fail'

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/971b159f/scripts/vm/hypervisor/xenserver/xcposs/copy_vhd_from_secondarystorage.sh
----------------------------------------------------------------------
diff --git a/scripts/vm/hypervisor/xenserver/xcposs/copy_vhd_from_secondarystorage.sh b/scripts/vm/hypervisor/xenserver/xcposs/copy_vhd_from_secondarystorage.sh
deleted file mode 100755
index a4e977b..0000000
--- a/scripts/vm/hypervisor/xenserver/xcposs/copy_vhd_from_secondarystorage.sh
+++ /dev/null
@@ -1,188 +0,0 @@
-#!/bin/bash
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-# 
-#   http://www.apache.org/licenses/LICENSE-2.0
-# 
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied.  See the License for the
-# specific language governing permissions and limitations
-# under the License.
-
-#set -x
- 
-usage() {
-  printf "Usage: %s [vhd file in secondary storage] [uuid of the source sr] [name label]  \n" $(basename $0) 
-}
-
-cleanup()
-{
-  if [ ! -z $localmp ]; then 
-    umount -fl $localmp
-    if [ $? -eq 0 ];  then
-      rmdir $localmp
-    fi
-  fi
-}
-
-if [ -z $1 ]; then
-  usage
-  echo "2#no mountpoint"
-  exit 0
-else
-  mountpoint=${1%/*}
-  vhdfilename=${1##*/}
-fi
-
-if [ -z $2 ]; then
-  usage
-  echo "3#no uuid of the source sr"
-  exit 0
-else
-  sruuid=$2
-fi
-
-type=$(xe sr-param-get uuid=$sruuid param-name=type)
-if [ $? -ne 0 ]; then
-  echo "4#sr $sruuid doesn't exist"
-  exit 0
-fi
-
-if [ -z $3 ]; then
-  usage
-  echo "3#no namelabel"
-  exit 0
-else
-  namelabel=$3
-fi
-
-localmp=/var/run/cloud_mount/$(uuidgen -r)
-
-mkdir -p $localmp
-if [ $? -ne 0 ]; then
-  echo "5#can't make dir $localmp"
-  exit 0
-fi
-
-mount -o tcp,soft,ro,timeo=133,retrans=1 $mountpoint $localmp
-if [ $? -ne 0 ]; then
-  echo "6#can't mount $mountpoint to $localmp"
-  exit 0
-fi
-
-vhdfile=$localmp/$vhdfilename
-if [ ${vhdfile%.vhd} == ${vhdfile} ] ; then
-  vhdfile=$(ls $vhdfile/*.vhd)
-  if [ $? -ne 0 ]; then
-    echo "7#There is no vhd file under $mountpoint"
-    cleanup
-    exit 0
-  fi
-fi
-
-
-
-VHDUTIL="/usr/bin/vhd-util"
-
-copyvhd()
-{
-  local desvhd=$1
-  local srcvhd=$2
-  local vsize=$3
-  local type=$4
-  local parent=`$VHDUTIL query -p -n $srcvhd`
-  if [ $? -ne 0 ]; then
-    echo "30#failed to query $srcvhd"
-    cleanup
-    exit 0
-  fi
-  if [ "${parent##*vhd has}" = " no parent" ]; then
-    dd if=$srcvhd of=$desvhd bs=2M     
-    if [ $? -ne 0 ]; then
-      echo "31#failed to dd $srcvhd to $desvhd"
-      cleanup
-     exit 0
-    fi
-    if [ $type != "nfs" -a $type != "ext" -a $type != "file" ]; then
-      dd if=$srcvhd of=$desvhd bs=512 seek=$(($(($vsize/512))-1)) count=1
-      $VHDUTIL modify -s $vsize -n $desvhd
-      if [ $? -ne 0 ]; then
-        echo "32#failed to set new vhd physical size for vdi vdi $uuid"
-        cleanup
-        exit 0
-      fi
-    fi
-  else
-    copyvhd $desvhd $parent $vsize $type
-    $VHDUTIL coalesce -p $desvhd -n $srcvhd
-    if [ $? -ne 0 ]; then
-      echo "32#failed to coalesce  $desvhd to $srcvhd"
-      cleanup
-     exit 0
-    fi
-  fi
-}
-
-size=$($VHDUTIL query -v -n $vhdfile)
-uuid=$(xe vdi-create sr-uuid=$sruuid virtual-size=${size}MiB type=user name-label=$namelabel)
-if [ $? -ne 0 ]; then
-  echo "9#can not create vdi in sr $sruuid"
-  cleanup
-  exit 0
-fi
-
-
-if [ $type == "nfs" -o $type == "ext" ]; then
-  desvhd=/run/sr-mount/$sruuid/$uuid.vhd
-  copyvhd $desvhd $vhdfile 0 $type
-
-elif [ $type == "lvmoiscsi" -o $type == "lvm" -o $type == "lvmohba" ]; then
-  lvsize=$(xe vdi-param-get uuid=$uuid param-name=physical-utilisation)
-  if [ $? -ne 0 ]; then
-    echo "12#failed to get physical size of vdi $uuid"
-    cleanup
-    exit 0
-  fi
-  desvhd=/dev/VG_XenStorage-$sruuid/VHD-$uuid
-  lvchange -ay $desvhd
-  if [ $? -ne 0 ]; then
-    echo "10#lvm can not make VDI $uuid  visible"
-    cleanup
-    exit 0
-  fi
-  copyvhd $desvhd $vhdfile $lvsize $type
-elif [ $type == "file" ]; then
-  pbd=`xe sr-param-list uuid=$sruuid |grep PBDs | awk '{print $3}'`
-  path=`xe pbd-param-list uuid=$pbd |grep device-config |awk '{print $4}'`
-  desvhd=$path/$uuid.vhd
-  copyvhd $desvhd $vhdfile 0 $type
-
-else 
-  echo "15#doesn't support sr type $type"
-  cleanup
-  exit 0
-fi
-
-$VHDUTIL set -n $desvhd -f "hidden" -v "0" > /dev/null
-if [ $? -ne 0 ]; then
-  echo "21#failed to set hidden to 0  $desvhd"
-  cleanup
-  exit 0
-fi
-xe sr-scan uuid=$sruuid
-if [ $? -ne 0 ]; then
-  echo "14#failed to scan sr $sruuid"
-  cleanup
-  exit 0
-fi
-
-echo "0#$uuid"
-cleanup
-exit 0

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/971b159f/scripts/vm/hypervisor/xenserver/xcposs/copy_vhd_to_secondarystorage.sh
----------------------------------------------------------------------
diff --git a/scripts/vm/hypervisor/xenserver/xcposs/copy_vhd_to_secondarystorage.sh b/scripts/vm/hypervisor/xenserver/xcposs/copy_vhd_to_secondarystorage.sh
deleted file mode 100755
index b315c07..0000000
--- a/scripts/vm/hypervisor/xenserver/xcposs/copy_vhd_to_secondarystorage.sh
+++ /dev/null
@@ -1,130 +0,0 @@
-#!/bin/bash
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-# 
-#   http://www.apache.org/licenses/LICENSE-2.0
-# 
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied.  See the License for the
-# specific language governing permissions and limitations
-# under the License.
-
-#set -x
- 
-usage() {
-  printf "Usage: %s [mountpoint in secondary storage] [uuid of the source vdi] [uuid of the source sr]\n" $(basename $0) 
-}
-
-cleanup()
-{
-  if [ ! -z $localmp ]; then 
-    umount $localmp
-    if [ $? -eq 0 ];  then
-      rmdir $localmp
-    fi
-  fi
-}
-
-if [ -z $1 ]; then
-  usage
-  echo "1#no mountpoint"
-  exit 0
-else
-  mountpoint=$1
-fi
-
-if [ -z $2 ]; then
-  usage
-  echo "2#no uuid of the source sr"
-  exit 0
-else
-  vdiuuid=$2
-fi
-
-
-if [ -z $3 ]; then
-  usage
-  echo "3#no uuid of the source sr"
-  exit 0
-else
-  sruuid=$3
-fi
-
-type=$(xe sr-param-get uuid=$sruuid param-name=type)
-if [ $? -ne 0 ]; then
-  echo "4#sr $sruuid doesn't exist"
-  exit 0
-fi
-
-localmp=/var/run/cloud_mount/$(uuidgen -r)
-
-mkdir -p $localmp
-if [ $? -ne 0 ]; then
-  echo "5#can't make dir $localmp"
-  exit 0
-fi
-
-mount -o tcp,soft,timeo=133,retrans=1 $mountpoint $localmp
-if [ $? -ne 0 ]; then
-  echo "6#can't mount $mountpoint to $localmp"
-  exit 0
-fi
-
-vhdfile=$localmp/${vdiuuid}.vhd
-
-if [ $type == "nfs" -o $type == "ext" ]; then
-  dd if=/var/run/sr-mount/$sruuid/${vdiuuid}.vhd of=$vhdfile bs=2M
-  if [ $? -ne 0 ]; then
-    rm -f $vhdfile
-    echo "8#failed to copy /var/run/sr-mount/$sruuid/${vdiuuid}.vhd to secondarystorage"
-    cleanup
-    exit 0
-  fi
-elif [ $type == "lvmoiscsi" -o $type == "lvm" -o $type == "lvmohba" ]; then
-  lvchange -ay /dev/VG_XenStorage-$sruuid/VHD-$vdiuuid
-  if [ $? -ne 0 ]; then
-    echo "9#lvm can not make VDI $vdiuuid  visible"
-    cleanup
-    exit 0
-  fi
-  size=$(vhd-util query -s -n /dev/VG_XenStorage-$sruuid/VHD-$vdiuuid)
-  if [ $? -ne 0 ]; then
-    echo "10#can not get physical size of /dev/VG_XenStorage-$sruuid/VHD-$vdiuuid"
-    cleanup
-    exit 0
-  fi
-#in 2M unit
-  size=$((size>>21))
-  size=$((size+1))
-  dd if=/dev/VG_XenStorage-$sruuid/VHD-$vdiuuid of=$vhdfile bs=2M count=$size
-  if [ $? -ne 0 ]; then
-    rm -f $vhdfile
-    echo "8#failed to copy /dev/VG_XenStorage-$sruuid/VHD-$vdiuuid to secondarystorage"
-    cleanup
-    exit 0
-  fi
-#in byte unit
-  size=$((size<<21))
-  vhd-util modify -s $size -n $vhdfile
-  if [ $? -ne 0 ]; then
-    rm -f $vhdfile
-    echo "11#failed to change $vhdfile physical size"
-    cleanup
-    exit 0
-  fi
-else 
-  echo "15#doesn't support sr type $type"
-  cleanup
-  exit 0
-fi
-
-echo "0#$vdiuuid"
-cleanup
-exit 0

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/971b159f/scripts/vm/hypervisor/xenserver/xcposs/create_privatetemplate_from_snapshot.sh
----------------------------------------------------------------------
diff --git a/scripts/vm/hypervisor/xenserver/xcposs/create_privatetemplate_from_snapshot.sh b/scripts/vm/hypervisor/xenserver/xcposs/create_privatetemplate_from_snapshot.sh
deleted file mode 100755
index 4213efc..0000000
--- a/scripts/vm/hypervisor/xenserver/xcposs/create_privatetemplate_from_snapshot.sh
+++ /dev/null
@@ -1,138 +0,0 @@
-#!/bin/bash
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-# 
-#   http://www.apache.org/licenses/LICENSE-2.0
-# 
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied.  See the License for the
-# specific language governing permissions and limitations
-# under the License.
-
-#set -x
- 
-usage() {
-  printf "Usage: %s [vhd file in secondary storage] [template directory in secondary storage] [template local dir] \n" $(basename $0) 
-}
-options='tcp,soft,timeo=133,retrans=1'
-cleanup()
-{
-  if [ ! -z $snapshotdir ]; then 
-    umount $snapshotdir
-    if [ $? -eq 0 ];  then
-      rmdir $snapshotdir
-    fi
-  fi
-  if [ ! -z $templatedir ]; then 
-    umount $templatedir
-    if [ $? -eq 0 ];  then
-      rmdir $templatedir
-    fi
-  fi
-}
-
-if [ -z $1 ]; then
-  usage
-  echo "2#no vhd file path"
-  exit 0
-else
-  snapshoturl=${1%/*}
-  vhdfilename=${1##*/}
-fi
-
-if [ -z $2 ]; then
-  usage
-  echo "3#no template path"
-  exit 0
-else
-  templateurl=$2
-fi
-
-if [ -z $3 ]; then
-  usage
-  echo "3#no template local dir"
-  exit 0
-else
-  tmpltLocalDir=$3
-fi
-
-
-snapshotdir=/run/cloud_mount/$(uuidgen -r)
-mkdir -p $snapshotdir
-if [ $? -ne 0 ]; then
-  echo "4#cann't make dir $snapshotdir"
-  exit 0
-fi
-
-mount -o $options $snapshoturl $snapshotdir
-if [ $? -ne 0 ]; then
-  rmdir $snapshotdir
-  echo "5#can not mount $snapshoturl to $snapshotdir"
-  exit 0
-fi
-
-templatedir=/run/cloud_mount/$tmpltLocalDir
-mkdir -p $templatedir
-if [ $? -ne 0 ]; then
-  templatedir=""
-  cleanup
-  echo "6#cann't make dir $templatedir"
-  exit 0
-fi
-
-mount -o $options $templateurl $templatedir
-if [ $? -ne 0 ]; then
-  rmdir $templatedir
-  templatedir=""
-  cleanup
-  echo "7#can not mount $templateurl to $templatedir"
-  exit 0
-fi
-
-VHDUTIL="vhd-util"
-
-copyvhd()
-{
-  local desvhd=$1
-  local srcvhd=$2
-  local parent=
-  parent=`$VHDUTIL query -p -n $srcvhd`
-  if [ $? -ne 0 ]; then
-    echo "30#failed to query $srcvhd"
-    cleanup
-    exit 0
-  fi
-  if [[ "${parent}"  =~ " no parent" ]]; then
-    dd if=$srcvhd of=$desvhd bs=2M     
-    if [ $? -ne 0 ]; then
-      echo "31#failed to dd $srcvhd to $desvhd"
-      cleanup
-      exit 0
-    fi
-  else
-    copyvhd $desvhd $parent
-    $VHDUTIL coalesce -p $desvhd -n $srcvhd
-    if [ $? -ne 0 ]; then
-      echo "32#failed to coalesce  $desvhd to $srcvhd"
-      cleanup
-      exit 0
-    fi
-  fi
-}
-
-templateuuid=$(uuidgen -r)
-desvhd=$templatedir/$templateuuid.vhd
-srcvhd=$snapshotdir/$vhdfilename
-copyvhd $desvhd $srcvhd
-virtualSize=`$VHDUTIL query -v -n $desvhd`
-physicalSize=`ls -l $desvhd | awk '{print $5}'`
-cleanup
-echo "0#$templateuuid#$physicalSize#$virtualSize"
-exit 0

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/971b159f/scripts/vm/hypervisor/xenserver/xcposs/patch
----------------------------------------------------------------------
diff --git a/scripts/vm/hypervisor/xenserver/xcposs/patch b/scripts/vm/hypervisor/xenserver/xcposs/patch
index 6e1002e..aa551de 100644
--- a/scripts/vm/hypervisor/xenserver/xcposs/patch
+++ b/scripts/vm/hypervisor/xenserver/xcposs/patch
@@ -27,42 +27,42 @@
 # If [source path] starts with '~', then it is path relative to management server home directory.
 # If [source path] does not start with '/' or '~', then it is relative path to the location of the patch file. 
 NFSSR.py=/usr/lib/xcp/sm
-vmops=.,0755,/usr/lib/xcp/plugins
+vmops=..,0755,/usr/lib/xcp/plugins
 ovsgre=..,0755,/usr/lib/xcp/plugins
 ovstunnel=..,0755,/usr/lib/xcp/plugins
-vmopsSnapshot=.,0755,/usr/lib/xcp/plugins
+vmopsSnapshot=..,0755,/usr/lib/xcp/plugins
 hostvmstats.py=..,0755,/usr/lib/xcp/sm
 systemvm.iso=../../../../../vms,0644,/usr/share/xcp/packages/iso/
 id_rsa.cloud=../../../systemvm,0600,/root/.ssh
-network_info.sh=..,0755,/usr/lib/xcp/bin
-setupxenserver.sh=..,0755,/usr/lib/xcp/bin
-make_migratable.sh=..,0755,/usr/lib/xcp/bin
-setup_iscsi.sh=..,0755,/usr/lib/xcp/bin
-pingtest.sh=../../..,0755,/usr/lib/xcp/bin
-dhcp_entry.sh=../../../../network/domr/,0755,/usr/lib/xcp/bin
-ipassoc.sh=../../../../network/domr/,0755,/usr/lib/xcp/bin
-save_password_to_domr.sh=../../../../network/domr/,0755,/usr/lib/xcp/bin
-networkUsage.sh=../../../../network/domr/,0755,/usr/lib/xcp/bin
-call_firewall.sh=../../../../network/domr/,0755,/usr/lib/xcp/bin
-call_loadbalancer.sh=../../../../network/domr/,0755,/usr/lib/xcp/bin
-l2tp_vpn.sh=../../../../network/domr/,0755,/usr/lib/xcp/bin
-cloud-setup-bonding.sh=..,0755,/usr/lib/xcp/bin
-copy_vhd_to_secondarystorage.sh=.,0755,/usr/lib/xcp/bin
-copy_vhd_from_secondarystorage.sh=.,0755,/usr/lib/xcp/bin
-setup_heartbeat_sr.sh=..,0755,/usr/lib/xcp/bin
-setup_heartbeat_file.sh=..,0755,/usr/lib/xcp/bin
-check_heartbeat.sh=..,0755,/usr/lib/xcp/bin
-xenheartbeat.sh=..,0755,/usr/lib/xcp/bin
-launch_hb.sh=..,0755,/usr/lib/xcp/bin
-vhd-util=..,0755,/usr/lib/xcp/bin
-vmopspremium=.,0755,/usr/lib/xcp/plugins
-create_privatetemplate_from_snapshot.sh=.,0755,/usr/lib/xcp/bin
-upgrade_snapshot.sh=..,0755,/usr/lib/xcp/bin
-cloud-clean-vlan.sh=..,0755,/usr/lib/xcp/bin
-cloud-prepare-upgrade.sh=..,0755,/usr/lib/xcp/bin
-getRouterStatus.sh=../../../../network/domr/,0755,/usr/lib/xcp/bin
-bumpUpPriority.sh=../../../../network/domr/,0755,/usr/lib/xcp/bin
-getDomRVersion.sh=../../../../network/domr/,0755,/usr/lib/xcp/bin
-router_proxy.sh=../../../../network/domr/,0755,/usr/lib/xcp/bin
-createipAlias.sh=..,0755,/usr/lib/xcp/bin
-deleteipAlias.sh=..,0755,/usr/lib/xcp/bin
+network_info.sh=..,0755,/opt/cloud/bin
+setupxenserver.sh=..,0755,/opt/cloud/bin
+make_migratable.sh=..,0755,/opt/cloud/bin
+setup_iscsi.sh=..,0755,/opt/cloud/bin
+pingtest.sh=../../..,0755,/opt/cloud/bin
+dhcp_entry.sh=../../../../network/domr/,0755,/opt/cloud/bin
+ipassoc.sh=../../../../network/domr/,0755,/opt/cloud/bin
+save_password_to_domr.sh=../../../../network/domr/,0755,/opt/cloud/bin
+networkUsage.sh=../../../../network/domr/,0755,/opt/cloud/bin
+call_firewall.sh=../../../../network/domr/,0755,/opt/cloud/bin
+call_loadbalancer.sh=../../../../network/domr/,0755,/opt/cloud/bin
+l2tp_vpn.sh=../../../../network/domr/,0755,/opt/cloud/bin
+cloud-setup-bonding.sh=..,0755,/opt/cloud/bin
+copy_vhd_to_secondarystorage.sh=..,0755,/opt/cloud/bin
+copy_vhd_from_secondarystorage.sh=..,0755,/opt/cloud/bin
+setup_heartbeat_sr.sh=..,0755,/opt/cloud/bin
+setup_heartbeat_file.sh=..,0755,/opt/cloud/bin
+check_heartbeat.sh=..,0755,/opt/cloud/bin
+xenheartbeat.sh=..,0755,/opt/cloud/bin
+launch_hb.sh=..,0755,/opt/cloud/bin
+vhd-util=..,0755,/opt/cloud/bin
+vmopspremium=..,0755,/usr/lib/xcp/plugins
+create_privatetemplate_from_snapshot.sh=..,0755,/opt/cloud/bin
+upgrade_snapshot.sh=..,0755,/opt/cloud/bin
+cloud-clean-vlan.sh=..,0755,/opt/cloud/bin
+cloud-prepare-upgrade.sh=..,0755,/opt/cloud/bin
+getRouterStatus.sh=../../../../network/domr/,0755,/opt/cloud/bin
+bumpUpPriority.sh=../../../../network/domr/,0755,/opt/cloud/bin
+getDomRVersion.sh=../../../../network/domr/,0755,/opt/cloud/bin
+router_proxy.sh=../../../../network/domr/,0755,/opt/cloud/bin
+createipAlias.sh=..,0755,/opt/cloud/bin
+deleteipAlias.sh=..,0755,/opt/cloud/bin