Unraid-SlackPack/plugins/ipmitool-plugin.plg

158 lines
3.8 KiB
XML
Executable File

<?xml version='1.0' standalone='yes'?>
<!DOCTYPE PLUGIN [
<!ENTITY name "ipmitool-plugin">
<!ENTITY author "dmacias72">
<!ENTITY version "2015.12.20">
<!ENTITY launch "Tools/IPMItool">
<!ENTITY gitURL "https://raw.githubusercontent.com/&author;/unRAID-plugins/master">
<!ENTITY pluginURL "&gitURL;/plugins/&name;.plg">
<!ENTITY pkgURL "&gitURL;/source/packages">
<!ENTITY pkg "ipmitool-1.8.13-x86_64-1_slack.txz">
<!ENTITY md5 "3301f21f0d66160877f90ffc3278703b">
<!ENTITY plgpath "/boot/config/plugins/&name;">
<!ENTITY plgname "&name;-&version;-x86_64-1">
<!ENTITY emhttp "/usr/local/emhttp/plugins/&name;">
]>
<PLUGIN name="&name;" author="&author;" version="&version;" launch="&launch;" pluginURL="&pluginURL;">
<CHANGES>
###2015.12.20
- fixed "Waiting for events" triggering notification on system start
- reorganize events page
- add switchbuttons
- move from UnRAID OS to System Information under Tools menu
- add unRAID version check
###2015.12.14
- make sure and remove old plugin
###2015.12.11
- change repo
- change install and remove method
###2015.11.17
- fix permissions for events
###2015.11.10b
- deleted wrong page file
###2015.11.10
- stop event monitoring on plugin removal
###2015.11.09
- minor bug fixes
###2015.11.08
- add settings page
- add event notifications
- add remote IPMI access
###2015.08.15
- update for unRAID 6.1-rc+ only
###2015.05.07a
- fix bug
###2015.05.07
- initial unRAID 6 release.
</CHANGES>
<!--
This plugin uses ipmitool to display sensor readings
-->
<FILE Name="&plgpath;/&pkg;" Run="upgradepkg --install-new">
<URL>&pkgURL;/&pkg;</URL>
<MD5>&md5;</MD5>
</FILE>
<!--
The 'plugin' package file.
-->
<FILE Name="&plgpath;/&plgname;.txz">
<URL>&gitURL;/archive/&plgname;.txz</URL>
</FILE>
<!--
The 'plugin' package MD5 hash.
-->
<FILE Name="&plgpath;/&plgname;.md5">
<URL>&gitURL;/archive/&plgname;.md5</URL>
</FILE>
<!--
The 'install' script.
-->
<FILE Run="/bin/bash" Method="install">
<INLINE>
#Verify unRAID Version
source /etc/unraid-version
if [[ ${version:0:3} == 6.0 ]]; then
echo "unRAID version 6.1 or higher is required"
exit 1
fi
#remove old plugin name directory
if [ ! -d /usr/local/emhttp/plugins/ipmitool ]; then
rm -rf /usr/local/emhttp/plugins/ipmitool
fi
# Verify and install plugin package
sum1=$(/usr/bin/md5sum &plgpath;/&plgname;.txz)
sum2=$(/usr/bin/cat &plgpath;/&plgname;.md5)
if [ "${sum1:0:32}" != "${sum2:0:32}" ]; then
echo "Wrong 'plugin' package md5 hash."
rm &plgpath;/&plgname;.txz \
&plgpath;/&plgname;.md5
exit 1
else
upgradepkg --install-new &plgpath;/&plgname;.txz
fi
# Update file permissions of scripts
chmod +0755 &emhttp;/scripts/*
# Load impi drivers
echo "loading ipmi drivers..."
modprobe ipmi_si
modprobe ipmi_devintf
#restart event daemon
&emhttp;/scripts/stop
sleep 1
&emhttp;/scripts/start
# Cleaning old source files
find &plgpath;/ -type f -iname "&name;*.txz" ! -iname "*&version;*" -delete
find &plgpath;/ -type f -iname "&name;*.md5" ! -iname "*&version;*" -delete
echo ""
echo "-----------------------------------------------------------"
echo " &name; has been installed."
echo " This plugin requires Dynamix webGui to operate"
echo " Copyright 2015, &author;"
echo " Version: &version;"
echo "-----------------------------------------------------------"
echo ""
</INLINE>
</FILE>
<!--
The 'remove' script.
-->
<FILE Run="/bin/bash" Method="remove">
<INLINE>
&emhttp;/scripts/stop
removepkg &plgpath;/&plgname;.txz \
&plgpath;/&pkg;
rm -rf &emhttp; \
-rf &plgpath;
echo "unloading ipmi drivers..."
modprobe -r ipmi_si
modprobe -r ipmi_devintf
echo ""
echo "-----------------------------------------------------------"
echo " &name; has been removed."
echo " Copyright 2015, &author;"
echo " Version: &version;"
echo "-----------------------------------------------------------"
echo ""
</INLINE>
</FILE>
</PLUGIN>