chore: 增加 x86 版本测试 #13
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build Executables | |
on: | |
push: | |
branches: | |
- main | |
tags: | |
- 'v*' # 添加标签触发条件,匹配 v1.0.0 这样的标签 | |
jobs: | |
build-windows: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python | |
uses: actions/setup-python@v2 | |
with: | |
python-version: '3.x' | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install pyinstaller | |
pip install -r requirements.txt | |
- name: Build EXE | |
run: | | |
pyinstaller CursorKeepAlive.spec | |
- name: Upload Windows artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: CursorPro-Windows | |
path: dist/CursorPro.exe | |
build-macos-arm64: | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python | |
uses: actions/setup-python@v2 | |
with: | |
python-version: '3.x' | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install pyinstaller | |
pip install -r requirements.txt | |
- name: Build MacOS ARM executable | |
run: | | |
pyinstaller CursorKeepAlive.spec | |
- name: Upload MacOS ARM artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: CursorPro-MacOS-ARM64 | |
path: dist/CursorPro | |
build-macos-x86: | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python | |
uses: actions/setup-python@v2 | |
with: | |
python-version: '3.x' | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install pyinstaller | |
pip install -r requirements.txt | |
- name: Build MacOS x86 executable | |
env: | |
ARCHFLAGS: "-arch x86_64" | |
run: | | |
pyinstaller CursorKeepAlive.spec | |
- name: Upload MacOS x86 artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: CursorPro-MacOS-x86 | |
path: dist/CursorPro | |
build-linux: | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python | |
uses: actions/setup-python@v2 | |
with: | |
python-version: '3.x' | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install pyinstaller | |
pip install -r requirements.txt | |
- name: Build Linux executable | |
run: | | |
pyinstaller CursorKeepAlive.spec | |
- name: Upload Linux artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: CursorPro-Linux | |
path: dist/CursorPro | |
create-release: | |
needs: [build-windows, build-macos-arm64, build-macos-x86, build-linux] | |
runs-on: ubuntu-22.04 | |
if: startsWith(github.ref, 'refs/tags/') | |
steps: | |
- name: Download all artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
path: artifacts | |
- name: Create release archives | |
run: | | |
cd artifacts | |
zip -r CursorPro-Windows.zip CursorPro-Windows/ | |
zip -r CursorPro-MacOS-ARM64.zip CursorPro-MacOS-ARM64/ | |
zip -r CursorPro-MacOS-x86.zip CursorPro-MacOS-x86/ | |
zip -r CursorPro-Linux.zip CursorPro-Linux/ | |
- name: Create Release | |
uses: softprops/action-gh-release@v1 | |
with: | |
files: | | |
artifacts/CursorPro-Windows.zip | |
artifacts/CursorPro-MacOS-ARM64.zip | |
artifacts/CursorPro-MacOS-x86.zip | |
artifacts/CursorPro-Linux.zip | |
env: | |
GITHUB_TOKEN: ${{ secrets.TOKEN }} |