55 lines
1.6 KiB
Bash
55 lines
1.6 KiB
Bash
#!/bin/bash
|
|
# postrm: truenas-proxmox-multipath remove/purge script
|
|
set -e
|
|
|
|
PLUGIN_DST="/usr/share/perl5/PVE/Storage/Custom/TrueNASMultipath.pm"
|
|
JS_DST="/usr/share/pve-manager/js/truenas-multipath.js"
|
|
TPL="/usr/share/pve-manager/index.html.tpl"
|
|
MULTIPATH_CONF="/etc/multipath.conf"
|
|
BLOCK_BEGIN="# BEGIN truenas-proxmox-multipath"
|
|
BLOCK_END="# END truenas-proxmox-multipath"
|
|
LOG_FILE="/var/log/truenas-proxmox-install.log"
|
|
|
|
log() {
|
|
echo "[truenas-proxmox-multipath] $*" | tee -a "$LOG_FILE"
|
|
}
|
|
|
|
case "$1" in
|
|
remove|purge)
|
|
if [ -f "$PLUGIN_DST" ]; then
|
|
log "Removing ${PLUGIN_DST}"
|
|
rm -f "$PLUGIN_DST"
|
|
fi
|
|
|
|
if [ -f "$JS_DST" ]; then
|
|
log "Removing ${JS_DST}"
|
|
rm -f "$JS_DST"
|
|
fi
|
|
|
|
if [ -f "$TPL" ] && grep -qF 'truenas-multipath.js' "$TPL" 2>/dev/null; then
|
|
log "Removing <script> tag from ${TPL}"
|
|
sed -i '/truenas-multipath\.js/d' "$TPL"
|
|
fi
|
|
|
|
if [ -f "$MULTIPATH_CONF" ] && grep -qF "$BLOCK_BEGIN" "$MULTIPATH_CONF"; then
|
|
log "Removing TrueNAS stanza from ${MULTIPATH_CONF}"
|
|
perl -i -0777 -pe \
|
|
"s|\n?\Q${BLOCK_BEGIN}\E.*?\Q${BLOCK_END}\E\n?||s" \
|
|
"$MULTIPATH_CONF"
|
|
fi
|
|
|
|
log "Restarting Proxmox VE services ..."
|
|
if pvedaemon restart 2>/dev/null; then log "pvedaemon restarted"; fi
|
|
if pveproxy restart 2>/dev/null; then log "pveproxy restarted"; fi
|
|
log "Done."
|
|
;;
|
|
upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
|
|
;;
|
|
*)
|
|
echo "$0: called with unknown argument '$1'" >&2
|
|
exit 0
|
|
;;
|
|
esac
|
|
|
|
exit 0
|