Skip to content

release v0.2.0

release v0.2.0 #15

Workflow file for this run

name: Build and release
on:
push:
tags:
- v*
workflow_dispatch:
inputs:
tag:
description: 'Release Tag'
required: true
type: string
env:
CARGO_TERM_COLOR: always
RUST_BACKTRACE: full
jobs:
build-cross:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
target:
- i686-unknown-linux-musl
- x86_64-pc-windows-gnu
- x86_64-unknown-linux-gnu
- x86_64-unknown-linux-musl
- armv7-unknown-linux-musleabihf
- armv7-unknown-linux-gnueabihf
- arm-unknown-linux-gnueabi
- arm-unknown-linux-gnueabihf
- arm-unknown-linux-musleabi
- arm-unknown-linux-musleabihf
- aarch64-unknown-linux-gnu
- aarch64-unknown-linux-musl
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 1
- name: Install Rust
run: |
rustup set profile minimal
rustup toolchain install stable
rustup default stable
rustup override set stable
rustup target add --toolchain stable ${{ matrix.target }}
- name: Install cross
run: cargo install cross
- name: Build ${{ matrix.target }}
timeout-minutes: 120
run: |
compile_target=${{ matrix.target }}
# compile_features="-f full"
if [[ "$compile_target" == "mips-"* || "$compile_target" == "mipsel-"* \
|| "$compile_target" == "mips64-"* || "$compile_target" == "mips64el-"* ]]; then
sudo apt-get update -y && sudo apt-get install -y upx;
if [[ "$?" == "0" ]]; then
compile_compress="-u"
fi
fi
chmod +x ./build/build-release.sh
./build/build-release.sh -t ${{ matrix.target }} $compile_features $compile_compress
- name: Upload Github Assets
uses: softprops/action-gh-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
files: build/release/*
prerelease: ${{ contains(github.ref_name, '-') }}
tag_name: ${{ inputs.tag || github.ref_name }}
build-unix:
runs-on: macos-latest
strategy:
fail-fast: false
matrix:
target:
- x86_64-apple-darwin
- aarch64-apple-darwin
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 1
- name: Install Rust
run: |
rustup set profile minimal
rustup toolchain install stable
rustup default stable
rustup override set stable
rustup target add --toolchain stable ${{ matrix.target }}
- name: Build release
shell: bash
run: |
chmod +x ./build/build-host-release.sh
./build/build-host-release.sh -t ${{ matrix.target }}
- name: Upload Github Assets
uses: softprops/action-gh-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
files: build/release/*
prerelease: ${{ contains(github.ref_name, '-') }}
tag_name: ${{ inputs.tag || github.ref_name }}
build-windows:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 1
- name: Install Rust
run: |
rustup set profile minimal
rustup toolchain install stable
rustup default stable
rustup override set stable
- name: Build release
shell: bash
run: |
chmod +x ./build/build-host-release.sh
./build/build-host-release.sh -t x86_64-pc-windows-msvc
- name: Upload Github Assets
uses: softprops/action-gh-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
files: build/release/*
prerelease: ${{ contains(github.ref_name, '-') }}
tag_name: ${{ inputs.tag || github.ref_name }}