name: Publish Terminal UI on: release: types: [published] permissions: contents: write jobs: build: name: ${{ matrix.target }} runs-on: ${{ matrix.os }} timeout-minutes: 15 strategy: fail-fast: false matrix: include: - os: macos-15 target: darwin-arm64 - os: macos-15-intel target: darwin-x64 - os: ubuntu-latest target: linux-x64 - os: ubuntu-24.04-arm target: linux-arm64 - os: windows-latest target: win32-x64 - os: windows-11-arm target: win32-arm64 steps: - uses: actions/checkout@v4 - name: Set up Bun uses: oven-sh/setup-bun@v2 with: bun-version: 1.3.13 - name: Install dependencies working-directory: tui run: bun install --frozen-lockfile - name: Build ${{ matrix.target }} working-directory: tui run: bun run build -- ${{ matrix.target }} - name: Upload release assets env: GH_TOKEN: ${{ github.token }} TAG: ${{ github.event.release.tag_name }} shell: bash run: gh release upload "$TAG" tui/dist/nanobot-tui-* --clobber