stages:
  - test

variables:
  GIT_STRATEGY: fetch
  CARGO_HOME: "$CI_PROJECT_DIR/.cargo"

default:
  cache:
    key: "$CI_JOB_NAME"
    paths:
      - .cargo/ # działa ponieważ ustawiliśmy CARGO_HOME w katalogu projektu
      - target/ # Zakomentuj gdy chcesz by od zera się budowało, potem możesz odkomentować
  before_script:
    - echo $CI_PIPELINE_ID
    - rustc --version && cargo --version

rustfmt:
  stage: test
  image: "rustdocker/rust:stable"
  script:
    - cargo fmt -- --check
    - cargo verify-project

clippy:
  stage: test
  image: "rustdocker/rust:stable"
  script:
    - cargo clippy --all-features -- -D warnings

test:
  stage: test
  image: "rustdocker/rust:stable"
  script:
    - cargo build --no-default-features
    - cargo build --all-features
    - cargo test --all-features --verbose
