Skip to content
Snippets Groups Projects
.gitlab-ci.yml 1.63 KiB
Newer Older
jD91mZM2's avatar
jD91mZM2 committed
# TODO: Change back once upstream is updated
image: "jd91mzm2/redoxer:latest"
#image: "redoxos/redoxer:latest"
SamwiseFilmore's avatar
SamwiseFilmore committed

stages:
    - build
    - test
SamwiseFilmore's avatar
SamwiseFilmore committed

jD91mZM2's avatar
jD91mZM2 committed
default:
    before_script:
        - apt-get update -qq
        - apt-get install -qq git
        - git submodule sync --recursive
        - git submodule update --init --recursive
SamwiseFilmore's avatar
SamwiseFilmore committed

jD91mZM2's avatar
jD91mZM2 committed
    cache:
        paths:
            - target/
SamwiseFilmore's avatar
SamwiseFilmore committed
build:linux:
SamwiseFilmore's avatar
SamwiseFilmore committed
    stage: build
SamwiseFilmore's avatar
SamwiseFilmore committed
    script:
Jeremy Soller's avatar
Jeremy Soller committed
        - rustup toolchain add "$(cat rust-toolchain)"
        - rustup show      # Print version info for debugging
        - make -j "$(nproc)" all
SamwiseFilmore's avatar
SamwiseFilmore committed

jD91mZM2's avatar
jD91mZM2 committed
build:redox:
    stage: build
    variables:
        TARGET: x86_64-unknown-redox
    script:
Jeremy Soller's avatar
Jeremy Soller committed
        - export RUSTUP_TOOLCHAIN="$HOME/.redoxer/toolchain"
        - export PATH="$RUSTUP_TOOLCHAIN/bin:$PATH"
        - rustup show      # Print version info for debugging
        - make -j "$(nproc)" all
SamwiseFilmore's avatar
SamwiseFilmore committed

test:linux:
SamwiseFilmore's avatar
SamwiseFilmore committed
    stage: test
jD91mZM2's avatar
jD91mZM2 committed
    needs:
        - build:linux
SamwiseFilmore's avatar
SamwiseFilmore committed
    dependencies:
        - build:linux
SamwiseFilmore's avatar
SamwiseFilmore committed
    script:
        - make test
jD91mZM2's avatar
jD91mZM2 committed
    # TODO: SIGILL when running `cargo test`
    allow_failure: true
Jeremy Soller's avatar
Jeremy Soller committed

test:redox:
    stage: test
jD91mZM2's avatar
jD91mZM2 committed
    needs:
        - build:redox
Jeremy Soller's avatar
Jeremy Soller committed
    dependencies:
        - build:redox
    variables:
        TARGET: x86_64-unknown-redox
    script:
        - export CARGO_TEST="redoxer"
Jeremy Soller's avatar
Jeremy Soller committed
        - export RUSTUP_TOOLCHAIN="$HOME/.redoxer/toolchain"
        - export PATH="$RUSTUP_TOOLCHAIN/bin:$PATH"
        - export TEST_RUNNER="redoxer exec --folder . -- sh --"
        - make test
jD91mZM2's avatar
jD91mZM2 committed
    # TODO: Out of memory
    allow_failure: true
SamwiseFilmore's avatar
SamwiseFilmore committed

fmt:
SamwiseFilmore's avatar
SamwiseFilmore committed
    stage: test
jD91mZM2's avatar
jD91mZM2 committed
    needs: []
SamwiseFilmore's avatar
SamwiseFilmore committed
    script:
jD91mZM2's avatar
jD91mZM2 committed
        - rustup component add rustfmt-preview
        - ./fmt.sh -- --check
SamwiseFilmore's avatar
SamwiseFilmore committed
    allow_failure: true