2018-11-25 10:30:19 -05:00
|
|
|
#!/bin/bash
|
|
|
|
|
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
|
|
|
|
|
|
2023-06-13 05:14:31 -04:00
|
|
|
function version_gt() { test "$(echo "$@" | tr " " "\n" | sort -V | head -n 1)" != "$1"; }
|
|
|
|
|
function version_le() { test "$(echo "$@" | tr " " "\n" | sort -V | head -n 1)" == "$1"; }
|
|
|
|
|
function version_lt() { test "$(echo "$@" | tr " " "\n" | sort -rV | head -n 1)" != "$1"; }
|
|
|
|
|
function version_ge() { test "$(echo "$@" | tr " " "\n" | sort -rV | head -n 1)" == "$1"; }
|
|
|
|
|
|
|
|
|
|
P_VER=`python3 -V | awk '{print $2}'`
|
|
|
|
|
echo "python:$P_VER"
|
2023-07-11 04:25:34 -04:00
|
|
|
sleep 1
|
2023-06-13 05:14:31 -04:00
|
|
|
|
2018-11-26 06:18:50 -05:00
|
|
|
curPath=`pwd`
|
|
|
|
|
rootPath=$(dirname "$curPath")
|
|
|
|
|
serverPath=$(dirname "$rootPath")
|
2018-11-27 06:20:46 -05:00
|
|
|
sourcePath=$serverPath/source/lib
|
2018-11-26 06:18:50 -05:00
|
|
|
libPath=$serverPath/lib
|
2018-11-25 10:30:19 -05:00
|
|
|
|
2018-11-27 06:20:46 -05:00
|
|
|
mkdir -p $sourcePath
|
2018-11-26 06:18:50 -05:00
|
|
|
mkdir -p $libPath
|
2018-11-27 06:20:46 -05:00
|
|
|
rm -rf ${libPath}/lib.pl
|
2018-11-26 00:57:06 -05:00
|
|
|
|
2022-06-10 04:42:31 -04:00
|
|
|
|
2022-07-07 03:28:20 -04:00
|
|
|
bash ${rootPath}/scripts/getos.sh
|
|
|
|
|
OSNAME=`cat ${rootPath}/data/osname.pl`
|
2022-06-30 01:35:32 -04:00
|
|
|
VERSION_ID=`cat /etc/*-release | grep VERSION_ID | awk -F = '{print $2}' | awk -F "\"" '{print $2}'`
|
|
|
|
|
echo "${OSNAME}:${VERSION_ID}"
|
2019-03-12 01:11:00 -04:00
|
|
|
|
2022-06-14 11:05:25 -04:00
|
|
|
# system judge
|
2022-06-10 04:42:31 -04:00
|
|
|
if [ "$OSNAME" == "macos" ]; then
|
2020-07-12 03:27:25 -04:00
|
|
|
brew install libmemcached
|
|
|
|
|
brew install curl
|
|
|
|
|
brew install zlib
|
|
|
|
|
brew install freetype
|
|
|
|
|
brew install openssl
|
|
|
|
|
brew install libzip
|
2022-07-03 13:01:29 -04:00
|
|
|
elif [ "$OSNAME" == "opensuse" ];then
|
|
|
|
|
echo "opensuse lib"
|
|
|
|
|
elif [ "$OSNAME" == "arch" ];then
|
|
|
|
|
echo "arch lib"
|
2022-07-04 07:15:09 -04:00
|
|
|
elif [ "$OSNAME" == "freebsd" ];then
|
|
|
|
|
echo "freebsd lib"
|
2022-07-15 14:04:31 -04:00
|
|
|
elif [ "$OSNAME" == "centos" ];then
|
|
|
|
|
echo "centos lib"
|
2022-11-27 12:40:40 -05:00
|
|
|
elif [ "$OSNAME" == "rocky" ]; then
|
|
|
|
|
echo "rocky lib"
|
2022-07-17 05:27:57 -04:00
|
|
|
elif [ "$OSNAME" == "fedora" ];then
|
|
|
|
|
echo "fedora lib"
|
|
|
|
|
elif [ "$OSNAME" == "alma" ];then
|
|
|
|
|
echo "alma lib"
|
2022-11-03 12:25:47 -04:00
|
|
|
elif [ "$OSNAME" == "ubuntu" ];then
|
|
|
|
|
echo "ubuntu lib"
|
|
|
|
|
elif [ "$OSNAME" == "debian" ]; then
|
|
|
|
|
echo "debian lib"
|
2020-07-12 03:27:25 -04:00
|
|
|
else
|
2022-07-17 05:27:57 -04:00
|
|
|
echo "OK"
|
2020-07-12 03:27:25 -04:00
|
|
|
fi
|
2022-06-14 11:04:10 -04:00
|
|
|
|
2023-03-23 03:21:22 -04:00
|
|
|
|
2023-06-28 22:54:26 -04:00
|
|
|
# HTTP_PREFIX="https://"
|
|
|
|
|
# LOCAL_ADDR=common
|
|
|
|
|
# ping -c 1 github.com > /dev/null 2>&1
|
|
|
|
|
# if [ "$?" != "0" ];then
|
|
|
|
|
# LOCAL_ADDR=cn
|
|
|
|
|
# HTTP_PREFIX="https://ghproxy.com/"
|
|
|
|
|
# fi
|
|
|
|
|
|
|
|
|
|
cn=$(curl -fsSL -m 10 -s http://ipinfo.io/json | grep "\"country\": \"CN\"")
|
2023-02-24 04:12:31 -05:00
|
|
|
HTTP_PREFIX="https://"
|
|
|
|
|
LOCAL_ADDR=common
|
2023-06-28 22:54:26 -04:00
|
|
|
if [ ! -z "$cn" ];then
|
|
|
|
|
LOCAL_ADDR=cn
|
|
|
|
|
HTTP_PREFIX="https://ghproxy.com/"
|
2023-02-24 04:12:31 -05:00
|
|
|
fi
|
|
|
|
|
|
2022-12-09 13:47:12 -05:00
|
|
|
PIPSRC="https://pypi.python.org/simple"
|
2023-02-24 04:12:31 -05:00
|
|
|
if [ "$LOCAL_ADDR" != "common" ];then
|
2022-12-09 13:47:12 -05:00
|
|
|
PIPSRC="https://pypi.tuna.tsinghua.edu.cn/simple"
|
|
|
|
|
fi
|
|
|
|
|
|
2023-07-01 00:24:04 -04:00
|
|
|
echo "local:${LOCAL_ADDR}"
|
2023-03-15 11:26:23 -04:00
|
|
|
echo "pypi source:$PIPSRC"
|
2023-06-13 05:43:39 -04:00
|
|
|
|
2022-06-26 07:07:10 -04:00
|
|
|
#面板需要的库
|
2022-12-09 13:47:12 -05:00
|
|
|
if [ ! -f /usr/local/bin/pip3 ] && [ ! -f /usr/bin/pip3 ];then
|
2022-12-09 12:51:07 -05:00
|
|
|
python3 -m pip install --upgrade pip setuptools wheel -i $PIPSRC
|
2022-06-26 07:07:10 -04:00
|
|
|
|
2023-06-13 05:43:39 -04:00
|
|
|
which pip3 && pip3 install --upgrade pip -i $PIPSRC
|
|
|
|
|
pip3 install --upgrade pip setuptools wheel -i $PIPSRC
|
|
|
|
|
fi
|
2023-03-23 03:21:22 -04:00
|
|
|
|
2022-06-26 07:07:10 -04:00
|
|
|
if [ ! -f /www/server/mdserver-web/bin/activate ];then
|
2023-06-13 05:14:31 -04:00
|
|
|
if version_ge "$P_VER" "3.11.0" ;then
|
|
|
|
|
cd /www/server/mdserver-web && python3 -m venv /www/server/mdserver-web
|
|
|
|
|
else
|
2023-06-13 06:03:53 -04:00
|
|
|
cd /www/server/mdserver-web && pip3 install -r /www/server/mdserver-web/requirements.txt -i $PIPSRC
|
2023-06-13 05:14:31 -04:00
|
|
|
cd /www/server/mdserver-web && python3 -m venv .
|
|
|
|
|
fi
|
2022-06-26 07:08:50 -04:00
|
|
|
cd /www/server/mdserver-web && source /www/server/mdserver-web/bin/activate
|
2022-06-26 07:07:10 -04:00
|
|
|
else
|
|
|
|
|
cd /www/server/mdserver-web && source /www/server/mdserver-web/bin/activate
|
|
|
|
|
fi
|
|
|
|
|
|
2023-05-30 05:53:16 -04:00
|
|
|
pip3 install --upgrade pip -i $PIPSRC
|
2022-12-09 12:51:07 -05:00
|
|
|
pip3 install --upgrade setuptools -i $PIPSRC
|
|
|
|
|
cd /www/server/mdserver-web && pip3 install -r /www/server/mdserver-web/requirements.txt -i $PIPSRC
|
2022-06-26 07:07:10 -04:00
|
|
|
|
2023-06-28 21:52:30 -04:00
|
|
|
|
|
|
|
|
# Different versions use different python lib
|
|
|
|
|
P_VER_D=`echo "$P_VER"|awk -F '.' '{print $1}'`
|
|
|
|
|
P_VER_M=`echo "$P_VER"|awk -F '.' '{print $2}'`
|
2023-06-28 21:56:24 -04:00
|
|
|
NEW_P_VER=${P_VER_D}.${P_VER_M}
|
2023-06-28 21:52:30 -04:00
|
|
|
|
|
|
|
|
if [ -f /www/server/mdserver-web/version/r${NEW_P_VER}.txt ];then
|
2023-06-28 22:11:52 -04:00
|
|
|
echo "cd /www/server/mdserver-web && pip3 install -r /www/server/mdserver-web/version/r${NEW_P_VER}.txt"
|
2023-06-28 21:52:30 -04:00
|
|
|
cd /www/server/mdserver-web && pip3 install -r /www/server/mdserver-web/version/r${NEW_P_VER}.txt -i $PIPSRC
|
|
|
|
|
fi
|
|
|
|
|
|
2023-06-28 21:59:06 -04:00
|
|
|
echo "lib ok!"
|