Skip to content

ci(github): migrate to shared and reusable workflows #14

ci(github): migrate to shared and reusable workflows

ci(github): migrate to shared and reusable workflows #14

Workflow file for this run

name: CI
on:
push:
branches: [main, master, develop]
pull_request:
branches: [main, master, develop]
jobs:
rust:
name: Rust CI
uses: muvon/ci-workflow/.github/workflows/rust-ci.yml@master
with:
toolchain: stable
test-os: '["ubuntu-latest", "macos-latest"]'
test-includes: '[{"os": "ubuntu-latest", "rust": "beta"}]'
doc: false
coverage: false
musl-build:
name: Musl Build (${{ matrix.target }})
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
- target: x86_64-unknown-linux-musl
os: ubuntu-latest
- target: aarch64-unknown-linux-musl
os: ubuntu-22.04-arm
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Install Rust
uses: dtolnay/rust-toolchain@stable
with:
targets: ${{ matrix.target }}
- name: Install musl tools
run: sudo apt-get update && sudo apt-get install -y musl-tools
- name: Cache dependencies
uses: actions/cache@v4
with:
path: |
~/.cargo/registry
~/.cargo/git
target
key: ${{ runner.os }}-${{ matrix.target }}-cargo-${{ hashFiles('**/Cargo.lock') }}
restore-keys: |
${{ runner.os }}-${{ matrix.target }}-cargo-
${{ runner.os }}-cargo-
- name: cargo build (musl)
run: cargo build --target ${{ matrix.target }}
brief:
uses: muvon/ci-workflow/.github/workflows/brief.yml@master
secrets: inherit