Skip to content

Commit fcab022

Browse files
authored
Update rust.yml
1 parent 4bd0331 commit fcab022

File tree

1 file changed

+53
-10
lines changed

1 file changed

+53
-10
lines changed

.github/workflows/rust.yml

+53-10
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,61 @@
1-
name: Rust
1+
name: Rust Build and Release
22

33
on:
44
push:
5-
branches: [ "main" ]
6-
pull_request:
7-
branches: [ "main" ]
8-
9-
env:
10-
CARGO_TERM_COLOR: always
5+
branches:
6+
- main
117

128
jobs:
139
build:
10+
name: Build and Release
1411
runs-on: ubuntu-latest
12+
1513
steps:
16-
- uses: actions/checkout@v4
17-
- name: Build
18-
run: cargo build --release
14+
- name: Checkout repository
15+
uses: actions/checkout@v2
16+
17+
- name: Set up Rust
18+
uses: actions-rs/toolchain@v1
19+
with:
20+
profile: minimal
21+
toolchain: stable
22+
23+
- name: Read Cargo.toml
24+
id: read_cargo_toml
25+
run: echo ::set-output name=version::$(grep -oP '(?<=version = ")[^"]*' Cargo.toml)
26+
27+
- name: Build
28+
run: |
29+
cargo build --release
30+
env:
31+
APP_VERSION: ${{ steps.read_cargo_toml.outputs.version }}
32+
33+
- name: Package Binary
34+
run: |
35+
mkdir -p release
36+
cp target/release/source-code-scanner release/
37+
working-directory: ${{ github.workspace }}
38+
39+
- name: Create Release
40+
id: create_release
41+
uses: actions/create-release@v1
42+
env:
43+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
44+
with:
45+
tag_name: v${{ steps.read_cargo_toml.outputs.version }}
46+
release_name: Release v${{ steps.read_cargo_toml.outputs.version }}
47+
body: |
48+
Release description goes here
49+
draft: false
50+
prerelease: false
51+
52+
- name: Upload Release Asset
53+
id: upload-release-asset
54+
uses: actions/upload-release-asset@v1
55+
env:
56+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
57+
with:
58+
upload_url: ${{ steps.create_release.outputs.upload_url }}
59+
asset_path: release/source-code-scanner
60+
asset_name: source-code-scanner
61+
asset_content_type: application/octet-stream

0 commit comments

Comments
 (0)