mirror of
https://github.com/olivierkes/manuskript.git
synced 2024-10-01 09:46:30 +13:00
60 lines
2.2 KiB
YAML
60 lines
2.2 KiB
YAML
|
# This workflow is used to run the pyinstaller spec
|
||
|
# and produce a Windows build directory as artifact.
|
||
|
|
||
|
# In the future it'll also need to confirm that all
|
||
|
# of the translations and UI files are built from
|
||
|
# scratch as a condition of the tests with pytest.
|
||
|
|
||
|
name: Build for Windows
|
||
|
|
||
|
# Controls when the action will run.
|
||
|
on:
|
||
|
# Triggers the workflow on push or pull request events but only for the develop branch
|
||
|
push:
|
||
|
branches: [ develop ]
|
||
|
pull_request:
|
||
|
branches: [ develop ]
|
||
|
|
||
|
# Allows you to run this workflow manually from the Actions tab
|
||
|
workflow_dispatch:
|
||
|
|
||
|
jobs:
|
||
|
windows_build:
|
||
|
name: Building for Windows ${{ matrix.python_version }} on ${{ matrix.os }}
|
||
|
# The type of runner that the job will run on
|
||
|
runs-on: ${{ matrix.os }}
|
||
|
strategy:
|
||
|
matrix:
|
||
|
python-version: [3.9]
|
||
|
os: [windows-latest]
|
||
|
steps:
|
||
|
# We use the version from this commit and not just the current branch. This is for R&D builds too.
|
||
|
- uses: actions/checkout@v3
|
||
|
- name: Set up Python ${{ matrix.python-version }}
|
||
|
uses: actions/setup-python@v4
|
||
|
with:
|
||
|
python-version: ${{ matrix.python-version }}
|
||
|
# These should be moved to a pyproject.toml file down the line.
|
||
|
- name: Install Python build dependencies
|
||
|
run: |
|
||
|
python -m pip install --upgrade pip
|
||
|
pip install pyqt5==5.15.7 lxml pytest pytest-faulthandler language_tool_python symspellpy pyspellchecker pyenchant
|
||
|
pip install pyinstaller
|
||
|
- name: pyinstaller build
|
||
|
run: |
|
||
|
pyinstaller ./manuskript.spec
|
||
|
env:
|
||
|
manuskript_version: ${{ steps.vars.outputs.sha_short }}
|
||
|
- name: Remove W7 File Issues # https://github.com/olivierkes/manuskript/blob/develop/package/build_for_windows.sh#L85
|
||
|
run: |
|
||
|
powershell Remove-Item ./dist/manuskript/PyQt5/Qt5/bin/Qt5Bluetooth.dll;
|
||
|
powershell Remove-Item ./dist/manuskript/ucrtbase.dll;
|
||
|
powershell Remove-Item ./dist/manuskript/api-ms-win-*;
|
||
|
|
||
|
# https://docs.github.com/en/actions/using-workflows/storing-workflow-data-as-artifacts
|
||
|
- name: Upload Artifacts
|
||
|
uses: actions/upload-artifact@v3
|
||
|
with:
|
||
|
name: manuskript_windows
|
||
|
path: ./dist/manuskript/
|