Files
jm_download_python/linux/build.py

63 lines
1.8 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#打包脚本
import subprocess, os, sys
# 建立venv虚拟环境
print("建立venv虚拟环境")
subprocess.run("python3 -m venv venv", shell=True)
# 安装requirements.txt中的库
print("安装requirements.txt中的库")
subprocess.run("venv/bin/pip3 install -r ../requirements.txt", shell=True)
# 列出pip安装的库
print("列出pip安装的库")
subprocess.run("venv/bin/pip3 list", shell=True)
# pyinstaller打包程序
print("pyinstaller打包中")
print("打包main.py")
subprocess.run("venv/bin/pyinstaller --onefile command/main.py", shell=True)
print("打包help.py")
subprocess.run("venv/bin/pyinstaller --onefile command/help.py", shell=True)
print("打包Download.py")
subprocess.run("venv/bin/pyinstaller --onefile command/Download.py", shell=True)
print("打包version.py")
subprocess.run("venv/bin/pyinstaller --onefile command/version.py", shell=True)
# 清理build和*.spec文件
print("清理build和*.spec文件")
subprocess.run("rm -rf build/", shell=True)
print("正在清理*.spec文件")
subprocess.run("rm -rf main.spec version.spec Download.spec help.spec", shell=True)
# 重命名dist为jm_
print("重命名dist为jm_")
dir_path = os.path.dirname(os.path.abspath(__file__))
print("当前路径: " , f"{dir_path}")
pass
os.rename(f"{dir_path}/dist", "jm_")
# 测试程序
print("测试程序")
print("建立测试脚本test.sh")
subprocess.run("""
cat <<EOF>> test.sh
#!/bin/sh
cd ./jm_/
./main
./main help
./main version
EOF
""", shell=True)
print("赋予test.sh可执行权限")
subprocess.run("chmod +x test.sh", shell=True)
print("运行test.sh测试脚本")
subprocess.run("/bin/sh test.sh", shell=True)
# 测试完毕删除test.sh脚本
print("测试完毕删除test.sh脚本")
subprocess.run("rm -rf test.sh", shell=True)
print("大功告成~感谢您的使用")