From aadebbfefec3b5351620448d8cf5b899bc8faf97 Mon Sep 17 00:00:00 2001 From: shibedrill Date: Wed, 23 Jul 2025 01:31:19 -0400 Subject: [PATCH] CI: Prepare for CI/CD --- .gitea/workflows/ci.yaml | 48 ++++++++++++++++++++++++++++++++++++++++ src/kernel/arch/mod.rs | 3 +-- src/lib/syscall/mod.rs | 6 ++--- 3 files changed, 52 insertions(+), 5 deletions(-) create mode 100644 .gitea/workflows/ci.yaml diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml new file mode 100644 index 0000000..a7aa612 --- /dev/null +++ b/.gitea/workflows/ci.yaml @@ -0,0 +1,48 @@ +name: Continuous Integration + +on: [push] + +jobs: + check: + name: Check + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions-rust-lang/setup-rust-toolchain@v1 + - run: cargo check + + # Disabled until custom test harness is implemented. + #test: + # name: Test Suite + # runs-on: ubuntu-latest + # steps: + # - uses: actions/checkout@v4 + # - uses: actions-rust-lang/setup-rust-toolchain@v1 + # - run: cargo test + + fmt: + name: Rustfmt + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions-rust-lang/setup-rust-toolchain@v1 + - run: rustup component add rustfmt + - run: cargo fmt --all -- --check + + clippy: + name: Clippy + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions-rust-lang/setup-rust-toolchain@v1 + - run: rustup component add clippy + - run: cargo clippy -- -D warnings + + build: + name: Build (x86_64) + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions-rust-lang/setup-rust-toolchain@v1 + - run: rustup target add x86_64-unknown-none + - run: cargo build --bin kernel --target x86_64-unknown-none diff --git a/src/kernel/arch/mod.rs b/src/kernel/arch/mod.rs index 3a34852..94cee23 100644 --- a/src/kernel/arch/mod.rs +++ b/src/kernel/arch/mod.rs @@ -14,8 +14,7 @@ compile_error!( #[cfg(target_arch = "x86_64")] pub mod x86_64; #[cfg(target_arch = "x86_64")] -pub use x86_64::asm; -pub use x86_64::paging; +pub use x86_64::{asm, paging}; #[cfg(target_arch = "aarch64")] pub mod aarch64; diff --git a/src/lib/syscall/mod.rs b/src/lib/syscall/mod.rs index e19235b..dc8b73e 100644 --- a/src/lib/syscall/mod.rs +++ b/src/lib/syscall/mod.rs @@ -36,6 +36,6 @@ impl From for SyscallStatus { } } -pub fn exit(code: u64) -> SyscallStatus { - arch::syscall_impl::caller_syscall_1(Syscall::Exit as u64, code).into() -} +//pub fn exit(code: u64) -> SyscallStatus { +// arch::syscall_impl::caller_syscall_1(Syscall::Exit as u64, code).into() +//}