42 lines
1.2 KiB
YAML
42 lines
1.2 KiB
YAML
name: Build Windows EXE
|
|
|
|
on:
|
|
push:
|
|
branches: [ "main" ]
|
|
workflow_dispatch: # 允许手动触发
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: windows-latest
|
|
|
|
steps:
|
|
- name: Setup Node
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
node-version: 20
|
|
- name: Checkout code
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Set up Python
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: '3.9.1' # 建议指定版本,确保稳定性
|
|
cache: 'pip' # 自动缓存依赖,加快下次构建速度
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
python -m pip install --upgrade pip
|
|
python -m pip install pyinstaller keyboard pywin32
|
|
|
|
- name: Build with PyInstaller
|
|
run: |
|
|
# --clean 确保清理旧缓存
|
|
# --admin-access 如果你的程序需要监听全局钩子,有时需要此权限
|
|
python -m PyInstaller --noconfirm --onefile --windowed --name "Shortcut_Sync_PotPlayer" main.py
|
|
|
|
- name: Upload Artifact
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: PotPlayer-Sync-Tool
|
|
path: dist/Shortcut_Sync_PotPlayer.exe
|
|
retention-days: 7 # 临时文件保存7天 |