Skip to content

Commit d8b4d8a

Browse files
committed
fix: release
1 parent 07b51b3 commit d8b4d8a

File tree

1 file changed

+21
-20
lines changed

1 file changed

+21
-20
lines changed

.github/workflows/release.yml

Lines changed: 21 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,20 @@ name: Release
22

33
on:
44
push:
5-
tags:
6-
- "v*"
5+
tags: ["v*"]
76

87
permissions:
98
contents: write # Only permission needed for releases
109

1110
jobs:
1211
create-release:
1312
runs-on: ubuntu-latest
13+
outputs:
14+
release_notes: ${{ steps.release-notes.outputs.NOTES }}
1415
steps:
1516
- uses: actions/checkout@v4
1617
with:
17-
fetch-depth: 0
18+
fetch-depth: 0
1819

1920
- name: Extract Release Notes
2021
id: release-notes
@@ -33,44 +34,44 @@ jobs:
3334
needs: create-release
3435
strategy:
3536
matrix:
36-
include:
37+
platform:
3738
- os: ubuntu-latest
3839
target: x86_64-unknown-linux-gnu
39-
binary_name: zparse
40-
- os: macos-latest
40+
asset_name: linux
41+
- os: macos-latest # For Intel Macs (x86_64)
4142
target: x86_64-apple-darwin
42-
binary_name: zparse
43+
asset_name: darwin
44+
- os: macos-latest # For Apple Silicon Macs (ARM64)
45+
target: aarch64-apple-darwin
46+
asset_name: darwin
4347
- os: windows-latest
4448
target: x86_64-pc-windows-msvc
45-
binary_name: zparse.exe
49+
asset_name: windows
50+
env:
51+
BINARY_NAME: zparse-${{ matrix.platform.asset_name }}${{ matrix.platform.os == 'windows-latest' && '.exe' || '' }}
4652

47-
runs-on: ${{ matrix.os }}
53+
runs-on: ${{ matrix.platform.os }}
4854
steps:
4955
- uses: actions/checkout@v4
5056

51-
- name: Setup Rust
52-
uses: dtolnay/rust-toolchain@stable
57+
- uses: dtolnay/rust-toolchain@stable
5358
with:
54-
targets: ${{ matrix.target }}
59+
targets: ${{ matrix.platform.target }}
5560

5661
- name: Build Binary
57-
run: cargo build --release --target ${{ matrix.target }}
62+
run: cargo build --release --target ${{ matrix.platform.target }}
5863

5964
- name: Prepare Asset
6065
shell: bash
6166
run: |
6267
mkdir -p release
63-
if [ "${{ matrix.os }}" = "windows-latest" ]; then
64-
cp target/${{ matrix.target }}/release/${{ matrix.binary_name }} release/
65-
else
66-
cp target/${{ matrix.target }}/release/${{ matrix.binary_name }} release/
67-
fi
68+
cp target/${{ matrix.platform.target }}/release/$BINARY_NAME \
69+
release/$BINARY_NAME
6870
6971
- name: Upload Release Asset
7072
uses: softprops/action-gh-release@v1
7173
with:
72-
files: release/${{ matrix.binary_name }}
73-
body_path: ${{ needs.create-release.outputs.NOTES }}
74+
files: release/${{ env.BINARY_NAME }}
7475
draft: false
7576
prerelease: false
7677
env:

0 commit comments

Comments
 (0)