Skip to content

Build PyInstaller

Build PyInstaller #592

Workflow file for this run

---
name: Build PyInstaller
on:
push:
schedule:
- cron: '15 16 * * 3,6'
jobs:
build:
name: Build package
runs-on: windows-latest
steps:
- name: Checkout
uses: actions/checkout@v6
with:
repository: pyinstaller/pyinstaller
ref: v6.17.0
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: 3.14
- name: Build 64-bit bootloader
run: |
cd bootloader
python waf --target-arch=64bit all
- name: Build 32-bit bootloader
run: |
cd bootloader
python waf --target-arch=32bit all
- name: Build packages
run: |
python -m pip install build hatchling wheel
python -m build --no-isolation
- name: Archive packages
uses: actions/upload-artifact@v6
with:
name: dist
path: dist/*
publish:
name: Publish package
permissions:
contents: write
needs: build
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/main'
steps:
- name: Download archived package
uses: actions/download-artifact@v7
with:
name: dist
- name: Find dist files
id: files
run: echo "FILES=$(find -type f -printf '%p ')" >> $GITHUB_OUTPUT
- name: Publish snapshot package
uses: meeDamian/github-release@2.0
with:
token: ${{ secrets.GITHUB_TOKEN }}
tag: snapshot
body: "Snapshot build"
files: ${{ steps.files.outputs.FILES }}
allow_override: true
gzip: false