From ff5387c3f533c745e679d66833f27c4166b4c774 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=98=9F=E5=A4=96=E4=B9=8B=E7=A5=9E?= Date: Sun, 12 Jun 2022 16:32:21 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=86pr=E6=9E=84=E5=BB=BA=E4=B8=8Ecommit?= =?UTF-8?q?=E6=9E=84=E5=BB=BA=E5=88=86=E5=BC=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build-pr.yml | 89 ++++++++++++++++++++++++++++++++++ .github/workflows/build.yml | 1 - 2 files changed, 89 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/build-pr.yml diff --git a/.github/workflows/build-pr.yml b/.github/workflows/build-pr.yml new file mode 100644 index 0000000..e51370b --- /dev/null +++ b/.github/workflows/build-pr.yml @@ -0,0 +1,89 @@ +name: Build + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +on: + pull_request: + +jobs: + windows: + runs-on: windows-latest + strategy: + fail-fast: false + matrix: + python_version: + - '3.10' + name: Windows Python ${{ matrix.python_version }} + steps: + - uses: actions/checkout@v2 + + - uses: ilammy/msvc-dev-cmd@v1 + + - name: Use Python ${{ matrix.python_version }} + uses: actions/setup-python@v2 + with: + python-version: ${{ matrix.python_version }} + + - name: 🧳 Install dependencies + run: | + echo y | pip install --no-python-version-warning --disable-pip-version-check pyinstaller + echo y | pip install --no-python-version-warning --disable-pip-version-check nuitka + echo y | pip install --no-python-version-warning --disable-pip-version-check zstandard + echo y | pip install --no-python-version-warning --disable-pip-version-check pygame + echo y | pip install --no-python-version-warning --disable-pip-version-check ordered-set + + # 使用pyinstaller构建 + - name: Build pypvz with pyinstaller + run: | + pyinstaller -F main.py ` + -n pypvz-with-python${{ matrix.python_version }}-pyinstaller-x64.exe ` + --distpath ./out ` + --noconsole ` + --add-data="resources;./resources" ` + --add-data="pypvz-exec-logo.png;./pypvz-exec-logo.png" ` + -i ./pypvz.ico + + # 使用Nuitka构建 + - name: Show nuitka version + run: | + Get-ChildItem env: + python -m nuitka --version + + - name: Build pypvz with Nuitka + run: | + echo y | python -m nuitka --standalone ` + --onefile ` + --show-progress ` + --show-memory ` + --output-dir=out ` + --windows-icon-from-ico=pypvz.ico ` + --include-data-dir=resources=resources ` + --include-data-file=c:\hostedtoolcache\windows\python\${{ matrix.python_version }}*\x64\lib\site-packages\pygame\libogg-0.dll=libogg-0.dll ` + --include-data-file=c:\hostedtoolcache\windows\python\${{ matrix.python_version }}*\x64\lib\site-packages\pygame\libopus-0.dll=libopus-0.dll ` + --include-data-file=c:\hostedtoolcache\windows\python\${{ matrix.python_version }}*\x64\lib\site-packages\pygame\libopusfile-0.dll=libopusfile-0.dll ` + --include-data-file=c:\hostedtoolcache\windows\python\${{ matrix.python_version }}*\x64\lib\site-packages\pygame\libvorbisfile-3.dll=libvorbisfile-3.dll ` + --include-data-file=c:\hostedtoolcache\windows\python\${{ matrix.python_version }}*\x64\lib\site-packages\pygame\libvorbis-0.dll=libvorbis-0.dll ` + --windows-disable-console ` + -o ./out/pypvz-with-python${{ matrix.python_version }}-nuitka-msvc-x64.exe ` + main.py + + # artifact压缩包处上传包含exe和运行环境的文件夹 + - name: "Upload binarie directory" + uses: actions/upload-artifact@v2 + with: + name: DIR-python-${{ matrix.python_version }} + path: ./out/*.dist + + - name: "Upload binaries of pyinstaller" + uses: actions/upload-artifact@v2 + with: + name: pyinstaller-python-${{ matrix.python_version }} + path: ./out/*pyinstaller*.exe + + - name: "Upload binaries of pyinstaller" + uses: actions/upload-artifact@v2 + with: + name: nuitka-python-${{ matrix.python_version }} + path: ./out/*nuitka*.exe diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 83fde3b..cb5250f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -5,7 +5,6 @@ concurrency: cancel-in-progress: true on: - pull_request: push: branches: - master