Skip to content

Commit

Permalink
ci: upload release artifacts
Browse files Browse the repository at this point in the history
  • Loading branch information
cristianoliveira committed May 21, 2023
1 parent 837dcb2 commit fe4b786
Show file tree
Hide file tree
Showing 2 changed files with 78 additions and 1 deletion.
65 changes: 65 additions & 0 deletions .github/workflows/on-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
name: Release artifacts

on:
push:
branches: ["ci/release-artifacts"]
pull_request:
branches: ["ci/release-artifacts"]

jobs:
build_release_osx:
env:
TARGET: x86_64-apple-darwin

runs-on: macos-latest

steps:
- uses: actions/checkout@v3

- name: Create artifacts folder
run: mkdir artifacts

- name: Release info
run: echo "RELEASE_TAG=${GITHUB_REF_NAME//(\/|\.)/_}" >> $GITHUB_ENV

- name: Create artifacts for darwin
run: sh ci/script.sh

- name: Upload binaries to release
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: $
asset_name: funzzy-${{ env.RELEASE_TAG }}-${{ env.TARGET }}.tar.gz
tag: ${{ github.ref }}
overwrite: true
body: "Release ${{ env.RELEASE_TAG }}"

build_release_linux:
env:
TARGET: x86_64-unknown-linux-gnu
RELEASE_TAG: ${{ github.ref }}

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3

- name: Create artifacts folder
run: mkdir artifacts

- name: Release info
run: echo "RELEASE_TAG=${GITHUB_REF_NAME//(\/|\.)/_}" >> $GITHUB_ENV

- name: Create artifacts for linux
run: sh ci/script.sh

- name: Upload binaries to release
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: $
asset_name: funzzy-${{ env.RELEASE_TAG }}-${{ env.TARGET }}.tar.gz
tag: ${{ github.ref }}
overwrite: true
body: "Release ${{ env.RELEASE_TAG }}"
14 changes: 13 additions & 1 deletion ci/script.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,22 @@

set -ex

# Add macOS Rust target
rustup target add $TARGET

cargo build --target $TARGET --verbose
cargo test --target $TARGET

cargo build --target $TARGET --release

cd target/release
ls -l

ARTIFACT="funzzy-${RELEASE_TAG:?"Missing release tag"}-${TARGET}.tar.gz"

tar czf "../$ARTIFACT" *

cp "../$ARTIFACT" ../../artifacts/

# sanity check the file type
file target/$TARGET/release/funzzy
file funzzy

0 comments on commit fe4b786

Please sign in to comment.