1
0
mirror of https://github.com/OpenNebula/one.git synced 2025-03-21 14:50:08 +03:00

feature #1437: Bridge list now on DATASTORE template rather than in file

This commit is contained in:
Tino Vazquez 2012-09-24 17:13:29 +02:00
parent afe615d326
commit 1e4fb19a45
6 changed files with 29 additions and 26 deletions

View File

@ -160,13 +160,7 @@ function check_restricted {
# @return host to be used as bridge
#-------------------------------------------------------------------------------
function get_destination_host {
CONF_FILE_PATH="$1/bridgelist"
BRIDGE_HOST=`head -1 $CONF_FILE_PATH`
sed -i -e "1d" $CONF_FILE_PATH
echo $BRIDGE_HOST >> $CONF_FILE_PATH
echo $BRIDGE_HOST
HOSTS_ARRAY=($BRIDGE_LIST)
ARRAY_INDEX=`expr $1 % ${#HOSTS_ARRAY[@]}`
echo ${HOSTS_ARRAY[$ARRAY_INDEX]}
}

View File

@ -1,3 +0,0 @@
bridge-esx-1.mydomain
bridge-esx-2.mydomain
bridge-esx-3.mydomain

View File

@ -50,20 +50,25 @@ while IFS= read -r -d '' element; do
XPATH_ELEMENTS[i++]="$element"
done < <($XPATH /DS_DRIVER_ACTION_DATA/DATASTORE/BASE_PATH \
/DS_DRIVER_ACTION_DATA/DATASTORE/TEMPLATE/UMASK \
/DS_DRIVER_ACTION_DATA/DATASTORE/TEMPLATE/BRIDGE_LIST \
/DS_DRIVER_ACTION_DATA/DATASTORE/ID \
/DS_DRIVER_ACTION_DATA/IMAGE/PATH)
/DS_DRIVER_ACTION_DATA/IMAGE/PATH \
/DS_DRIVER_ACTION_DATA/IMAGE/ID)
BASE_PATH="${XPATH_ELEMENTS[0]}"
UMASK="${XPATH_ELEMENTS[1]}"
DS_ID="${XPATH_ELEMENTS[2]}"
SRC="${XPATH_ELEMENTS[3]}"
BRIDGE_LIST="${XPATH_ELEMENTS[2]}"
DS_ID="${XPATH_ELEMENTS[3]}"
SRC="${XPATH_ELEMENTS[4]}"
IMAGE_ID="${XPATH_ELEMENTS[5]}"
SRC_FOLDER=`basename $SRC`
set_up_datastore "$BASE_PATH" "$RESTRICTED_DIRS" "$SAFE_DIRS" "$UMASK"
DST=`generate_image_path`
DST_FOLDER=`basename $DST`
DST_HOST=`get_destination_host $(dirname $0)`
DST_HOST=`get_destination_host $IMAGE_ID`
if [ "$USE_SSH" != "yes" ]; then
USERNAME=`echo $(cat $VMWARERC |grep ":username:"|cut -d":" -f 3|tr -d '"')`

View File

