60 lines
1.7 KiB
YAML
60 lines
1.7 KiB
YAML
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 }}
|