-
Notifications
You must be signed in to change notification settings - Fork 0
82 lines (75 loc) · 2.47 KB
/
main.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
name: main
on:
push:
pull_request:
jobs:
jshint:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v2
- run: sudo npm install -g jshint; make jshint
test:
runs-on: ubuntu-22.04
steps:
- name: checkout
uses: actions/checkout@v2
- uses: actions/cache@v2
id: cache-rustup
with:
path: ~/.cache/rustup/
key: ${{ runner.os }}-rustup
- name: rustup
run: |
rustup toolchain install stable
rustup target add wasm32-unknown-unknown
rustup component add rustfmt
- name: apt install
run: sudo apt update -qq; sudo apt install nasm gdb qemu-system-x86 libc6-dev-i386
- name: make all-debug
run: make all-debug
- name: make all
run: make all
- uses: actions/cache@v2
id: cache-kvm-unit-test
with:
path: tests/kvm-unit-tests/
key: ${{ runner.os }}-kvm-unit-test
- name: build kvm-unit-test
if: steps.cache-kvm-unit-test.outputs.cache-hit != 'true'
run: (cd tests/kvm-unit-tests && ./configure && make x86/realmode.flat)
- name: kvm-unit-test
run: tests/kvm-unit-tests/run.js tests/kvm-unit-tests/x86/realmode.flat
- uses: actions/cache@v2
id: cache-nasmtests
with:
path: tests/nasm/build/
key: ${{ runner.os }}-nasmtests
- name: build namsmtests
if: steps.cache-nasmtests.outputs.cache-hit != 'true'
run: tests/nasm/create_tests.js; make -C tests/nasm all; ./tests/nasm/gen_fixtures.js
- name: nasmtests
run: MAX_PARALLEL_TESTS=1 ./tests/nasm/run.js
- name: nasmtests-force-jit
run: MAX_PARALLEL_TESTS=1 ./tests/nasm/run.js --force-jit
- name: rust-test
run: make rust-test
- uses: actions/cache@v2
id: cache-images
with:
path: images/
key: ${{ runner.os }}-images-v2
- name: get images
if: steps.cache-images.outputs.cache-hit != 'true'
run: wget -nv -P images/ https://k.copy.sh/{linux.iso,linux3.iso,linux4.iso,buildroot-bzimage.bin,TinyCore-11.0.iso,oberon.img,msdos.img,openbsd-floppy.img,kolibri.img,windows101.img,os8.img,freedos722.img,mobius-fd-release5.img}
- name: api-tests
run: make api-tests
- name: qemutests
run: make qemutests
- name: qemutests-release
run: make qemutests-release
- name: jitpagingtests
run: make jitpagingtests
- name: integration tests
run: MAX_PARALLEL_TESTS=1 make tests
- name: expect tests
run: make expect-tests