actions-marketplace-validations/Versatile PyInstaller
Customisable GitHub Action to package python scripts into executables for different OS's
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Stalelast commit Nov 30, 2024
- License
- MIT
Pinned Snippet
uses: actions-marketplace-validations/sayyid5416_pyinstaller@31a3d88828ae07b9658ecef15818d006b7333d8a # no releases — HEAD as of 2026-07-10tags can be moved; commit SHAs can't. why a SHA?
Inputs
| name | description | required | default |
|---|---|---|---|
| spec | path of your '.py' or '.spec' file. - This file will be used to create executable. - If .py: Generated spec file will also be uploaded as artifact | yes | "" |
| requirements | path of your requirements.txt file | — | "" |
| options | Options to set for pyinstaller command Ex: options: '--onedir, -F' (seperated by comma and space) - Supported options: Check readme | — | "" |
| spec_options | Custom parameters for spec file. (won't work with .py spec file) Ex: spec_options: '--debug' | — | "" |
| python_ver | specific python version you want to use | — | 3.10 |
| python_arch | specific python architecture you want to use | — | x64 |
| pyinstaller_ver | specific pyinstaller version you want to use | — | "" |
| exe_path | Path on runner-os, where generated executable files are stored | — | ./dist |
| upload_exe_with_name | If passed, uploads executable artifact with this name. Else, artifact won't be uploaded. | — | "" |
| clean_checkout | If true, perform a clean checkout; if false, skip cleaning. Cleaning will remove all existing local files not in the repository during checkout. If you use utilities like pyinstaller-versionfile, set this to false. | — | true |
| lfs | Whether to download Git-LFS files (passed to actions/checkout) | — | false |
| compression_level | Level of compression for archive (between 0 and 9). 0 = No compression, 9 = Max compression. | — | 6 |
Outputs
| name | description |
|---|---|
| executable_path | path on runner-os, where generated executable files are stored |
| is_uploaded | true, if packaged executable has been uploaded as artifact |