legendary/.github/workflows/python.yml
derrod 64639a5520 [core/cli/utils] Extremely WIP Steam Sync from 2022
Unfinished and might not even work anymore, left here as a reference for future work.
2023-11-16 02:22:18 +01:00

92 lines
2 KiB
YAML

name: Python
on:
push:
branches: [ '*' ]
pull_request:
branches: [ '*' ]
jobs:
pyinstaller:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: ['ubuntu-20.04', 'windows-2019', 'macos-11']
fail-fast: false
max-parallel: 3
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: '3.9'
- name: Legendary dependencies and build tools
run: pip3 install --upgrade
setuptools
pyinstaller
requests
filelock
pefile
vdf
Pillow
- name: Optional dependencies (WebView)
run: pip3 install --upgrade "pywebview<4.0"
if: runner.os != 'macOS'
- name: Set strip option on non-Windows
id: strip
run: echo ::set-output name=option::--strip
if: runner.os != 'Windows'
- name: Build
working-directory: legendary
run: pyinstaller
--onefile
--name legendary
${{ steps.strip.outputs.option }}
-i ../assets/windows_icon.ico
cli.py
env:
PYTHONOPTIMIZE: 1
- uses: actions/upload-artifact@v3
with:
name: ${{ runner.os }}-package
path: legendary/dist/*
deb:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- name: Dependencies
run: |
sudo apt install ruby
sudo gem install fpm
- name: Build
run: fpm
--input-type python
--output-type deb
--python-package-name-prefix python3
--deb-suggests python3-webview
--maintainer "Rodney <rodney@rodney.io>"
--category python
--depends "python3 >= 3.9"
setup.py
- name: Os version
id: os_version
run: |
source /etc/os-release
echo ::set-output name=version::$NAME-$VERSION_ID
- uses: actions/upload-artifact@v3
with:
name: ${{ steps.os_version.outputs.version }}-deb-package
path: ./*.deb