Skip to content

feature(install): Use getopt with long opts and add option to skip se… #12

feature(install): Use getopt with long opts and add option to skip se…

feature(install): Use getopt with long opts and add option to skip se… #12

Workflow file for this run

name: Build
on:
push:
branches:
- 'develop'
jobs:
build:
name: Build packages
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- os: macos-latest
TARGET: macos
CMD_BUILD: >
pyinstaller -F -w -n ledeffect-simulator -p .. app.py &&
cd dist/ &&
zip -r9 ledeffect-simulator ledeffect-simulator.app
OUT_FILE_NAME: ledeffect-simulator.zip
ASSET_MIME: application/zip
POETRY_FOLDER: ~/.local
- os: windows-latest
TARGET: windows
CMD_BUILD: pyinstaller -F -w -n ledeffect-simulator -p .. app.py
OUT_FILE_NAME: ledeffect-simulator.exe
ASSET_MIME: application/vnd.microsoft.portable-executable
POETRY_FOLDER: C:\Users\runneradmin\.local
steps:
- uses: actions/checkout@v1
- name: Set up Python 3.9
uses: actions/setup-python@v4
with:
python-version: 3.9
#- name: cache poetry install
# uses: actions/cache@v3
# with:
# path: ${{matrix.POETRY_FOLDER}}
# key: poetry-1.3.3-0
- uses: snok/install-poetry@v1.3.3
with:
virtualenvs-create: true
virtualenvs-in-project: true
- name: cache deps
id: cache-deps
uses: actions/cache@v3
with:
path: simulator/.venv
key: pydeps-${{ hashFiles('**/poetry.lock') }}
- name: Install environment
working-directory: ./simulator
run: ${{matrix.POETRY_FOLDER}}/bin/poetry install --no-interaction --no-root
if: steps.cache-deps.outputs.cache-hit != 'true'
- name: Install root environment
working-directory: ./simulator
run: ${{matrix.POETRY_FOLDER}}/bin/poetry install --no-interaction
- name: Build with pyinstaller for ${{matrix.TARGET}}
working-directory: ./simulator
run: ${{matrix.POETRY_FOLDER}}/bin/poetry run ${{matrix.CMD_BUILD}}
- name: Upload artifact
uses: actions/upload-artifact@v1.0.0
with:
name: ledeffect-simulator_${{matrix.TARGET}}
path: simulator/dist/${{matrix.OUT_FILE_NAME}}