xref: /relibc/.gitlab-ci.yml (revision 6952a079ae69b9016fee579efaec0b2512cb1a84)
1# TODO: Change back once upstream is updated
2image: "jd91mzm2/redoxer:latest"
3#image: "redoxos/redoxer:latest"
4
5stages:
6    - build
7    - test
8
9default:
10    before_script:
11        - apt-get update -qq
12        - apt-get install -qq git
13        - git submodule sync --recursive
14        - git submodule update --init --recursive
15
16    cache:
17        paths:
18            - target/
19
20build:linux:
21    stage: build
22    script:
23        - rustup toolchain add "$(cat rust-toolchain)"
24        - rustup show      # Print version info for debugging
25        - make -j "$(nproc)" all
26
27build:redox:
28    stage: build
29    variables:
30        TARGET: x86_64-unknown-redox
31    script:
32        - export RUSTUP_TOOLCHAIN="$HOME/.redoxer/toolchain"
33        - export PATH="$RUSTUP_TOOLCHAIN/bin:$PATH"
34        - rustup show      # Print version info for debugging
35        - make -j "$(nproc)" all
36
37test:linux:
38    stage: test
39    needs:
40        - build:linux
41    dependencies:
42        - build:linux
43    script:
44        - make test
45    # TODO: SIGILL when running `cargo test`
46    allow_failure: true
47
48test:redox:
49    stage: test
50    needs:
51        - build:redox
52    dependencies:
53        - build:redox
54    variables:
55        TARGET: x86_64-unknown-redox
56    script:
57        - export CARGO_TEST="redoxer"
58        - export RUSTUP_TOOLCHAIN="$HOME/.redoxer/toolchain"
59        - export PATH="$RUSTUP_TOOLCHAIN/bin:$PATH"
60        - export TEST_RUNNER="redoxer exec --folder . -- sh --"
61        - make test
62    # TODO: Out of memory
63    allow_failure: true
64
65fmt:
66    stage: test
67    needs: []
68    script:
69        - rustup component add rustfmt-preview
70        - ./fmt.sh -- --check
71    allow_failure: true
72