Skip to content

kjlippold is building Streaming Data Loader on refs/tags/v1.3.0b4 #49

kjlippold is building Streaming Data Loader on refs/tags/v1.3.0b4

kjlippold is building Streaming Data Loader on refs/tags/v1.3.0b4 #49

Workflow file for this run

name: Streaming Data Loader Build and AWS Distribution
run-name: "${{ github.actor }} is building Streaming Data Loader on ${{ github.ref }}"
on:
release:
types: [created]
jobs:
build-ubuntu:
runs-on: ubuntu-latest
steps:
- name: Checkout Repo
uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: '3.11'
- name: Install dependencies
run: |
pip install -r requirements.txt
pip install pyinstaller==5.13.0
- name: Build App
env:
APP_VERSION: ${{ github.ref_name }}
run: |
echo $APP_VERSION > version.txt
pyinstaller \
--name 'Streaming Data Loader' \
--icon 'src/assets/app_icon.png' \
--windowed \
--onedir \
--add-data 'version.txt:.' \
--add-data 'src/assets/setup_icon.png:.' \
--add-data 'src/assets/app_icon.png:.' \
--add-data 'src/assets/connected.png:.' \
--add-data 'src/assets/database.png:.' \
--add-data 'src/assets/description.png:.' \
--add-data 'src/assets/disconnected.png:.' \
--add-data 'src/assets/exit.png:.' \
--add-data 'src/assets/pause.png:.' \
--add-data 'src/assets/resume.png:.' \
--hidden-import 'demjson3' \
--additional-hooks-dir 'pyi-hooks' \
src/app.py
- name: Zip App
run: zip -r "Streaming Data Loader.zip" "dist/Streaming Data Loader"
- name: Upload Build
uses: actions/upload-artifact@v4
with:
name: Streaming Data Loader Ubuntu
path: "Streaming Data Loader.zip"
build-macos:
runs-on: macos-latest
steps:
- name: Checkout Repo
uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: '3.11'
- name: Install dependencies
run: |
pip install -r requirements.txt
pip install pyinstaller==5.13.0
pip install dmgbuild==1.6.1
- name: Build App
env:
APP_VERSION: ${{ github.ref_name }}
run: |
echo $APP_VERSION > version.txt
pyinstaller \
--name 'Streaming Data Loader' \
--icon 'src/assets/app_icon.png' \
--windowed \
--onedir \
--add-data 'version.txt:.' \
--add-data 'src/assets/setup_icon.png:.' \
--add-data 'src/assets/app_icon.png:.' \
--add-data 'src/assets/connected.png:.' \
--add-data 'src/assets/database.png:.' \
--add-data 'src/assets/description.png:.' \
--add-data 'src/assets/disconnected.png:.' \
--add-data 'src/assets/exit.png:.' \
--add-data 'src/assets/pause.png:.' \
--add-data 'src/assets/resume.png:.' \
--hidden-import 'demjson3' \
--additional-hooks-dir 'pyi-hooks' \
src/app.py
- name: Package App DMG
run: |
dmgbuild \
-s src/package/macos/settings.py \
"Install Streaming Data Loader" \
"Streaming Data Loader.dmg"
- name: Upload build artifact
uses: actions/upload-artifact@v4
with:
name: Streaming Data Loader MacOS
path: "Streaming Data Loader.dmg"
build-windows:
runs-on: windows-latest
steps:
- name: Checkout Repo
uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: '3.11'
- name: Install dependencies
run: |
pip install -r requirements.txt
pip install pyinstaller==5.13.0
- name: Build App
env:
APP_VERSION: ${{ github.ref_name }}
shell: pwsh
run: |
echo $env:APP_VERSION > version.txt
pyinstaller `
--name "Streaming Data Loader" `
--icon src\assets\app_icon.png `
--windowed `
--onedir `
--add-data "version.txt;." `
--add-data "src\assets\setup_icon.png;." `
--add-data "src\assets\app_icon.png;." `
--add-data "src\assets\connected.png;." `
--add-data "src\assets\database.png;." `
--add-data "src\assets\description.png;." `
--add-data "src\assets\disconnected.png;." `
--add-data "src\assets\exit.png;." `
--add-data "src\assets\pause.png;." `
--add-data "src\assets\resume.png;." `
--hidden-import "demjson3" `
--additional-hooks-dir "pyi-hooks" `
src\app.py
- name: Zip App
run: tar.exe -a -c -f "Streaming Data Loader.zip" "dist/Streaming Data Loader"
- name: Upload build artifact
uses: actions/upload-artifact@v4
with:
name: Streaming Data Loader Windows
path: "Streaming Data Loader.zip"
upload-release-assets:
needs: [build-ubuntu, build-macos, build-windows]
runs-on: ubuntu-latest
steps:
- name: Checkout Repo
uses: actions/checkout@v3
- name: Download build artifact (Ubuntu)
uses: actions/download-artifact@v4
with:
name: Streaming Data Loader Ubuntu
path: release/ubuntu
- name: Download build artifact (MacOS)
uses: actions/download-artifact@v4
with:
name: Streaming Data Loader MacOS
path: release/macos
- name: Download build artifact (Windows)
uses: actions/download-artifact@v4
with:
name: Streaming Data Loader Windows
path: release/windows
- name: Upload Release Asset (Ubuntu)
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: release/ubuntu/Streaming Data Loader.zip
asset_name: Streaming Data Loader Ubuntu.zip
asset_content_type: application/zip
- name: Upload Release Asset (MacOS)
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: release/macos/Streaming Data Loader.dmg
asset_name: Streaming Data Loader MacOS.dmg
asset_content_type: application/x-apple-diskimage
- name: Upload Release Asset (Windows)
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: release/windows/Streaming Data Loader.zip
asset_name: Streaming Data Loader Windows.zip
asset_content_type: application/zip