diff --git a/create_template_list.sh b/create_template_list.sh index 259c9bd..16aba2b 100755 --- a/create_template_list.sh +++ b/create_template_list.sh @@ -78,15 +78,24 @@ for file_name in ${files[@]}; do if [ ! -e "${file_name}" ]; then echo "Copying ${file_name} from ${name} to ${PWD}/${file_name}..." - qvm-run --pass-io "${name}" "cat ${path}/${file_name}" > "${file_name}" + qvm-run --pass-io "${name}" "cat ${path}/${file_name}" > "${PWD}/${file_name}" fi - sudo yum erase $(echo "${file_name}" | sed -r "s/(${version}).+$//") && { - sudo yum install "${file_name}" && { - rm -f "${file_name}" - } - } + package_name="$(echo "${file_name}" | sed -r "s/(${version}).+$//")" + + if sudo yum $YUM_OPTS list installed "$package_name" >/dev/null 2>&1 ; then + echo "Uninstalling package ${package_name}..." + sudo yum $YUM_OPTS erase "$package_name" + fi + + echo "Installing file ${file_name}..." + if sudo yum $YUM_OPTS install "${file_name}" ; then + echo "Deleting ${PWD}/${file_name}..." + rm -f "${file_name}" + fi done + +echo "Done." EOF # -----------------------------------------------------------------------------