v3.4.3 #18
Workflow file for this run
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 | |
| on: | |
| push: | |
| tags: | |
| - v** | |
| jobs: | |
| build-and-upload-windows: | |
| runs-on: windows-latest | |
| steps: | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v2 | |
| with: | |
| node-version: v18.19.0 | |
| - name: Checkout code | |
| uses: actions/checkout@v2 | |
| - name: Build the app (Windows) | |
| shell: bash | |
| run: | | |
| npm install -g pnpm | |
| pnpm install | |
| pnpm build:windows -p never | |
| - name: Compress binary | |
| shell: powershell | |
| run: | | |
| cd release | |
| $files = Get-ChildItem -Path . -Filter "*exe*" | |
| $files += Get-ChildItem -Path . -Filter "latest.yml" | |
| Compress-Archive $files -DestinationPath bridge-win.zip | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: bridge-win | |
| path: .\release\bridge-win.zip | |
| build-and-upload-linux: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v2 | |
| with: | |
| node-version: v18.19.0 | |
| - name: Checkout code | |
| uses: actions/checkout@v2 | |
| - name: Install builder dependencies | |
| shell: bash | |
| run: | | |
| sudo apt install elfutils -y | |
| git config --global --add protocol.file.allow always | |
| - name: Build the app (Linux) | |
| shell: bash | |
| run: | | |
| npm install -g pnpm | |
| pnpm install | |
| pnpm build:linux -p never | |
| - name: Compress binaries | |
| shell: bash | |
| run: | | |
| cd release | |
| find . -type f \( -name "*.AppImage" -o -name "latest-linux.yml" \) -print0 | tar -czvf bridge-linux.tar.gz --null -T - | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: bridge-linux | |
| path: ./release/bridge-linux.tar.gz | |
| build-and-upload-macos: | |
| runs-on: macos-latest | |
| steps: | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v2 | |
| with: | |
| node-version: v18.19.0 | |
| - name: Checkout code | |
| uses: actions/checkout@v2 | |
| - name: Build the app (OSX) | |
| shell: bash | |
| run: | | |
| npm install -g pnpm | |
| pnpm install | |
| pnpm build:mac -p never | |
| - name: Compress binaries | |
| shell: bash | |
| run: | | |
| cd release | |
| find . -type f \( -name "*.dmg" -o -name "latest-mac.yml" \) -print0 | tar -czvf bridge-mac.tar.gz --null -T - | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: bridge-mac | |
| path: ./release/bridge-mac.tar.gz | |
| release-all: | |
| runs-on: ubuntu-latest | |
| needs: | |
| - build-and-upload-linux | |
| - build-and-upload-macos | |
| - build-and-upload-windows | |
| steps: | |
| - name: Download Windows binaries | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: bridge-win | |
| - name: Download Linux binaries | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: bridge-linux | |
| - name: Download OSX binaries | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: bridge-mac | |
| - name: Unpack all | |
| shell: bash | |
| run: | | |
| mkdir releaseables | |
| unzip bridge-win.zip -d ./releaseables | |
| tar -xzf bridge-linux.tar.gz -C ./releaseables | |
| tar -xzf bridge-mac.tar.gz -C ./releaseables | |
| - name: Create release | |
| uses: ncipollo/release-action@v1 | |
| with: | |
| artifacts: "releaseables/*" | |
| tag: ${{ github.ref.name }} | |
| replacesArtifacts: true | |
| allowUpdates: true |