fix a bug #24
This file contains hidden or 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 (Release)' | ||
|
Check failure on line 1 in .github/workflows/build-release.yml
|
||
| on: | ||
| release: | ||
| types: | ||
| - created | ||
| jobs: | ||
| get-version-number: | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - name: "Checkout" | ||
| uses: actions/checkout@v5 | ||
| with: | ||
| fetch-depth: 0 | ||
| - name: "Get version number" | ||
| id: get_version | ||
| run: | | ||
| export VERSION=$(git tag --sort=-v:refname | head -n 1) | ||
| export SUB_VER=$(git rev-list --no-merges --count $(git describe --tags --abbrev=0)..HEAD) | ||
| echo "Currect Version Number: $VERSION.$SUB_VER" | ||
| echo "SUB_VER = $SUB_VER" >> version.py | ||
| # Create an environment file | ||
| echo "VERSION=${VERSION}" >> $GITHUB_OUTPUT | ||
| echo "SUB_VERSION=${SUB_VER}" >> $GITHUB_OUTPUT | ||
| outputs: | ||
| VERSION: ${{ steps.get_version.outputs.VERSION }} | ||
| SUB_VERSION: ${{ steps.get_version.outputs.SUB_VERSION }} | ||
| build-windows: | ||
| needs: get-version-number | ||
| runs-on: ${{ matrix.os }} | ||
| strategy: | ||
| matrix: | ||
| os: [windows-latest] | ||
| arch: [x86, x64, arm64] | ||
| steps: | ||
| - name: "Checkout" | ||
| uses: actions/checkout@v5 | ||
| - name: "Setup Python" | ||
| uses: actions/setup-python@v5 | ||
| with: | ||
| python-version: 3.12 # 保证兼容性 | ||
| - name: Setup Poetry | ||
| uses: snok/install-poetry@v1.4.1 | ||
| - name: "Install requirements" | ||
| run: | | ||
| poetry install | ||
| - name: "Write version number" | ||
| run: | | ||
| Add-Content -Path "version.py" -Value "SUB_VER = $env:SUB_VER" | ||
| Get-Content version.py | ||
| env: | ||
| SUB_VER: ${{ needs.get-version-number.outputs.SUB_VERSION }} | ||
| - name: "Build executeable" | ||
| uses: Nuitka/Nuitka-Action@v1.0 | ||
| with: | ||
| standalone: true | ||
| onefile: true | ||
| follow-imports: true | ||
| show-modules: true | ||
| output-dir: build | ||
| lto: yes | ||
| script-name: main.py | ||
| windows-icon-from-ico: icon.ico | ||
| file-version: ${{ needs.get-version-number.outputs.VERSION }}.${{ needs.get-version-number.outputs.SUB_VERSION }} | ||
| product-version: ${{ needs.get-version-number.outputs.VERSION }}.${{ needs.get-version-number.outputs.SUB_VERSION }} | ||
| product-name: OneDisc | ||
| enable-console: true | ||
| file-description: "OneBot Implementation for Discord" | ||
| company-name: "IT Craft Development Team" | ||
| copyright: "Copyright (c) 2023 IT Craft Development Team" | ||
| - name: "Rename application" | ||
| run: | | ||
| Move-Item -Path .\build\main.exe -Destination .\build\OneDisc_Windows_${{ matrix.arch }}.exe | ||
| - name: Upload Release Asset | ||
| run: | | ||
| gh release upload v$env:VERSION .\build\OneDisc_Windows_${{ matrix.arch }}.exe | ||
| env: | ||
| VERSION: ${{ needs.get-version-number.outputs.VERSION }} | ||
| GH_TOKEN: ${{ secret.GITHUB_TOKEN }} | ||
| build: | ||
| needs: get-version-number | ||
| runs-on: ${{ matrix.os }} | ||
| strategy: | ||
| matrix: | ||
| os: [ubuntu-22.04, macos-latest] | ||
| arch: [x86, x64, arm64] | ||
| steps: | ||
| - name: "Checkout" | ||
| uses: actions/checkout@v5 | ||
| - name: "Setup Python" | ||
| uses: actions/setup-python@v5 | ||
| with: | ||
| python-version: 3.12 | ||
| - name: Setup Poetry | ||
| uses: snok/install-poetry@v1.4.1 | ||
| - name: "Install requirements" | ||
| run: | | ||
| poetry install | ||
| - name: "Build executeable" | ||
| uses: Nuitka/Nuitka-Action@v1.0 | ||
| with: | ||
| standalone: true | ||
| onefile: true | ||
| follow-imports: true | ||
| show-modules: true | ||
| macos-app-icon: icon.ico | ||
| macos-app-version: ${{ needs.get-version-number.outputs.VERSION }} | ||
| output-dir: build | ||
| lto: yes | ||
| script-name: main.py | ||
| - name: "Rename application" | ||
| run: | | ||
| mv build/main.bin ./build/OneDisc_${{ martix.os }}_{{ martix.arch }} | ||
| cd build | ||
| zip -r onedisc.zip onedisc | ||
| - name: Upload Release Asset | ||
| run: | | ||
| gh release upload v$VERSION .\build\OneDisc_Windows_${{ matrix.arch }}.exe | ||
| env: | ||
| VERSION: ${{ needs.get-version-number.outputs.VERSION }} | ||
| GH_TOKEN: ${{ secret.GITHUB_TOKEN }} | ||