fixed bug in gh release create
#43
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Release | |
permissions: | |
"contents": "write" | |
on: | |
pull_request: | |
push: | |
tags: | |
- "**[0-9]+.[0-9]+.[0-9]+*" | |
jobs: | |
checks: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Setup Rust | |
uses: actions-rust-lang/setup-rust-toolchain@v1 | |
- name: Check version numbers match | |
run: | | |
# Check if cardamon version has been bumped | |
card_ver=v$(cargo metadata --format-version=1 --no-deps | jq '.packages[0].version' | tr -d '"') | |
if [[ $card_ver != "${{ github.ref_name }}" ]]; then exit 1; fi | |
# Check if workspace members have also been bumped | |
workspace_members=($(cargo metadata --format-version=1 --no-deps | jq -c '.workspace_members[]')) | |
for member in "${workspace_members[@]:1}"; do | |
ver=v$(echo $member | tr -d '"' | sed "s/.*#//") | |
if [[ $ver != ${{ github.ref_name }} ]]; then exit 1; fi | |
done | |
build_linux: | |
needs: [checks] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout cardamon | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Setup NodeJS | |
uses: actions/setup-node@v4 | |
with: | |
node-version: "20.x" | |
- name: Install NodeJS dependencies | |
run: npm --prefix ui install | |
- name: Build UI | |
run: npm --prefix ui run build-only | |
- name: Setup Rust | |
uses: actions-rust-lang/setup-rust-toolchain@v1 | |
- name: Build Cardamon | |
run: cargo build --release | |
- name: Build release artifact | |
run: | | |
mkdir artifact | |
cp target/release/cardamon artifact/cardamon | |
cp LICENSE artifact/ | |
cp README.md artifact/ | |
- name: Compress build artifact | |
run: tar -czf cardamon-x86_64-unknown-linux-gnu-${{ github.ref_name }}.tar.gz -C artifact . | |
- name: Upload artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
path: cardamon-x86_64-unknown-linux-gnu.tar.gz | |
release: | |
needs: [build_linux] | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Download artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
path: artifact | |
merge-multiple: true | |
- name: Create release | |
run: gh release create ${{ github.ref_name }} --draft --title "Release ${{ github.ref_name }}" --notes "" artifact/cardamon-x86_64-unknown-linux-gnu-${{ github.ref_name }}.tar.gz | |
env: | |
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} |