2021-02-26 23:04:10 +01:00

187 lines
6.0 KiB
YAML

name: Build
on: push
jobs:
windows:
name: Build for Windows
runs-on: windows-2019
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Setup Python
uses: actions/setup-python@v2
with:
python-version: '3.7'
- name: Check Python install
run: |
which python
python --version
python -c "import struct; print(struct.calcsize('P') * 8)"
which pip
pip --version
- name: Install Python dependencies
run: |
pip3 install -U setuptools wheel pip
pip3 install -r requirements.txt
pip3 install -r requirements_gui.txt
pip3 install py2exe
- name: Check Python dependencies
run: |
python3 -c "from PySide2 import __version__; print(__version__)"
python3 -c "from PySide2.QtCore import __version__; print(__version__)"
python3 -c "from PySide2.QtCore import QLibraryInfo; print(QLibraryInfo.location(QLibraryInfo.LibrariesPath))"
- name: Build
run: |
$ver = (findstr version .\syncplay\__init__.py).split("'")[1]
echo $ver
echo "VER=$ver" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
python buildPy2exe.py
New-Item -Path syncplay_v$ver -Name "syncplay.ini" -Value $null
- name: Prepare for deployment
run: dir
- name: Deploy portable
uses: actions/upload-artifact@v2
with:
name: Syncplay_${{ env.VER }}_Portable
path: |
syncplay_v${{ env.VER }}
- name: Deploy installer
uses: actions/upload-artifact@v2
with:
name: Syncplay-${{ env.VER }}-Setup.exe
path: |
Syncplay-${{ env.VER }}-Setup.exe
# macos:
# name: Build for macOS
# runs-on: macos-10.15
# steps:
# - name: Checkout
# uses: actions/checkout@v2
# - name: Setup Python
# uses: actions/setup-python@v2
# with:
# python-version: '3.7'
# - name: Check Python install
# run: |
# which python3
# python3 --version
# which pip3
# pip3 --version
# - name: Install Python dependencies
# run: |
# pip3 install -U setuptools wheel pip
# pip3 install twisted[tls] appnope requests certifi
# pip3 install shiboken2==5.13.1 pyside2==5.13.1
# pip3 install py2app
# - name: Check Python dependencies
# run: |
# python3 -c "from PySide2 import __version__; print(__version__)"
# python3 -c "from PySide2.QtCore import __version__; print(__version__)"
# python3 -c "from PySide2.QtCore import QLibraryInfo; print(QLibraryInfo.location(QLibraryInfo.LibrariesPath))"
# python3 -c "import ssl; print(ssl)"
# python3 -c "from py2app.recipes import pyside2"
# echo $DYLD_LIBRARY_PATH
# echo $DYLD_FRAMEWORK_PATH
# python3 -c 'from distutils.sysconfig import get_config_var; print(get_config_var("LDLIBRARY"))'
# - name: Build
# run: |
# python3 ci/pyside2_linker.py
# export LIBPYTHON_FOLDER="$(python3 -c 'from distutils.sysconfig import get_config_var; print(get_config_var("LIBDIR"))')"
# ln -s $LIBPYTHON_FOLDER/libpython3.7m.dylib $LIBPYTHON_FOLDER/libpython3.7.dylib
# export DYLD_FRAMEWORK_PATH="$(python3 -c 'from PySide2.QtCore import QLibraryInfo; print(QLibraryInfo.location(QLibraryInfo.LibrariesPath))')"
# export DYLD_LIBRARY_PATH="$(python3 -c 'import os.path, PySide2; print(os.path.dirname(PySide2.__file__))'):$(python3 -c 'import os.path, shiboken2; print(os.path.dirname(shiboken2.__file__))')"
# python3 buildPy2app.py py2app
# - name: Prepare for deployment
# run: |
# ls -al
# export VER="$(cat syncplay/__init__.py | awk '/version/ {gsub("\047", "", $3); print $NF}')"
# echo "VER=$VER" >> $GITHUB_ENV
# mkdir dist_actions
# ci/macos-deploy.sh
# ls -al dist_actions
# - name: Deploy
# uses: actions/upload-artifact@v2
# with:
# name: Syncplay_${{ env.VER }}.dmg
# path: |
# dist_actions/Syncplay_${{ env.VER }}.dmg
# appimage:
# name: Build AppImage
# runs-on: ubuntu-latest
# steps:
# - name: Checkout
# uses: actions/checkout@v2
# - name: Install dependencies
# run: |
# sudo apt-get install libxkbcommon-x11-0
# - name: Build
# run: ci/appimage-script.sh
# - name: Prepare for deployment
# run: |
# ls -al
# export VER="$(cat syncplay/__init__.py | awk '/version/ {gsub("\047", "", $3); print $NF}')"
# echo "VER=$VER" >> $GITHUB_ENV
# mkdir dist_actions
# ci/appimage-deploy.sh
# ls -al dist_actions
# - name: Deploy
# uses: actions/upload-artifact@v2
# with:
# name: Syncplay-${{ env.VER }}-x86_64.AppImage
# path: |
# dist_actions/Syncplay-${{ env.VER }}-x86_64.AppImage
# deb:
# name: Build Debian package
# runs-on: ubuntu-20.04
# steps:
# - name: Checkout
# uses: actions/checkout@v2
# - name: Build
# run: ci/deb-script.sh
# - name: Build server
# run: ci/deb-server-script.sh
# - name: Test
# run: ci/deb-installation-test.sh
# - name: Prepare for deployment
# run: |
# ls -al
# export VER="$(cat syncplay/__init__.py | awk '/version/ {gsub("\047", "", $3); print $NF}')"
# echo "VER=$VER" >> $GITHUB_ENV
# mkdir dist_actions
# mv /tmp/syncplay.deb dist_actions/syncplay_${VER}.deb
# mv /tmp/syncplay-server.deb dist_actions/syncplay-server_${VER}.deb
# ls -al dist_actions
# - name: Deploy
# uses: actions/upload-artifact@v2
# with:
# name: syncplay.deb
# path: |
# dist_actions/syncplay*.deb