Skip to content

Add blk bad-pointer acceptance test and ISO target #21

Add blk bad-pointer acceptance test and ISO target

Add blk bad-pointer acceptance test and ISO target #21

Workflow file for this run

name: CI — Build & QEMU smoke test
on:
push:
branches: [main, master]
pull_request:
branches: [main, master]
jobs:
build-and-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install system dependencies
run: |
sudo apt-get update
sudo apt-get install -y --no-install-recommends \
nasm xorriso qemu-system-x86 \
python3 python3-pytest \
git make curl binutils
# Go 1.25.3 + TinyGo 0.40.1 — pinned to match Dockerfile
- name: Install Go
run: |
wget -q https://go.dev/dl/go1.25.3.linux-amd64.tar.gz -O /tmp/go.tar.gz
sudo tar -C /usr/local -xzf /tmp/go.tar.gz
echo "/usr/local/go/bin" >> "$GITHUB_PATH"
- name: Install TinyGo
run: |
wget -q https://github.com/tinygo-org/tinygo/releases/download/v0.40.1/tinygo_0.40.1_amd64.deb -O /tmp/tinygo.deb
sudo dpkg -i /tmp/tinygo.deb
echo "/usr/local/lib/tinygo/bin" >> "$GITHUB_PATH"
- name: Verify TinyGo
run: |
go version
tinygo version
- name: Install Rust nightly
uses: dtolnay/rust-toolchain@nightly
with:
components: rust-src
- name: Verify vendored Limine checksums
run: cd vendor/limine && sha256sum -c SHA256SUMS
- name: Build kernel
run: make build
- name: Create bootable ISO (offline — no git clone)
run: make image
env:
GIT_TERMINAL_PROMPT: "0"
- name: QEMU smoke tests
run: make test-qemu