Merge pull request #54 from anton-makarevich/feat/update-makamek #37
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: Build and Release Linux Desktop App | |
| permissions: | |
| contents: write | |
| on: | |
| push: | |
| branches: | |
| - main | |
| tags: | |
| - 'v*' # Run on version tags | |
| workflow_dispatch: # Allow manual triggering | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Setup .NET | |
| uses: actions/setup-dotnet@v4 | |
| with: | |
| dotnet-version: 10.x | |
| - name: Build Linux Desktop App | |
| run: dotnet publish src/MakaMek.MapEditor.Desktop/MakaMek.MapEditor.Desktop.csproj -c Release -r linux-x64 --self-contained true -p:PublishSingleFile=true -o ./publish | |
| # For tagged releases only | |
| - name: Create Release | |
| id: create_release | |
| uses: softprops/action-gh-release@v2 | |
| if: startsWith(github.ref, 'refs/tags/') | |
| with: | |
| files: ./publish/* | |
| draft: false | |
| prerelease: false | |
| generate_release_notes: false # Only one pipeline generates release notes | |
| # For all builds (including main branch pushes and manual runs) | |
| - name: Upload Linux Desktop App as Artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: MakaMek-MapEditor-Linux | |
| path: ./publish/* | |
| retention-days: 90 # Keep artifacts for 90 days |