#!/bin/bash

#rbt

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 rm 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/IMAGE/SOURCE \
                    /DS_DRIVER_ACTION_DATA/IMAGE/DATASTORE_ID \
                    /DS_DRIVER_ACTION_DATA/DATASTORE/BASE_PATH)

unset i

SRC="${XPATH_ELEMENTS[i++]}"
DS_ID="${XPATH_ELEMENTS[i++]}"
BASE_PATH="${XPATH_ELEMENTS[i++]}"

# ------------ Remove the image from the repository ------------

LV_NAME="lv-one-image-${ID}"
VG_NAME="vg-one-${DS_ID}"
DEV="/dev/${VG_NAME}/${LV_NAME}"

$SUDO $LVREMOVE --yes $DEV

