mdserver-web/scripts/update.sh

112 lines
3.0 KiB
Bash
Raw Normal View History

2019-03-04 01:24:49 -05:00
#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
2022-06-21 13:10:16 -04:00
# LANG=en_US.UTF-8
2019-03-04 01:24:49 -05:00
is64bit=`getconf LONG_BIT`
startTime=`date +%s`
_os=`uname`
2022-06-10 03:14:00 -04:00
echo "use system: ${_os}"
2022-06-10 03:49:08 -04:00
2022-06-24 06:59:43 -04:00
if [ "$EUID" -ne 0 ]
then echo "Please run as root!"
exit
fi
2022-12-14 01:17:44 -05:00
if [ ${_os} != "Darwin" ] && [ ! -d /www/server/mdserver-web/logs ]; then
mkdir -p /www/server/mdserver-web/logs
2022-12-13 01:39:04 -05:00
fi
{
2022-12-15 04:53:17 -05:00
2022-06-20 07:19:51 -04:00
if [ ${_os} == "Darwin" ]; then
2022-06-10 03:49:08 -04:00
OSNAME='macos'
2023-05-05 05:52:13 -04:00
elif grep -Eqi "openSUSE" /etc/*-release; then
2022-07-03 11:04:50 -04:00
OSNAME='opensuse'
zypper refresh
2023-09-27 03:22:44 -04:00
elif grep -Eqi "EulerOS" /etc/*-release || grep -Eqi "openEuler" /etc/*-release; then
2023-09-10 00:36:23 -04:00
OSNAME='euler'
2023-05-05 05:52:13 -04:00
elif grep -Eqi "FreeBSD" /etc/*-release; then
2022-07-04 06:56:13 -04:00
OSNAME='freebsd'
2023-05-05 05:52:13 -04:00
elif grep -Eqi "CentOS" /etc/issue || grep -Eqi "CentOS" /etc/*-release; then
2023-05-05 10:49:39 -04:00
OSNAME='rhel'
2022-12-15 04:53:17 -05:00
yum install -y wget zip unzip
2023-05-05 05:52:13 -04:00
elif grep -Eqi "Fedora" /etc/issue || grep -Eqi "Fedora" /etc/*-release; then
2023-05-05 10:49:39 -04:00
OSNAME='rhel'
2022-12-15 04:53:17 -05:00
yum install -y wget zip unzip
2023-05-05 05:52:13 -04:00
elif grep -Eqi "Rocky" /etc/issue || grep -Eqi "Rocky" /etc/*-release; then
2023-05-05 10:49:39 -04:00
OSNAME='rhel'
2022-12-15 04:53:17 -05:00
yum install -y wget zip unzip
2023-05-05 05:52:13 -04:00
elif grep -Eqi "AlmaLinux" /etc/issue || grep -Eqi "AlmaLinux" /etc/*-release; then
2023-05-05 10:49:39 -04:00
OSNAME='rhel'
2022-12-15 04:53:17 -05:00
yum install -y wget zip unzip
2023-05-05 05:52:13 -04:00
elif grep -Eqi "Amazon Linux" /etc/issue || grep -Eqi "Amazon Linux" /etc/*-release; then
2022-12-15 04:53:17 -05:00
OSNAME='amazon'
yum install -y wget zip unzip
2023-05-05 05:52:13 -04:00
elif grep -Eqi "Debian" /etc/issue || grep -Eqi "Debian" /etc/*-release; then
2022-06-10 03:49:08 -04:00
OSNAME='debian'
2022-12-15 04:53:17 -05:00
apt install -y wget zip unzip
2023-05-05 05:52:13 -04:00
elif grep -Eqi "Ubuntu" /etc/issue || grep -Eqi "Ubuntu" /etc/*-release; then
2022-12-15 04:53:17 -05:00
OSNAME='ubuntu'
apt install -y wget zip unzip
2023-05-05 05:52:13 -04:00
elif grep -Eqi "Raspbian" /etc/issue || grep -Eqi "Raspbian" /etc/*-release; then
2022-12-15 04:53:17 -05:00
OSNAME='raspbian'
2019-03-04 01:24:49 -05:00
else
OSNAME='unknow'
fi
2022-08-05 14:48:26 -04:00
2023-02-24 04:14:28 -05:00
HTTP_PREFIX="https://"
LOCAL_ADDR=common
2023-09-08 23:55:40 -04:00
cn=$(curl -fsSL -m 10 -s http://ipinfo.io/json | grep "\"country\": \"CN\"")
2023-09-15 01:24:19 -04:00
if [ ! -z "$cn" ] || [ "$?" == "0" ] ;then
2023-02-24 04:14:28 -05:00
LOCAL_ADDR=cn
2023-09-15 01:24:19 -04:00
HTTP_PREFIX="https://ghproxy.com/"
2023-02-24 04:14:28 -05:00
fi
2023-09-08 23:57:15 -04:00
echo "local:${LOCAL_ADDR}"
2023-02-24 04:14:28 -05:00
2023-04-04 00:42:47 -04:00
CP_CMD=/usr/bin/cp
if [ -f /bin/cp ];then
CP_CMD=/bin/cp
fi
2023-02-24 04:14:28 -05:00
if [ "$LOCAL_ADDR" != "common" ];then
2023-03-28 05:47:59 -04:00
curl --insecure -sSLo /tmp/master.zip https://code.midoks.me/midoks/mdserver-web/archive/master.zip
2023-04-04 00:42:47 -04:00
cd /tmp && unzip /tmp/master.zip
$CP_CMD -rf /tmp/mdserver-web/* /www/server/mdserver-web
rm -rf /tmp/master.zip
rm -rf /tmp/mdserver-web
2022-08-05 15:03:13 -04:00
else
2023-03-14 08:03:53 -04:00
curl --insecure -sSLo /tmp/master.zip https://codeload.github.com/midoks/mdserver-web/zip/master
2022-12-31 08:06:55 -05:00
2023-04-04 00:42:47 -04:00
cd /tmp && unzip /tmp/master.zip
$CP_CMD -rf /tmp/mdserver-web-master/* /www/server/mdserver-web
rm -rf /tmp/master.zip
rm -rf /tmp/mdserver-web-master
2022-12-31 08:06:55 -05:00
fi
2022-06-20 11:55:33 -04:00
2020-07-10 03:59:04 -04:00
#pip uninstall public
2022-06-10 03:14:00 -04:00
echo "use system version: ${OSNAME}"
2022-06-27 00:54:32 -04:00
cd /www/server/mdserver-web && bash scripts/update/${OSNAME}.sh
2019-03-04 01:24:49 -05:00
2022-11-14 23:53:58 -05:00
bash /etc/rc.d/init.d/mw restart
2022-11-10 09:49:24 -05:00
bash /etc/rc.d/init.d/mw default
2022-11-10 09:51:16 -05:00
if [ -f /usr/bin/mw ];then
rm -rf /usr/bin/mw
fi
2022-10-05 23:12:01 -04:00
if [ ! -e /usr/bin/mw ]; then
if [ ! -f /usr/bin/mw ];then
2022-11-10 09:49:24 -05:00
ln -s /etc/rc.d/init.d/mw /usr/bin/mw
2022-10-05 23:12:01 -04:00
fi
fi
2019-03-04 01:24:49 -05:00
endTime=`date +%s`
2022-06-10 04:11:35 -04:00
((outTime=($endTime-$startTime)/60))
2022-12-13 01:39:04 -05:00
echo -e "Time consumed:\033[32m $outTime \033[0mMinute!"
2023-08-26 04:04:35 -04:00
} 1> >(tee mw-update.log) 2>&1