feat: implement .NET-based launcher and updater for automated applica… #61
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Dev Release | |
| on: | |
| push: | |
| branches: [main, master] | |
| workflow_dispatch: | |
| permissions: | |
| contents: write | |
| jobs: | |
| build: | |
| runs-on: windows-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Set up Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.11" | |
| cache: pip | |
| - name: Set up .NET | |
| uses: actions/setup-dotnet@v4 | |
| with: | |
| dotnet-version: '9.x' | |
| - name: Install dependencies | |
| # We need to install requirements for makefile.py to run (e.g. tabulate) | |
| run: pip install -r requirements.txt | |
| - name: Build Launcher | |
| run: dotnet publish launcher/Hammer5ToolsLauncher.csproj -c Release -o launcher/publish | |
| - name: Build Updater | |
| run: dotnet publish updater/Hammer5ToolsUpdater.csproj -c Release -o updater/publish | |
| - name: Build Python App | |
| run: python makefile.py --build-app | |
| - name: Copy launcher and updater into dist folder | |
| run: | | |
| copy launcher\publish\Hammer5ToolsLauncher.exe hammer5tools\Hammer5ToolsLauncher.exe | |
| copy updater\publish\Hammer5ToolsUpdater.exe hammer5tools\Hammer5ToolsUpdater.exe | |
| - name: Create Zip Archive | |
| run: python makefile.py --archive | |
| - name: Read app version | |
| id: version | |
| run: | | |
| $ver = python -c "from src.common import app_version; print(app_version)" | |
| echo "app_version=$ver" >> $env:GITHUB_OUTPUT | |
| - name: Upload to dev release | |
| uses: softprops/action-gh-release@v2 | |
| with: | |
| tag_name: dev | |
| name: "Dev Build v${{ steps.version.outputs.app_version }} (${{ github.sha }})" | |
| body: | | |
| Automated dev build from commit ${{ github.sha }} on branch `${{ github.ref_name }}`. | |
| This build includes the new .NET Launcher and Updater. | |
| prerelease: true | |
| files: dist/hammer5tools.zip |