Update publish workflow to include GUI

This commit is contained in:
whimsical-c4lic0 2026-03-01 01:11:26 -06:00
parent 1bc47ad62b
commit 26b98b8d31
3 changed files with 40 additions and 12 deletions

View File

@ -32,23 +32,41 @@ jobs:
dotnet publish "OF DL.Cli/OF DL.Cli.csproj" -p:Version=${{ steps.version.outputs.version }} \
-p:PackageVersion=${{ steps.version.outputs.version }} \
-p:WarningLevel=0 -c Release -r win-x86 \
--self-contained true -p:PublishSingleFile=true -o outwin
--self-contained true -p:PublishSingleFile=true -o outwin-cli
dotnet publish "OF DL.Gui/OF DL.Gui.csproj" -p:Version=${{ steps.version.outputs.version }} \
-p:PackageVersion=${{ steps.version.outputs.version }} \
-p:WarningLevel=0 -c Release -r win-x86 \
--self-contained true -p:PublishSingleFile=true -o outwin-gui
dotnet publish "OF DL.Cli/OF DL.Cli.csproj" -p:Version=${{ steps.version.outputs.version }} \
-p:PackageVersion=${{ steps.version.outputs.version }} \
-p:WarningLevel=0 -c Release -r linux-x64 \
--self-contained true -p:PublishSingleFile=true -o outlin
--self-contained true -p:PublishSingleFile=true -o outlin-cli
- name: Copy and patch extra files
run: |
cp ./OF\ DL.Cli/rules.json outwin/
chmod +x ./outlin/OF\ DL
cd outwin
cd outlin-cli
chmod +x "OF DL.Cli"
echo "➤ Running OF DL binary (timeout)"
timeout --preserve-status --kill-after=5s 30s ../outlin/OF\ DL --non-interactive || true
timeout --preserve-status --kill-after=5s 30s "./OF DL.Cli" --non-interactive || true
echo "➤ Binary finished"
echo "➤ Combine OF DL.Cli and OF DL.Gui into a single release folder"
cd ..
mv outwin-gui outwin
cd outwin
mv "../outwin-cli/OF DL.Cli.exe" .
mv ../outlin-cli/config.conf .
rm *.pdb
mv "OF DL.Gui.exe" "OF DL.exe"
mv "OF DL.Cli.exe" "OF DL - Legacy.exe"
echo "➤ Remove unneeded playwright binaries"
rm -rf .playwright/node/darwin*
rm -rf .playwright/node/linux*
echo "➤ Creating folder for CDM"
mkdir -p cdm/devices/chrome_1610
@ -57,12 +75,8 @@ jobs:
cp /home/rhys/ffmpeg/ffmpeg-7.1.1-essentials_build/bin/ffprobe.exe .
cp /home/rhys/ffmpeg/ffmpeg-7.1.1-essentials_build/LICENSE LICENSE.ffmpeg
echo "➤ Remove unneeded playwright binaries"
rm -rf .playwright/node/darwin*
rm -rf .playwright/node/linux*
echo "➤ Creating release zip"
zip -r ../OFDLV${{ steps.version.outputs.version }}.zip OF\ DL.exe e_sqlite3.dll rules.json config.conf cdm chromium-scripts .playwright playwright.ps1 ffmpeg.exe ffprobe.exe LICENSE.ffmpeg
zip -r ../OFDLV${{ steps.version.outputs.version }}.zip .playwright *
cd ..
- name: Create release and upload artifact

6
.gitignore vendored
View File

@ -374,3 +374,9 @@ venv/
# Generated docs
/site
# Builds
/outwin
/outwin-cli
/outwin-gui
/outlin-cli

View File

@ -19,15 +19,23 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Akka" Version="1.5.60"/>
<PackageReference Include="Avalonia" Version="11.0.10"/>
<PackageReference Include="Avalonia.Desktop" Version="11.0.10"/>
<PackageReference Include="Avalonia.Fonts.Inter" Version="11.0.10"/>
<PackageReference Include="Avalonia.Themes.Fluent" Version="11.0.10"/>
<PackageReference Include="BouncyCastle.NetCore" Version="2.2.1"/>
<PackageReference Include="CommunityToolkit.Mvvm" Version="8.2.2"/>
<PackageReference Include="HtmlAgilityPack" Version="1.12.4"/>
<PackageReference Include="Microsoft.Data.Sqlite" Version="10.0.3"/>
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="10.0.3"/>
<PackageReference Include="PuppeteerSharp" Version="20.2.6"/>
<PackageReference Include="Microsoft.Playwright" Version="1.58.0"/>
<PackageReference Include="Newtonsoft.Json" Version="13.0.4"/>
<PackageReference Include="protobuf-net" Version="3.2.56"/>
<PackageReference Include="Serilog" Version="4.3.1"/>
<PackageReference Include="Serilog.Sinks.File" Version="7.0.0"/>
<PackageReference Include="System.Reactive" Version="6.1.0"/>
<PackageReference Include="xFFmpeg.NET" Version="7.2.0"/>
</ItemGroup>
<ItemGroup Condition="'$(Configuration)' == 'Debug'">