name: Build and Release permissions: contents: write on: push: tags: - "v*" jobs: build: runs-on: windows-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Setup Python uses: actions/setup-python@v5 with: python-version: "3.11" - name: Install dependencies run: | python -m pip install --upgrade pip pip install -r requirements.txt pip install pyinstaller - name: Build exe run: | pyinstaller --noconfirm --onefile --windowed --name "Real-Debrid-Downloader" real_debrid_downloader_gui.py - name: Pack release zip shell: pwsh run: | New-Item -ItemType Directory -Path release -Force | Out-Null Copy-Item "dist/Real-Debrid-Downloader.exe" "release/Real-Debrid-Downloader.exe" Compress-Archive -Path "release/*" -DestinationPath "Real-Debrid-Downloader-win64.zip" -Force - name: Install Inno Setup shell: pwsh run: | choco install innosetup --no-progress -y - name: Build installer shell: pwsh run: | $version = "${{ github.ref_name }}".TrimStart('v') & "C:\Program Files (x86)\Inno Setup 6\ISCC.exe" "/DMyAppVersion=$version" "/DMySourceExe=..\\dist\\Real-Debrid-Downloader.exe" "/DMyOutputDir=..\\release" "installer\\RealDebridDownloader.iss" - name: Publish GitHub Release uses: softprops/action-gh-release@v2 with: files: | Real-Debrid-Downloader-win64.zip release/Real-Debrid-Downloader-Setup-*.exe env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}