Skip to content

ci: include helloworld for build #16

ci: include helloworld for build

ci: include helloworld for build #16

Workflow file for this run

name: Check, Build and Test
on: [push, pull_request]
env:
CARGO_TERM_COLOR: always
jobs:
ci:
runs-on: ubuntu-latest
continue-on-error: true
steps:
- uses: actions/checkout@v4
# ZR233/ostool requires
- name: Install qemu-system
run: sudo apt update && sudo apt install qemu-system -y
- name: Install libudev-dev
run: sudo apt update && sudo apt install libudev-dev -y
- name: Install cargo-binutils
run: cargo install cargo-binutils
- name: Install ostool
run: cargo install ostool
- name: Install toolchain
run: rustup show
- name: Check rust version
run: rustc --version --verbose
- name: Check code format
run: cargo fmt --all -- --check
- uses: taiki-e/install-action@cargo-hack
- name: Clippy for workspace
run: cargo clippy -- -D warnings
- name: Clippy for each package & each feature
run: cargo hack clippy --each-feature -- -Dwarnings
# FIXME: helloworld doesn't compile: error: linking with `rust-lld` failed: exit status: 1
- name: Build for workspace
run: cargo build
- name: Build for each package & each feature
run: cargo hack build --each-feature
- name: Test bare-test simple_test
working-directory: app/simple_test
run: cargo test --test test1
- name: Test sparreal-macros
working-directory: crates/sparreal-macros
run: cargo test
- name: Test page-table-arm
working-directory: crates/page-table-arm
run: cargo test --target x86_64-unknown-linux-gnu
# FIXME: signal: 6, SIGABRT: process abort signal
- name: Test sparreal-kernel
working-directory: crates/sparreal-kernel
run: cargo test --target x86_64-unknown-linux-gnu