Merge pull request #2 from biplobsd/main

Argument for specifying .spec file to build
This commit is contained in:
Jack McKew 2020-06-26 08:17:34 +10:00 committed by GitHub
commit a8dee21ad0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 13 additions and 3 deletions

View File

@ -5,6 +5,7 @@ Github Action for building executables with PyInstaller
To build your application, you need to specify where your source code is via the `path` argument, this defaults to `src`. To build your application, you need to specify where your source code is via the `path` argument, this defaults to `src`.
The source code directory should have your `.spec` file that PyInstaller generates. If you don't have one, you'll need to run PyInstaller once locally to generate it. The source code directory should have your `.spec` file that PyInstaller generates. If you don't have one, you'll need to run PyInstaller once locally to generate it.
Also if you have another program `.spec` file you can set specific pyinstaller `.spec` file by `spec: <YOUR_SPEC_FILE_NAME>`
If the `src` folder has a `requirements.txt` file, the packages will be installed into the environment before PyInstaller runs. If the `src` folder has a `requirements.txt` file, the packages will be installed into the environment before PyInstaller runs.

View File

@ -6,7 +6,7 @@ branding:
color: 'blue' color: 'blue'
inputs: inputs:
path: path:
description: 'Directory containing source code & .spec file (optional requirements.txt).' description: 'Directory containing source code (optional requirements.txt).'
required: True required: True
default: src default: src
pypi_url: pypi_url:
@ -17,6 +17,10 @@ inputs:
description: 'Specify a custom URL for PYPI Index' description: 'Specify a custom URL for PYPI Index'
required: False required: False
default: https://pypi.python.org/simple default: https://pypi.python.org/simple
spec:
description: 'Specify a file path for .spec file'
required: False
default: ""
outputs: outputs:
output: output:
description: 'The output of PyInstaller' description: 'The output of PyInstaller'
@ -27,4 +31,5 @@ runs:
args: args:
- ${{ inputs.path }} - ${{ inputs.path }}
- ${{ inputs.pypi_url }} - ${{ inputs.pypi_url }}
- ${{ inputs.pypi_index_url }} - ${{ inputs.pypi_index_url }}
- ${{ inputs.spec }}

View File

@ -17,6 +17,10 @@ PYPI_INDEX_URL=$3
WORKDIR=${SRCDIR:-/src} WORKDIR=${SRCDIR:-/src}
SPEC_FILE=${4:-*.spec}
python -m pip install --upgrade pip wheel setuptools
# #
# In case the user specified a custom URL for PYPI, then use # In case the user specified a custom URL for PYPI, then use
# that one, instead of the default one. # that one, instead of the default one.
@ -44,7 +48,7 @@ fi # [ -f requirements.txt ]
# if [[ "$@" == "" ]]; then # if [[ "$@" == "" ]]; then
pyinstaller --clean -y --dist ./dist/windows --workpath /tmp *.spec pyinstaller --clean -y --dist ./dist/windows --workpath /tmp $SPEC_FILE
chown -R --reference=. ./dist/windows chown -R --reference=. ./dist/windows
# else # else
# sh -c "$@" # sh -c "$@"