publish.yml 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. name: 'publish'
  2. on:
  3. push:
  4. tags: [ v\d+\.\d+\.\d+ ]
  5. jobs:
  6. publish-tauri:
  7. permissions:
  8. contents: write
  9. strategy:
  10. fail-fast: false
  11. matrix:
  12. platform: [macos-latest, ubuntu-20.04, windows-latest]
  13. runs-on: ${{ matrix.platform }}
  14. steps:
  15. - uses: actions/checkout@v3
  16. - name: Get version
  17. id: get_version
  18. uses: battila7/get-version-action@v2
  19. - name: setup node
  20. uses: actions/setup-node@v3
  21. with:
  22. node-version: 16
  23. - name: install Rust stable
  24. uses: dtolnay/rust-toolchain@stable
  25. - name: Rust cache
  26. uses: swatinem/rust-cache@v2
  27. with:
  28. workspaces: './src-tauri -> target'
  29. - name: install dependencies (ubuntu only)
  30. if: matrix.platform == 'ubuntu-20.04'
  31. run: |
  32. sudo apt-get update
  33. sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.0-dev libappindicator3-dev librsvg2-dev patchelf libx11-dev libxdo-dev libxcb-shape0-dev libxcb-xfixes0-dev
  34. - name: install dependencies (mac only)
  35. if: matrix.platform == 'macos-latest'
  36. run: |
  37. rustup target add aarch64-apple-darwin
  38. # - uses: actions/cache@v2
  39. # with:
  40. # path: '**/node_modules'
  41. # key: ${{ runner.os }}-node-modules-${{ hashFiles('**/yarn.lock') }}
  42. - name: install frontend dependencies
  43. run: yarn install # change this to npm or pnpm depending on which one you use
  44. - name: Change Version
  45. env:
  46. VERSION: "${{ steps.get_version.outputs.version-without-v }}"
  47. run: make change-version
  48. - uses: tauri-apps/tauri-action@dev
  49. env:
  50. GITHUB_TOKEN: ${{ secrets.GITHUBTOKEN }}
  51. ENABLE_CODE_SIGNING: ${{ secrets.APPLE_CERTIFICATE }}
  52. APPLE_CERTIFICATE: ${{ secrets.APPLE_CERTIFICATE }}
  53. APPLE_CERTIFICATE_PASSWORD: ${{ secrets.APPLE_CERTIFICATE_PASSWORD }}
  54. APPLE_SIGNING_IDENTITY: ${{ secrets.APPLE_SIGNING_IDENTITY }}
  55. APPLE_ID: ${{ secrets.APPLE_ID }}
  56. APPLE_PASSWORD: ${{ secrets.APPLE_PASSWORD }}
  57. TAURI_PRIVATE_KEY: ${{ secrets.TAURI_PRIVATE_KEY }}
  58. TAURI_KEY_PASSWORD: ${{ secrets.TAURI_KEY_PASSWORD }}
  59. with:
  60. tagName: Chatbox-v__VERSION__ # the action automatically replaces \_\_VERSION\_\_ with the app version
  61. releaseName: 'Chatbox v__VERSION__'
  62. releaseBody: 'See the assets to download this version and install.'
  63. releaseDraft: true
  64. prerelease: false