Skip to content

v1.3.0

v1.3.0 #17

Workflow file for this run

name: Continuous Deployment
on:
release:
types: [created]
jobs:
build-and-deploy:
runs-on: ubuntu-latest
steps:
- name: Install dependencies
run: |
sudo apt-get install -y desktop-file-utils
- name: Checkout repository
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Set clean version variable
run: |
VERSION=${{ github.event.release.tag_name }}
APP_VERSION=${VERSION#v}
echo "APP_VERSION=$APP_VERSION" >> $GITHUB_ENV
echo $APP_VERSION
- name: Set up python
uses: actions/setup-python@v4
with:
python-version: '3.12'
- name: Install project dependencies
run: |
pip install -r requirements.txt
- name: Build the app with Nuitka
run: |
nuitka --enable-plugin=pyside6 --include-data-dir=./assets=./assets --standalone --onefile --lto=yes --output-filename=protodesk app.py
- name: Prepare AppImage contents
run: |
mkdir -p app.AppDir/usr/bin
cp protodesk app.AppDir/usr/bin/
cp assets/logo.png app.AppDir/protodesk.png
- name: Set up appimagetool
run: |
wget https://github.com/AppImage/appimagetool/releases/download/continuous/appimagetool-x86_64.AppImage -O appimagetool
chmod +x appimagetool
- name: Build the AppImage
run: |
./appimagetool app.AppDir Protodesk-${{ env.APP_VERSION }}-x86_64.AppImage
- name: Upload release asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ github.event.release.upload_url}}
asset_path: Protodesk-${{ env.APP_VERSION }}-x86_64.AppImage
asset_name: Protodesk-${{ env.APP_VERSION }}-x86_64.AppImage
asset_content_type: application/octet-stream