@ -54,19 +54,23 @@ done < <($XPATH /DS_DRIVER_ACTION_DATA/DATASTORE/BASE_PATH \
/DS_DRIVER_ACTION_DATA/DATASTORE/ID \
/DS_DRIVER_ACTION_DATA/DATASTORE/TEMPLATE/RESTRICTED_DIRS \
/DS_DRIVER_ACTION_DATA/DATASTORE/TEMPLATE/SAFE_DIRS \
/DS_DRIVER_ACTION_DATA/DATASTORE/TEMPLATE/BRIDGE_LIST \
/DS_DRIVER_ACTION_DATA/DATASTORE/TEMPLATE/UMASK \
/DS_DRIVER_ACTION_DATA/IMAGE/PATH \
/DS_DRIVER_ACTION_DATA/IMAGE/TEMPLATE/MD5 \
/DS_DRIVER_ACTION_DATA/IMAGE/TEMPLATE/SHA1)
/DS_DRIVER_ACTION_DATA/IMAGE/TEMPLATE/SHA1 \
/DS_DRIVER_ACTION_DATA/IMAGE/ID)
BASE_PATH="${XPATH_ELEMENTS[0]}"
DS_ID="${XPATH_ELEMENTS[1]}"
RESTRICTED_DIRS="${XPATH_ELEMENTS[2]}"
SAFE_DIRS="${XPATH_ELEMENTS[3]}"
UMASK="${XPATH_ELEMENTS[4]}"
SRC="${XPATH_ELEMENTS[5]}"
MD5="${XPATH_ELEMENTS[6]}"
SHA1="${XPATH_ELEMENTS[7]}"
BRIDGE_LIST="${XPATH_ELEMENTS[4]}"
UMASK="${XPATH_ELEMENTS[5]}"
SRC="${XPATH_ELEMENTS[6]}"
MD5="${XPATH_ELEMENTS[7]}"
SHA1="${XPATH_ELEMENTS[8]}"
IMAGE_ID="${XPATH_ELEMENTS[9]}"
# Set up the datastore
set_up_datastore "$BASE_PATH" "$RESTRICTED_DIRS" "$SAFE_DIRS" "$UMASK"
@ -74,7 +78,7 @@ set_up_datastore "$BASE_PATH" "$RESTRICTED_DIRS" "$SAFE_DIRS" "$UMASK"
FE_DST=`generate_image_path`
DST_FOLDER=`basename $FE_DST`
DST="/vmfs/volumes/$DS_ID/$DST_FOLDER"
DST_HOST=`get_destination_host $(dirname $0)`
DST_HOST=`get_destination_host $IMAGE_ID`
if [ "$USE_SSH" != "yes" ]; then
USERNAME=`echo $(cat $VMWARERC |grep ":username:"|cut -d":" -f 3|tr -d '"')`

View File

@ -54,7 +54,8 @@ done < <($XPATH /DS_DRIVER_ACTION_DATA/DATASTORE/BASE_PATH \
/DS_DRIVER_ACTION_DATA/DATASTORE/TEMPLATE/UMASK \
/DS_DRIVER_ACTION_DATA/DATASTORE/ID \
/DS_DRIVER_ACTION_DATA/IMAGE/FSTYPE \
/DS_DRIVER_ACTION_DATA/IMAGE/SIZE)
/DS_DRIVER_ACTION_DATA/IMAGE/SIZE \
/DS_DRIVER_ACTION_DATA/IMAGE/ID)
BASE_PATH="${XPATH_ELEMENTS[0]}"
RESTRICTED_DIRS="${XPATH_ELEMENTS[1]}"
@ -63,13 +64,14 @@ UMASK="${XPATH_ELEMENTS[3]}"
IMAGE_DS_ID="${XPATH_ELEMENTS[4]}"
FSTYPE="${XPATH_ELEMENTS[5]}"
SIZE="${XPATH_ELEMENTS[6]}"
IMAGE_ID="${XPATH_ELEMENTS[7]}"
set_up_datastore "$BASE_PATH" "$RESTRICTED_DIRS" "$SAFE_DIRS" "$UMASK"
DST=`generate_image_path`
DST_DIR=`dirname $DST`
DST_FOLDER=`basename $DST`
DST_HOST=`get_destination_host $(dirname $0)`
DST_HOST=`get_destination_host $IMAGE_ID`
if [ "$USE_SSH" != "yes" ]; then
USERNAME=`echo $(cat $VMWARERC |grep ":username:"|cut -d":" -f 3|tr -d '"')`

View File

@ -49,12 +49,13 @@ while IFS= read -r -d '' element; do
XPATH_ELEMENTS[i++]="$element"
done < <($XPATH /DS_DRIVER_ACTION_DATA/IMAGE/SOURCE \
/DS_DRIVER_ACTION_DATA/DATASTORE/ID \
)
/DS_DRIVER_ACTION_DATA/IMAGE/ID)
SRC="${XPATH_ELEMENTS[0]}"
DS_NAME="${XPATH_ELEMENTS[1]}"
IMAGE_ID="${XPATH_ELEMENTS[2]}"
DST_HOST=`get_destination_host $(dirname $0)`
DST_HOST=`get_destination_host $IMAGE_ID`
DST_FOLDER=`basename $SRC`
if [ "$USE_SSH" != "yes" ]; then