release.yml 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. name: Build and Release (Linux)
  2. on:
  3. push:
  4. tags:
  5. - 'v*'
  6. permissions:
  7. contents: write
  8. jobs:
  9. build-linux:
  10. name: Build on Ubuntu
  11. runs-on: ubuntu-latest
  12. steps:
  13. - name: Checkout repository
  14. uses: actions/checkout@v4
  15. - name: Install dependencies
  16. run: |
  17. sudo apt-get update
  18. sudo apt-get install -y ninja-build libgl1-mesa-dev libegl1-mesa-dev
  19. - name: Configure CMake
  20. run: cmake --preset ubuntu-ci-x86_64
  21. - name: Build Plugin
  22. run: cmake --build --preset ubuntu-ci-x86_64
  23. - name: Package Artifacts
  24. run: |
  25. cd build_x86_64/rundir/RelWithDebInfo
  26. tar -czvf ../../../cd-rec-status-linux-x86_64.tar.gz .
  27. - name: Upload Build Artifact
  28. uses: actions/upload-artifact@v4
  29. with:
  30. name: cd-rec-status-linux-x86_64
  31. path: cd-rec-status-linux-x86_64.tar.gz
  32. release:
  33. name: Create GitHub Release
  34. needs: build-linux
  35. runs-on: ubuntu-latest
  36. steps:
  37. - name: Download artifacts
  38. uses: actions/download-artifact@v4
  39. with:
  40. path: artifacts
  41. merge-multiple: true
  42. - name: Publish Release
  43. uses: softprops/action-gh-release@v2
  44. with:
  45. files: artifacts/*.tar.gz
  46. generate_release_notes: true