Skip to content

Release 0.4.1

Release 0.4.1 #1

Workflow file for this run

name: release.yml
on:
push:
tags:
- v*.*.* # Match semantic version tags
jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Create a GitHub release
env:
GH_TOKEN: ${{ github.token }}
tag: ${{ github.ref_name }}
run: |
gh release create "$tag" \
--title="${GITHUB_REPOSITORY#*/} ${tag#v}" \
--generate-notes
upload_binaries:
needs: release
strategy:
fail-fast: false
matrix:
include:
- { on: "ubuntu-latest", target: "x86_64-unknown-linux-gnu" }
- { on: "macos-latest", target: "aarch64-apple-darwin" }
- { on: "windows-latest", target: "x86_64-pc-windows-msvc" }
name: Upload release artifacts on ${{ matrix.os }}
runs-on: ${{ matrix.on }}
permissions:
contents: write
env:
CARGO_BUILD_TARGET: ${{ matrix.target }}
steps:
- uses: actions/checkout@v4
- name: Install rust
uses: dtolnay/rust-toolchain@1.78.0
- name: Build release binary
run: cargo build --release --manifest-path cargo-workspaces/Cargo.toml --bin cargo-workspaces
- name: Upload release artifact
env:
GH_TOKEN: ${{ github.token }}
tag: ${{ github.ref_name }}
run: |
file="cargo-workspaces-$CARGO_BUILD_TARGET-$tag"
cp cargo-workspaces/target/release/cargo-workspaces "$file"
gh release upload "$tag" \
"$file" \
--clobber