Skip to content

chore: release main #73

chore: release main

chore: release main #73

Workflow file for this run

name: Build & Test
on:
push:
branches:
- main
paths:
- 'cli/**'
- 'lib/**'
- '**/tasks.toml'
- 'tasks.toml'
- 'examples/**'
pull_request:
paths:
- 'cli/**'
- 'lib/**'
- '**/tasks.toml'
- 'tasks.toml'
- 'examples/**'
jobs:
test:
name: Build
runs-on: ${{ matrix.runner }}
strategy:
matrix:
include:
- name: linux-amd64
runner: ubuntu-latest
target: x86_64-unknown-linux-gnu
- name: win-amd64
runner: windows-latest
target: x86_64-pc-windows-msvc
- name: macos-amd64
runner: macos-latest
target: x86_64-apple-darwin
- name: macos-arm64
runner: macos-latest
target: aarch64-apple-darwin
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Install Rust
uses: dtolnay/rust-toolchain@stable
with:
targets: "${{ matrix.target }}"
- name: Add Rust target
run: rustup target add ${{ matrix.target }}
- name: Cache Rust
uses: Swatinem/rust-cache@v2
- name: Install Nextest
run: cargo install --force cargo-nextest
- name: Build CLI
run: cargo build -p odict-cli --verbose --locked --target ${{ matrix.target }}
- name: Run tests
run: cargo nextest run -p odict-cli -p odict --all-features --verbose --target ${{ matrix.target }}
- uses: actions/upload-artifact@v4
if: ${{ failure() }}
with:
name: code
path: /home/runner/work/odict