mirror of
https://github.com/panpaul/tiny_os
synced 2024-09-20 17:55:20 +08:00
46 lines
929 B
YAML
46 lines
929 B
YAML
name: Rust
|
|
|
|
on: [ push, pull_request ]
|
|
|
|
env:
|
|
CARGO_TERM_COLOR: always
|
|
CLICOLOR_FORCE: 1
|
|
|
|
jobs:
|
|
build:
|
|
strategy:
|
|
matrix:
|
|
include:
|
|
- arch: riscv64
|
|
qemu-pkg: qemu-system-misc
|
|
rust-target: riscv64imac-unknown-none-elf
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
env:
|
|
ARCH: ${{ matrix.arch }}
|
|
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Install Qemu
|
|
uses: ConorMacBride/install-package@v1
|
|
with:
|
|
apt: ${{ matrix.qemu-pkg }}
|
|
|
|
- name: Install Rust
|
|
uses: dtolnay/rust-toolchain@master
|
|
with:
|
|
toolchain: nightly
|
|
targets: ${{ matrix.rust-target }}
|
|
components: clippy, rust-src
|
|
|
|
- name: Run Clippy
|
|
run: make clippy ARCH=${{ matrix.arch }}
|
|
|
|
- name: Test
|
|
run: make test ARCH=${{ matrix.arch }}
|
|
|
|
- name: Build
|
|
run: make kernel ARCH=${{ matrix.arch }}
|