mirror of
https://github.com/DJ2LS/FreeDATA
synced 2024-05-14 08:04:33 +00:00
69 lines
No EOL
1.9 KiB
YAML
69 lines
No EOL
1.9 KiB
YAML
name: Build and Release NSIS Installer
|
|
on: [push]
|
|
|
|
jobs:
|
|
build-and-release:
|
|
runs-on: windows-latest
|
|
|
|
steps:
|
|
- name: Check out repository
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Set up Python 3.11
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: "3.11"
|
|
|
|
- name: Electron Builder
|
|
working-directory: freedata-gui
|
|
run: |
|
|
npm i
|
|
npm run build
|
|
|
|
- name: LIST ALL FILES
|
|
run: ls -R
|
|
|
|
- name: Install Python dependencies
|
|
run: |
|
|
python -m pip install --upgrade pip
|
|
pip install -r requirements.txt
|
|
|
|
- uses: robinraju/release-downloader@v1.9
|
|
with:
|
|
repository: "Hamlib/Hamlib"
|
|
fileName: " hamlib-w64-*.zip"
|
|
latest: true
|
|
extract: true
|
|
out-file-path: "freedata-server/lib/hamlib/"
|
|
|
|
- name: Build binaries
|
|
working-directory: freedata-server
|
|
run: |
|
|
python3 -m nuitka --remove-output --assume-yes-for-downloads --follow-imports --include-data-dir=lib=lib --include-data-files=lib/codec2/*=lib/codec2/ --include-data-files=config.ini.example=config.ini --standalone server.py --output-filename=freedata-server
|
|
|
|
- name: LIST ALL FILES
|
|
run: ls -R
|
|
|
|
- name: Create installer
|
|
uses: joncloud/makensis-action@v4.1
|
|
with:
|
|
script-file: "freedata-nsis-config.nsi"
|
|
arguments: '/V3'
|
|
|
|
- name: LIST ALL FILES
|
|
run: ls -R
|
|
|
|
- name: Upload artifact
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: 'FreeDATA-Installer'
|
|
path: ./FreeDATA-Installer.exe
|
|
|
|
- name: Upload Installer to Release
|
|
uses: softprops/action-gh-release@v2
|
|
if: startsWith(github.ref, 'refs/tags/v')
|
|
with:
|
|
draft: true
|
|
files: ./FreeDATA-Installer.exe
|
|
tag_name: ${{ github.ref_name }}
|
|
name: 'FreeDATA-Installer-${{ github.ref_name }}' |