From 0e18485206ab69b18613cc9e85b337726418a4d5 Mon Sep 17 00:00:00 2001 From: Jacob Hummer Date: Tue, 23 Jul 2024 18:33:22 -0500 Subject: [PATCH] Create pyinstaller.yml --- .github/workflows/pyinstaller.yml | 60 +++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 .github/workflows/pyinstaller.yml diff --git a/.github/workflows/pyinstaller.yml b/.github/workflows/pyinstaller.yml new file mode 100644 index 0000000000..89080eb015 --- /dev/null +++ b/.github/workflows/pyinstaller.yml @@ -0,0 +1,60 @@ +name: pyinstaller +on: + push: + branches: ["main"] + paths-ignore: + - .* + - .*/** + - demos/** + - docs/** + - .git* + - CONTRIBUTING.md + - LICENSE + - README.md + - "!.github/workflows/pyinstaller.yml" + pull_request: + paths-ignore: + - .* + - .*/** + - demos/** + - docs/** + - .git* + - CONTRIBUTING.md + - LICENSE + - README.md + - "!.github/workflows/pyinstaller.yml" + workflow_call: +concurrency: + # When run via `workflow_call` the `github.workflow` and `github.ref` are the + # same as the parent so we need a differentiation suffix. + group: ${{ github.workflow }}-${{ github.ref }}-pyinstaller + cancel-in-progress: true +jobs: + pyinstaller: + strategy: + fail-fast: false + matrix: + include: + # https://packaging.python.org/en/latest/specifications/platform-compatibility-tags/#platform-tag + # https://pypi.org/project/pyinstaller/#files + - { os: ubuntu-20.04, target: manylinux2014_x86_64 } + - { os: macos-13, target: macosx_10_13_universal2 } + - { os: windows-latest, target: win_amd64 } + runs-on: ${{ matrix.os }} + steps: + - uses: actions/checkout@v4 + with: + submodules: recursive + - uses: actions/setup-python@v5 + with: + python-version: "3.12" + - run: pip install pipx + - run: pipx install pipenv + - run: pipenv install --dev -e . + - run: pipenv install pyinstaller + - run: pipenv run bikeshed update + - run: pipenv run pyinstaller -y --collect-data=bikeshed --name=bikeshed ./bikeshed.py # bikeshed/__main__.py + - uses: actions/upload-artifact@v4 + with: + name: bikeshed-${{ matrix.target }} + path: dist/bikeshed