name: Release permissions: contents: write on: push: tags: - "[0-9]+.*" jobs: create-release: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: taiki-e/create-gh-release-action@v1 with: token: ${{ secrets.GITHUB_TOKEN }} upload-assets: needs: create-release strategy: matrix: include: - target: aarch64-unknown-linux-musl os: ubuntu-latest - target: aarch64-apple-darwin os: macos-latest - target: x86_64-apple-darwin os: macos-latest - target: x86_64-unknown-linux-musl os: ubuntu-latest - target: x86_64-pc-windows-msvc os: windows-latest - target: aarch64-pc-windows-msvc os: windows-latest - target: riscv64gc-unknown-linux-gnu os: ubuntu-latest - target: armv7-unknown-linux-musleabihf os: ubuntu-latest runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - name: Install cross-compilation tools uses: taiki-e/setup-cross-toolchain-action@v1 with: target: ${{ matrix.target }} if: startsWith(matrix.os, 'ubuntu') - uses: taiki-e/upload-rust-binary-action@v1 with: bin: lonelyradio target: ${{ matrix.target }} token: ${{ secrets.GITHUB_TOKEN }} profile: distribute - uses: taiki-e/upload-rust-binary-action@v1 with: bin: monoclient target: ${{ matrix.target }} token: ${{ secrets.GITHUB_TOKEN }} profile: distribute manifest-path: monoclient/Cargo.toml if: startsWith(matrix.os , 'ubuntu') == false - uses: taiki-e/upload-rust-binary-action@v1 with: bin: monoclient-s target: ${{ matrix.target }} token: ${{ secrets.GITHUB_TOKEN }} profile: distribute manifest-path: monoclient-s/Cargo.toml if: startsWith(matrix.os , 'ubuntu') == false