6 stable releases
1.0.5 | Apr 2, 2025 |
---|---|
1.0.4 | Mar 13, 2025 |
1.0.2 | Feb 23, 2025 |
#902 in Command line utilities
173 downloads per month
33KB
365 lines
Apache NuttX RTOS: Bot that will Build and Test a Pull Request
Read the article...
-
"QEMU Test Bot for Pull Requests: Beware of Semihosting Breakout (Apache NuttX RTOS)"
-
"Porting Apache NuttX RTOS to Avaota-A1 SBC (Allwinner A527 SoC)"
We might allow a PR Comment to trigger a Build + Test on QEMU. For example, this PR Comment...
@nuttxpr test rv-virt:knsh64
Will trigger our Test Bot to download the PR Code, and run Build + Test on QEMU RISC-V. Or on Real Hardware...
@nuttxpr test milkv_duos:nsh
Here are commands for PR Test Bot:
## For Avaota-A1 Arm64 SBC (Allwinner A537)
@nuttxpr test avaota-a1:nsh
## For Milk-V Duo S 64-bit RISC-V SBC (Sophgo SG2000)
@nuttxpr test milkv_duos:nsh
## For QEMU Arm64 (Flat Build) and RISC-V 64-bit (Kernel Build)
@nuttxpr test qemu-armv8a:netnsh
@nuttxpr test rv-virt:knsh64
These commands will trigger an Email Alert to me. Please give me 12 Hours to review the PR (making sure there isn't malicious code) before I start the PR Test Bot. The results shall be posted as a PR Comment.
How To Run
See run.sh...
#!/usr/bin/env bash
## Build and Test PRs for NuttX Kernel and Apps
set -e ## Stop on error
## Install QEMU Emulators
sudo apt install \
qemu-system-riscv64 \
qemu-system-aarch64
## Set the GitHub Token. Should have permission to Post PR Comments.
## export GITHUB_TOKEN=...
. $HOME/github-token.sh
## Set the GitLab Token for creating snippets
## export GITLAB_TOKEN=...
. $HOME/gitlab-token.sh
set -x ## Echo commands
## Enable Rust Logging
export RUST_LOG=info
export RUST_BACKTRACE=1
for (( ; ; ))
do
cargo run
sleep 300
done
Build + Test Bot is hosted on this hefty Ubuntu Xeon Workstation
Dependencies
~15–29MB
~443K SLoC