Files
RedBear-OS/.gitlab-ci.yml
T
2025-12-10 23:41:12 +07:00

73 lines
1.3 KiB
YAML

image: "redoxos/redoxer:latest"
variables:
GIT_SUBMODULE_STRATEGY: recursive
workflow:
rules:
- if: '$CI_COMMIT_BRANCH == "master" && $CI_PROJECT_NAMESPACE == "redox-os"'
- if: '$CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "master"'
stages:
- build
- cross-build
- test
before_script:
cargo install cbindgen
fmt:
stage: build
needs: []
script:
- rustup component add rustfmt-preview
- ./fmt.sh -- --check
linux:
stage: build
script:
- ./check.sh --host
x86_64:
stage: build
script:
- ./check.sh --arch=x86_64
i586:
stage: cross-build
script:
- ./check.sh --arch=i586
aarch64:
stage: cross-build
script:
- ./check.sh --arch=aarch64
riscv64gc:
stage: cross-build
script:
- ./check.sh --arch=riscv64gc
test:linux:
stage: test
needs: [linux]
dependencies: [linux]
script:
- ./check.sh --host --test
test:x86_64:
stage: test
needs: [x86_64]
dependencies: [x86_64]
script:
# TODO: sigaction and sigaltstack hangs with multi core
- REDOXER_QEMU_ARGS="-smp 1" ./check.sh --arch=x86_64 --test
test:aarch64:
stage: test
needs: [aarch64]
dependencies: [aarch64]
script:
- ./check.sh --arch=aarch64 --test
#TODO: Enable more arch once dynamic linker working