---
name: Release
on:
push:
tags:
- "*"
jobs:
build:
strategy:
fail-fast: true
matrix:
include:
- os: ubuntu-latest
artifact: linux-x86-gnu
target: x86_64-unknown-linux-gnu
use-zigbuild: true
glibc-version: 2.28
- os: ubuntu-latest
artifact: linux-arm-gnu
target: aarch64-unknown-linux-gnu
use-zigbuild: true
glibc-version: 2.28
- os: ubuntu-latest
artifact: linux-x86-musl
target: x86_64-unknown-linux-musl
use-zigbuild: true
- os: ubuntu-latest
artifact: linux-arm-musl
target: aarch64-unknown-linux-musl
use-zigbuild: true
- os: macos-13
artifact: macos-x86
target: x86_64-apple-darwin
- os: macos-15
artifact: macos-arm
target: aarch64-apple-darwin
- os: ubuntu-latest
artifact: windows-x64
target: x86_64-pc-windows-gnu
extension: exe
name: Build ${{ matrix.artifact }}
runs-on: ${{ matrix.os }}
continue-on-error: false
steps:
- name: Build
uses: asimov-platform/build-rust-action@v5
with:
target: ${{ matrix.target }}
artifact-suffix: ${{ matrix.artifact }}
binary-extension: ${{ matrix.extension }}
use-zigbuild: ${{ matrix.use-zigbuild || 'false' }}
glibc-version: ${{ matrix.glibc-version }}
rust-toolchain: 1.85.0
release:
name: Release
runs-on: ubuntu-latest
if: startsWith(github.ref, 'refs/tags/')
needs: build
permissions:
contents: write
steps:
- name: Release
uses: asimov-platform/release-action@v3
with:
app_id: ${{ secrets.ASIMOV_APP_ID }}
app_private_key: ${{ secrets.ASIMOV_APP_PRIVATE_KEY }}
changelog-path: CHANGES.md