From 75aa8dcf9dd5ab0ab3b94b4a477191894a12c923 Mon Sep 17 00:00:00 2001 From: Jaime Melis Date: Tue, 24 Feb 2015 12:00:31 +0100 Subject: [PATCH] fs/clone is no longer a link to common --- src/datastore_mad/remotes/common/clone | 74 ------------------------- src/datastore_mad/remotes/fs/clone | 75 +++++++++++++++++++++++++- 2 files changed, 74 insertions(+), 75 deletions(-) delete mode 100755 src/datastore_mad/remotes/common/clone mode change 120000 => 100755 src/datastore_mad/remotes/fs/clone diff --git a/src/datastore_mad/remotes/common/clone b/src/datastore_mad/remotes/common/clone deleted file mode 100755 index 078985bdc5..0000000000 --- a/src/datastore_mad/remotes/common/clone +++ /dev/null @@ -1,74 +0,0 @@ -#!/bin/bash - -# -------------------------------------------------------------------------- # -# Copyright 2002-2014, OpenNebula Project (OpenNebula.org), C12G Labs # -# # -# Licensed 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. # -#--------------------------------------------------------------------------- # - -############################################################################### -# This script is used to copy a VM image (SRC) to the image repository as DST -# Several SRC types are supported -############################################################################### - -# -------- Set up the environment to source common tools & conf ------------ - -if [ -z "${ONE_LOCATION}" ]; then - LIB_LOCATION=/usr/lib/one -else - LIB_LOCATION=$ONE_LOCATION/lib -fi - -. $LIB_LOCATION/sh/scripts_common.sh - -DRIVER_PATH=$(dirname $0) -source ${DRIVER_PATH}/../libfs.sh - -# -------- Get cp and datastore arguments from OpenNebula core ------------ - -DRV_ACTION=$1 -ID=$2 - -XPATH="${DRIVER_PATH}/../xpath.rb -b $DRV_ACTION" - -unset i XPATH_ELEMENTS - -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/BRIDGE_LIST \ - /DS_DRIVER_ACTION_DATA/IMAGE/PATH) - -unset i - -BASE_PATH="${XPATH_ELEMENTS[i++]}" -BRIDGE_LIST="${XPATH_ELEMENTS[i++]}" -SRC="${XPATH_ELEMENTS[i++]}" - -set_up_datastore "$BASE_PATH" "$RESTRICTED_DIRS" "$SAFE_DIRS" - -DST=`generate_image_path` - -# ------------ Copy the image to the repository ------------- - -if [ -n "$BRIDGE_LIST" ]; then - log "Copying remotely local image $SRC to the image repository" - DST_HOST=`get_destination_host $ID` - ssh_exec_and_log "$DST_HOST" "mkdir -p $BASE_PATH; cp -f $SRC $DST" "Error copying $SRC to $DST in $DST_HOST" -else - log "Copying local image $SRC to the image repository" - mkdir -p "$BASE_PATH" - exec_and_log "cp -f $SRC $DST" "Error copying $SRC to $DST" -fi - -echo "$DST" diff --git a/src/datastore_mad/remotes/fs/clone b/src/datastore_mad/remotes/fs/clone deleted file mode 120000 index 305cd254d4..0000000000 --- a/src/datastore_mad/remotes/fs/clone +++ /dev/null @@ -1 +0,0 @@ -../common/clone \ No newline at end of file diff --git a/src/datastore_mad/remotes/fs/clone b/src/datastore_mad/remotes/fs/clone new file mode 100755 index 0000000000..078985bdc5 --- /dev/null +++ b/src/datastore_mad/remotes/fs/clone @@ -0,0 +1,74 @@ +#!/bin/bash + +# -------------------------------------------------------------------------- # +# Copyright 2002-2014, OpenNebula Project (OpenNebula.org), C12G Labs # +# # +# Licensed 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. # +#--------------------------------------------------------------------------- # + +############################################################################### +# This script is used to copy a VM image (SRC) to the image repository as DST +# Several SRC types are supported +############################################################################### + +# -------- Set up the environment to source common tools & conf ------------ + +if [ -z "${ONE_LOCATION}" ]; then + LIB_LOCATION=/usr/lib/one +else + LIB_LOCATION=$ONE_LOCATION/lib +fi + +. $LIB_LOCATION/sh/scripts_common.sh + +DRIVER_PATH=$(dirname $0) +source ${DRIVER_PATH}/../libfs.sh + +# -------- Get cp and datastore arguments from OpenNebula core ------------ + +DRV_ACTION=$1 +ID=$2 + +XPATH="${DRIVER_PATH}/../xpath.rb -b $DRV_ACTION" + +unset i XPATH_ELEMENTS + +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/BRIDGE_LIST \ + /DS_DRIVER_ACTION_DATA/IMAGE/PATH) + +unset i + +BASE_PATH="${XPATH_ELEMENTS[i++]}" +BRIDGE_LIST="${XPATH_ELEMENTS[i++]}" +SRC="${XPATH_ELEMENTS[i++]}" + +set_up_datastore "$BASE_PATH" "$RESTRICTED_DIRS" "$SAFE_DIRS" + +DST=`generate_image_path` + +# ------------ Copy the image to the repository ------------- + +if [ -n "$BRIDGE_LIST" ]; then + log "Copying remotely local image $SRC to the image repository" + DST_HOST=`get_destination_host $ID` + ssh_exec_and_log "$DST_HOST" "mkdir -p $BASE_PATH; cp -f $SRC $DST" "Error copying $SRC to $DST in $DST_HOST" +else + log "Copying local image $SRC to the image repository" + mkdir -p "$BASE_PATH" + exec_and_log "cp -f $SRC $DST" "Error copying $SRC to $DST" +fi + +echo "$DST"