build-release.yml 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. name: Ensure that Release Build of Solution Builds Correctly
  2. on:
  3. push:
  4. branches: [ v2_release, v2_develop ]
  5. paths-ignore:
  6. - '**.md'
  7. pull_request:
  8. branches: [ v2_release, v2_develop ]
  9. paths-ignore:
  10. - '**.md'
  11. jobs:
  12. build_release:
  13. # Ensure that RELEASE builds are not broken
  14. runs-on: ubuntu-latest
  15. steps:
  16. - name: Checkout ${{ github.ref_name }}
  17. uses: actions/checkout@v4
  18. - name: Setup .NET Core
  19. uses: actions/setup-dotnet@v4
  20. with:
  21. dotnet-version: 8.x
  22. dotnet-quality: 'ga'
  23. - name: Build Release Terminal.Gui
  24. run: dotnet build Terminal.Gui/Terminal.Gui.csproj --no-incremental --nologo --force --configuration Release
  25. - name: Pack Release Terminal.Gui
  26. run: dotnet pack Terminal.Gui/Terminal.Gui.csproj --configuration Release --output ./local_packages
  27. - name: Restore AOT and Self-Contained projects
  28. run: |
  29. dotnet restore ./Examples/NativeAot/NativeAot.csproj -f
  30. dotnet restore ./Examples/SelfContained/SelfContained.csproj -f
  31. - name: Restore Solution Packages
  32. run: dotnet restore
  33. - name: Build Release AOT and Self-Contained
  34. run: |
  35. dotnet build ./Examples/NativeAot/NativeAot.csproj --configuration Release
  36. dotnet build ./Examples/SelfContained/SelfContained.csproj --configuration Release
  37. - name: Build Release Solution without restore
  38. run: dotnet build --configuration Release --no-restore