name: Release
permissions:
contents: write
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
release:
name: release ${{ matrix.target }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- target: x86_64-pc-windows-gnu
archive: zip
os: windows-latest
- target: x86_64-unknown-linux-musl
archive: tar.gz tar.xz tar.zst
os: ubuntu-latest
# - target: x86_64-apple-darwin
# archive: zip
# os: macos-latest
steps:
- uses: actions/checkout@main
name: Checkout to main branch
- name: Compile
id: compile
uses: rust-build/rust-build.action@v1.4.5
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
RUSTTARGET: ${{ matrix.target }}
ARCHIVE_TYPES: ${{ matrix.archive }}
UPLOAD_MODE: release
- name: Upload Artifact
uses: actions/upload-artifact@v3
with:
name: Binary
path: |
${{ steps.compile.outputs.BUILT_ARCHIVE }}
${{ steps.compile.outputs.BUILT_CHECKSUM }}