Skip to content

Python Installer

Python Installer #3

name: Python Installer
on:
workflow_dispatch:
inputs:
file-path:
description: 'The path of the main file'
default: 'main.py'
required: true
type: string
jobs:
env-test:
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
pv: [python3]
name: Testing Enviroments
runs-on: '${{ matrix.os }}'
steps:
- name: 'Testing terminal on ${{ matrix.os }}'
run: echo Hello, world!
- name: 'Testing ${{ matrix.pv }} on ${{ matrix.os }}'
run: '${{ matrix.pv }} -v'
- name: 'Testing pip using ${{ matrix.pv }} on ${{ matrix.os }}'
run: '${{ matrix.pv }} -m pip -v'
env-builds:
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
pv: [python3]
name: Building Enviroments and output
needs: env-test
runs-on: '${{ matrix.os }}'
steps:
- name: 'Upgrading pip on ${{ matrix.pv }} in ${{ matrix.os }}'
run: '${{ matrix.pv }} -m pip install --upgrade pip'
- name: 'Installing pyinstaller on ${{ matrix.os }}'
run: |
${{ matrix.pv }} -m pip install pyinstaller
${{ matrix.pv }} -m pyinstaller
- name: 'Packaging by pyinstaller'
run: |
${{ matrix.pv }} -m pyinstaller -D -n app-${{ matrix.os }} - ${{ matrix.pv }} ${{ inputs.file-path }}