Skip to content

Adaptation of AGScheduler v0.10.0 #204

Adaptation of AGScheduler v0.10.0

Adaptation of AGScheduler v0.10.0 #204

Workflow file for this run

name: test
on:
push:
branches: ["main", "test", "dev", "dev/*", "dev_*"]
pull_request:
branches: ["main", "test", "dev"]
workflow_dispatch:
env:
CARGO_TERM_COLOR: always
jobs:
test:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
- build: linux-x86_64-musl
os: ubuntu-latest
target: x86_64-unknown-linux-musl
- build: linux-x86_64-gnu
os: ubuntu-latest
target: x86_64-unknown-linux-gnu
- build: macos-x86_64
os: macos-latest
target: x86_64-apple-darwin
- build: macos-aarch64
os: macos-latest
target: aarch64-apple-darwin
- build: windows-x86_64-gnu
os: windows-latest
target: x86_64-pc-windows-gnu
steps:
- uses: actions/checkout@v4
- name: Install Rust Tools
uses: dtolnay/rust-toolchain@stable
with:
targets: ${{ matrix.target }}
components: rustfmt, clippy, llvm-tools
- name: Install cargo-llvm-cov
uses: taiki-e/install-action@cargo-llvm-cov
- name: Format with rustfmt
run: |
make format-check
- name: Lint with clippy
run: |
make lint
- name: Test with llvm-cov
run: |
make test
- name: Install musl-gcc
shell: bash
run: |
if [ "${{ matrix.target }}" = "x86_64-unknown-linux-musl" ]; then
sudo apt update
sudo apt install -y musl-tools
fi
- name: Build
run: |
cargo build --release --verbose --target ${{ matrix.target }}
- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@v4
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
slug: AGScheduler/agscheduler-cli
files: lcov.info
fail_ci_if_error: true