image: "rust:latest"

stages:
  - build
  - test

before_script:
    - rustup toolchain add $toolchain

cache:
  paths:
    - target/

build:stable:
  stage: build
  variables:
    toolchain: stable
  script:
    - cargo +stable build --verbose
    - cargo +stable build --release --verbose

test:stable:
  stage: test
  variables:
    toolchain: stable
  dependencies:
    - build:stable
  script:
    - script -q -c "cargo +stable test --verbose"
    - script -q -c "cargo +stable test --release --verbose"

build:beta:
  stage: build
  variables:
    toolchain: beta
  script:
    - cargo +beta build --verbose
    - cargo +beta build --release --verbose

test:beta:
  stage: test
  variables:
    toolchain: beta
  dependencies:
    - build:beta
  script:
    - script -q -c "cargo +beta test --verbose"
    - script -q -c "cargo +beta test --release --verbose"

build:nightly:
  stage: build
  variables:
    toolchain: nightly
  script:
    - cargo +nightly build --verbose
    - cargo +nightly build --release --verbose

test:nightly:
  stage: test
  variables:
    toolchain: nightly
  dependencies:
    - build:nightly
  script:
    - script -q -c "cargo +nightly test --verbose"
    - script -q -c "cargo +nightly test --release --verbose"
image: "redoxos/redoxer"

stages:
    - build
    - test

cache:
    paths:
        - target/

build:linux:stable:
    stage: build
    script: cargo +stable build --verbose

build:linux:
    stage: build
    script: cargo +nightly build --verbose

build:redox:
    stage: build
    script: redoxer build --verbose

test:linux:stable:
    stage: test
    dependencies:
        - build:linux:stable
    script: cargo +stable test --verbose

test:linux:
    stage: test
    dependencies:
        - build:linux
    script: cargo +nightly test --verbose

test:redox:
    stage: test
    dependencies:
        - build:redox
    script: redoxer test --verbose

Update CI config to use redoxer
Update CI config to use redoxer
