name: Build for Windows on: pull_request: types: - opened - synchronize - reopened - ready_for_review paths-ignore: - "**.md" workflow_dispatch: inputs: branch: required: false default: "main" jobs: build-windows-app: name: Release Windows runs-on: windows-latest steps: - name: Checkout code uses: actions/checkout@v5 with: ref: ${{ github.event.inputs.branch }} fetch-depth: 0 - name: Setup flutter uses: subosito/flutter-action@v2 with: channel: stable flutter-version-file: pubspec.yaml - name: Add fastforge and Inno Setup run: | dart pub global activate fastforge choco install innosetup - name: Add Chinese language file for Inno Setup run: | Copy-Item "windows/packaging/exe/ChineseSimplified.isl" "C:\Program Files (x86)\Inno Setup 6\Languages\ChineseSimplified.isl" shell: pwsh - name: Set and Extract version shell: pwsh run: lib/scripts/build.ps1 - name: Build Windows run: | fastforge package --platform windows --targets exe --flutter-build-args="dart-define-from-file=pili_release.json" - name: Prepare Upload run: | mkdir -p Release/PiliPlus-Win mkdir -p PiliPlus-Win-Setup mv build/windows/x64/runner/Release/* Release/PiliPlus-Win/ mv dist/**/*.exe PiliPlus-Win-Setup/ - name: Upload windows file release uses: actions/upload-artifact@v4 with: name: windows-release path: Release - name: Upload windows setup release uses: actions/upload-artifact@v4 with: name: windows-setup-release path: PiliPlus-Win-Setup