Skip to content

Commit 462338b

Browse files
authored
workflow updatee
1 parent c5c3f0b commit 462338b

1 file changed

Lines changed: 29 additions & 12 deletions

File tree

.github/workflows/release.yml

Lines changed: 29 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,57 @@
11
name: Release
2+
23
on:
34
push:
45
tags:
56
- 'v*.*.*'
6-
create:
7-
tags:
8-
- 'v*.*.*'
97
workflow_dispatch:
8+
109
permissions:
1110
contents: write
11+
1212
jobs:
1313
release:
1414
runs-on: ubuntu-latest
1515

1616
steps:
1717
- name: Checkout
1818
uses: actions/checkout@v4
19+
1920
- name: Setup Rust
2021
uses: dtolnay/rust-toolchain@stable
22+
2123
- name: Install dependencies
2224
run: |
2325
sudo apt-get update
2426
sudo apt-get install -y pkg-config libxcb1-dev libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libxcb-shm0-dev libx11-dev
27+
2528
- name: Build
2629
run: cargo build --release
27-
- name: Create archive
30+
31+
- name: Get binary name and version
32+
id: get_info
2833
run: |
2934
BINARY_NAME=$(grep '^name = ' Cargo.toml | head -1 | cut -d '"' -f2)
30-
mkdir release
31-
cp target/release/$BINARY_NAME release/
32-
[ -f README.md ] && cp README.md release/
33-
[ -f LICENSE ] && cp LICENSE release/
34-
[ -f CHANGELOG.md ] && cp CHANGELOG.md release/
35-
tar -czf $BINARY_NAME-linux.tar.gz -C release .
36-
- name: Release
35+
VERSION=${GITHUB_REF#refs/tags/}
36+
echo "binary_name=$BINARY_NAME" >> $GITHUB_OUTPUT
37+
echo "version=$VERSION" >> $GITHUB_OUTPUT
38+
echo "archive_name=$BINARY_NAME-$VERSION-linux-x86_64.tar.gz" >> $GITHUB_OUTPUT
39+
40+
- name: Create archive
41+
run: |
42+
mkdir -p release
43+
cp target/release/${{ steps.get_info.outputs.binary_name }} release/
44+
[ -f README.md ] && cp README.md release/ || true
45+
[ -f LICENSE ] && cp LICENSE release/ || true
46+
[ -f CHANGELOG.md ] && cp CHANGELOG.md release/ || true
47+
tar -czf ${{ steps.get_info.outputs.archive_name }} -C release .
48+
49+
- name: Create Release
3750
uses: softprops/action-gh-release@v2
3851
with:
39-
files: "*.tar.gz"
52+
files: ${{ steps.get_info.outputs.archive_name }}
4053
body_path: CHANGELOG.md
54+
draft: false
55+
prerelease: false
56+
env:
57+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

0 commit comments

Comments
 (0)