Skip to content

Merge origin/master and update dependencies #640

Merge origin/master and update dependencies

Merge origin/master and update dependencies #640

Workflow file for this run

# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
# https://github.com/pyinstaller/pyinstaller/issues/6296#issuecomment-962446033
name: Build Executable
on: [push, pull_request]
jobs:
build_exe:
runs-on: ${{ matrix.os }}
defaults:
run:
shell: bash
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
python-version: ["3.14"] # Default to current Python; revert to 3.13 if PyInstaller breaks
poetry-version: ["2.3.2"]
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: ${{ matrix.python-version }}
- name: Install and configure Poetry
uses: snok/install-poetry@76e04a911780d5b312d89783f7b1cd627778900a # v1.4.1
with:
version: ${{ matrix.poetry-version }}
virtualenvs-in-project: true
- name: Verify Poetry installation
run: poetry --version
- name: Install dependencies
run: |
poetry install --no-interaction
poetry run pip install pyinstaller
- name: Compile python to exe
run: |
mkdir -p build;
cd build;
if [ "$RUNNER_OS" == 'Windows' ]; then
PATH_SEPARATOR=";"
else
PATH_SEPARATOR=":"
fi
poetry run pyinstaller --onefile --name proxybroker-${RUNNER_OS}-$(arch) --add-data "../proxybroker/data${PATH_SEPARATOR}data" --workpath ./tmp --distpath . --clean ../py2exe_entrypoint.py;
rm -rf tmp *.spec;
- name: Archive proxybroker artifact
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: proxybroker-build-artifacts-${{ matrix.os }}
path: build/proxybroker-*-*