功能: 添加Linux上传工具打包脚本
- 新增upload-tool/build.sh支持Linux环境打包 - 支持自动检测操作系统并打包对应版本 - 为部署脚本集成自动打包功能做准备
This commit is contained in:
97
upload-tool/build.sh
Normal file
97
upload-tool/build.sh
Normal file
@@ -0,0 +1,97 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
# 玩玩云上传工具打包脚本 (Linux版本)
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
echo "========================================"
|
||||||
|
echo "玩玩云上传工具打包脚本"
|
||||||
|
echo "========================================"
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
# 颜色定义
|
||||||
|
RED='\033[0;31m'
|
||||||
|
GREEN='\033[0;32m'
|
||||||
|
YELLOW='\033[1;33m'
|
||||||
|
NC='\033[0m'
|
||||||
|
|
||||||
|
# 检查Python是否安装
|
||||||
|
if ! command -v python3 &> /dev/null; then
|
||||||
|
echo -e "${RED}[错误] 未检测到Python 3,请先安装Python 3.7+${NC}"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo -e "${GREEN}Python版本:${NC} $(python3 --version)"
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
# 进入上传工具目录
|
||||||
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||||
|
cd "$SCRIPT_DIR"
|
||||||
|
|
||||||
|
echo "[1/4] 安装依赖包..."
|
||||||
|
pip3 install -r requirements.txt --quiet || {
|
||||||
|
echo -e "${RED}[错误] 依赖安装失败${NC}"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
echo -e "${GREEN}✓ 依赖安装完成${NC}"
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "[2/4] 安装PyInstaller..."
|
||||||
|
pip3 install pyinstaller --quiet || {
|
||||||
|
echo -e "${RED}[错误] PyInstaller安装失败${NC}"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
echo -e "${GREEN}✓ PyInstaller安装完成${NC}"
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "[3/4] 打包程序..."
|
||||||
|
|
||||||
|
# 检测操作系统
|
||||||
|
OS_TYPE=$(uname -s)
|
||||||
|
|
||||||
|
if [[ "$OS_TYPE" == "Linux" ]]; then
|
||||||
|
echo -e "${YELLOW}注意: 在Linux系统上打包将生成Linux可执行文件${NC}"
|
||||||
|
echo -e "${YELLOW}如需Windows exe文件,请在Windows系统上运行 build.bat${NC}"
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
# 打包为Linux可执行文件
|
||||||
|
pyinstaller --onefile --name="wanwanyun-upload-tool" upload_tool.py || {
|
||||||
|
echo -e "${RED}[错误] 打包失败${NC}"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
# 重命名并添加执行权限
|
||||||
|
mv dist/wanwanyun-upload-tool "dist/玩玩云上传工具" 2>/dev/null || true
|
||||||
|
chmod +x "dist/玩玩云上传工具" 2>/dev/null || true
|
||||||
|
|
||||||
|
elif [[ "$OS_TYPE" == MINGW* ]] || [[ "$OS_TYPE" == MSYS* ]] || [[ "$OS_TYPE" == CYGWIN* ]]; then
|
||||||
|
echo "检测到Windows环境,打包为Windows exe..."
|
||||||
|
pyinstaller --onefile --windowed --name="玩玩云上传工具" --icon=NONE upload_tool.py || {
|
||||||
|
echo -e "${RED}[错误] 打包失败${NC}"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
else
|
||||||
|
echo -e "${YELLOW}未识别的操作系统: $OS_TYPE${NC}"
|
||||||
|
echo "尝试打包..."
|
||||||
|
pyinstaller --onefile --name="wanwanyun-upload-tool" upload_tool.py || {
|
||||||
|
echo -e "${RED}[错误] 打包失败${NC}"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo -e "${GREEN}✓ 打包完成${NC}"
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "[4/4] 清理临时文件..."
|
||||||
|
rm -rf build
|
||||||
|
rm -f *.spec
|
||||||
|
echo -e "${GREEN}✓ 清理完成${NC}"
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "========================================"
|
||||||
|
echo -e "${GREEN}打包完成!${NC}"
|
||||||
|
echo "输出目录: dist/"
|
||||||
|
ls -lh dist/ | tail -n +2 | awk '{print " - " $9 " (" $5 ")"}'
|
||||||
|
echo "========================================"
|
||||||
Reference in New Issue
Block a user