diff --git a/scripts/run-unraid.sh b/scripts/run-unraid.sh index 24f16c9..1117439 100755 --- a/scripts/run-unraid.sh +++ b/scripts/run-unraid.sh @@ -58,14 +58,10 @@ echo "==> Build image ${IMAGE}" docker build -t "${IMAGE}" "${PROJECT_ROOT}" mkdir -p "${TEMPLATE_DIR}" +TMP_TEMPLATE="$(mktemp)" +trap 'rm -f "${TMP_TEMPLATE}"' EXIT -if [[ -f "${TEMPLATE_PATH}" ]]; then - echo "==> Aktualisiere vorhandenes Template: ${TEMPLATE_PATH}" -else - echo "==> Erstelle neues Template: ${TEMPLATE_PATH}" -fi - -cat > "${TEMPLATE_PATH}" < "${TMP_TEMPLATE}" < ${CONTAINER_NAME} @@ -104,7 +100,21 @@ cat > "${TEMPLATE_PATH}" </dev/null 2>&1; then - xmllint --noout "${TEMPLATE_PATH}" + xmllint --noout "${TMP_TEMPLATE}" +fi + +if [[ -f "${TEMPLATE_PATH}" ]]; then + if cmp -s "${TMP_TEMPLATE}" "${TEMPLATE_PATH}"; then + echo "==> Template unveraendert, kein Überschreiben: ${TEMPLATE_PATH}" + else + echo "==> Aktualisiere vorhandenes Template: ${TEMPLATE_PATH}" + mv "${TMP_TEMPLATE}" "${TEMPLATE_PATH}" + TMP_TEMPLATE="" + fi +else + echo "==> Erstelle neues Template: ${TEMPLATE_PATH}" + mv "${TMP_TEMPLATE}" "${TEMPLATE_PATH}" + TMP_TEMPLATE="" fi echo "==> Fertig"