sd-webui-infinite-image-bro.../.github/workflows/tauri_app_build.yml

95 lines
2.5 KiB
YAML

name: tauri_app_build
on:
push:
branches:
- 'releases/**'
jobs:
build:
strategy:
matrix:
os: [windows-latest]
runs-on: ${{ matrix.os }}
permissions:
contents: write
steps:
- name: Check-out repository
uses: actions/checkout@v3
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: '3.10' # Version range or exact version of a Python version to use, using SemVer's version range syntax
architecture: 'x64' # optional x64 or x86. Defaults to x64 if not specified
cache: 'pip'
cache-dependency-path: |
**/requirements*.txt
- name: Install Dependencies
run: |
pip install -r requirements.txt
- name: Build Executable
uses: Nuitka/Nuitka-Action@main
with:
nuitka-version: main
script-name: app.py
output-file: iib_api_server
output-dir: out
- name: Upload Artifacts
uses: actions/upload-artifact@v3
with:
name: ${{ runner.os }} Build
path: |
out/*.exe
out/*.bin
out/*.app/**/*
- run: mv out/iib_api_server.exe vue/src-tauri/iib_api_server-x86_64-pc-windows-msvc.exe
- name: Install frontend dependencies
run: yarn install
working-directory: vue
- name: Rust setup
uses: dtolnay/rust-toolchain@stable
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: 18
- name: Rust cache
uses: swatinem/rust-cache@v2
with:
workspaces: './vue/src-tauri -> target'
- name: Build the app
run: |
yarn tauri-build
working-directory: vue
- name: Extract version and product name
id: extract
run: |
echo "::set-output name=PRODUCT_NAME::$(jq -r '.package.productName' vue/src-tauri/tauri.conf.json)"
echo "::set-output name=VERSION::$(jq -r '.package.version' vue/src-tauri/tauri.conf.json)"
- name: Delete drafts
uses: hugo19941994/delete-draft-releases@v1.0.0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Release
uses: softprops/action-gh-release@v1
with:
draft: true
tag_name: v${{ steps.extract.outputs.VERSION }}
files: |
vue/src-tauri/target/release/bundle/nsis/${{ steps.extract.outputs.PRODUCT_NAME }}_${{ steps.extract.outputs.VERSION }}_x64-setup.exe