2019-09-17 19:49:53 +02:00
|
|
|
name: CI
|
|
|
|
|
2020-04-14 15:43:27 +02:00
|
|
|
on:
|
|
|
|
push:
|
|
|
|
pull_request:
|
2020-12-27 14:11:38 +01:00
|
|
|
branches: '*'
|
2019-09-17 19:49:53 +02:00
|
|
|
|
|
|
|
jobs:
|
|
|
|
test:
|
|
|
|
name: Build mode ${{ matrix.build_mode }}
|
2021-04-27 20:07:11 +02:00
|
|
|
runs-on: ubuntu-18.04
|
2019-09-17 19:49:53 +02:00
|
|
|
strategy:
|
|
|
|
matrix:
|
2020-06-23 13:43:52 +02:00
|
|
|
build_mode: ["", -Drelease-fast, -Drelease-safe, -Drelease-small]
|
2019-09-17 19:49:53 +02:00
|
|
|
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v1
|
|
|
|
|
|
|
|
- name: Download zig
|
|
|
|
run: |
|
|
|
|
export PYTHONIOENCODING=utf8
|
2021-06-08 00:00:33 +02:00
|
|
|
wget https://ziglang.org/download/0.9.1/zig-linux-x86_64-0.9.1.tar.xz
|
2019-09-17 19:49:53 +02:00
|
|
|
sudo apt-get install mtools
|
|
|
|
tar -xvf zig*
|
|
|
|
- name: Install qemu
|
|
|
|
run: |
|
|
|
|
sudo apt-get update
|
|
|
|
sudo apt-get install qemu qemu-system --fix-missing
|
2020-06-23 13:43:52 +02:00
|
|
|
- name: Check formatting
|
|
|
|
run: zig*/zig fmt --check src
|
2020-01-09 14:08:00 +01:00
|
|
|
- name: Build kernel
|
|
|
|
run: zig*/zig build ${{ matrix.build_mode }}
|
|
|
|
- name: Run unit tests
|
|
|
|
run: zig*/zig build test ${{ matrix.build_mode }}
|
2020-06-23 13:43:52 +02:00
|
|
|
- name: Run runtime test - Initialisation
|
|
|
|
run: zig*/zig build rt-test -Ddisable-display -Dtest-mode=Initialisation ${{ matrix.build_mode }}
|
|
|
|
- name: Run runtime test - Panic
|
|
|
|
run: zig*/zig build rt-test -Ddisable-display -Dtest-mode=Panic ${{ matrix.build_mode }}
|
2020-07-18 23:46:24 +02:00
|
|
|
- name: Run runtime test - Scheduler
|
|
|
|
run: zig*/zig build rt-test -Ddisable-display -Dtest-mode=Scheduler ${{ matrix.build_mode }}
|