Add more checks to the pipeline

This commit is contained in:
Felix Krull 2019-05-24 23:23:57 +02:00 committed by Colin Walters
parent 66cf9b288f
commit fa1bf6cbb8
1 changed files with 28 additions and 38 deletions

View File

@ -1,7 +1,7 @@
image: rust:latest image: rust:latest
variables: variables:
CARGO_TARGET_DIR: target CARGO_TARGET_DIR: ${CI_PROJECT_DIR}/target
# --all-features # --all-features
CURRENT_FEATURES: --features v2018_9 CURRENT_FEATURES: --features v2018_9
CARGO_HOME: ${CI_PROJECT_DIR}/cargo CARGO_HOME: ${CI_PROJECT_DIR}/cargo
@ -11,24 +11,44 @@ before_script:
- apt-get update - apt-get update
- apt-get install -y -t stretch-backports cmake libostree-dev - apt-get install -y -t stretch-backports cmake libostree-dev
cache:
paths:
- cargo/
- target/
stages: stages:
- check
- build - build
- publish - publish
# checks
check:
stage: check
script:
- rustup component add clippy rustfmt
- cargo check
- cargo clippy
- cargo fmt -- --check
gir:
stage: check
before_script:
- rm -f target/tools/bin/gir
script:
- make gir
- git diff -R --exit-code
# ostree-sys # ostree-sys
ostree-sys: ostree-sys:
stage: build stage: build
script: script:
- cargo test --verbose --manifest-path sys/Cargo.toml ${CURRENT_FEATURES} - cargo test --verbose --manifest-path sys/Cargo.toml ${CURRENT_FEATURES}
cache:
paths:
- cargo/
- target/
publish_ostree-sys: publish_ostree-sys:
stage: publish stage: publish
script: script:
- cargo publish --verbose --manifest-path sys/Cargo.toml --token $CRATES_IO_TOKEN - cargo publish --verbose --manifest-path sys/Cargo.toml --token $CRATES_IO_TOKEN
cache: {}
when: manual when: manual
# ostree # ostree
@ -36,45 +56,17 @@ ostree:
stage: build stage: build
script: script:
- cargo test --verbose ${CURRENT_FEATURES} - cargo test --verbose ${CURRENT_FEATURES}
cache:
paths:
- cargo/
- target/
ostree_default_features: ostree_default_features:
stage: build stage: build
script: script:
- cargo test --verbose - cargo test --verbose
cache:
paths:
- cargo/
- target/
# canary until Debian Backports gets updated libostree
ostree_all_features:
stage: build
script:
- cargo test --verbose --all-features
cache:
paths:
- cargo/
- target/
allow_failure: true
ostree_nightly:
stage: build
image: rustlang/rust:nightly
script:
- cargo test --verbose ${CURRENT_FEATURES}
cache:
paths:
- cargo/
- target/
publish_ostree: publish_ostree:
stage: publish stage: publish
script: script:
- cargo publish --verbose --token $CRATES_IO_TOKEN - cargo publish --verbose --token $CRATES_IO_TOKEN
cache: {}
when: manual when: manual
# docs # docs
@ -90,13 +82,10 @@ docs:
--extern-html-root-url glib=https://gtk-rs.org/docs --extern-html-root-url glib=https://gtk-rs.org/docs
--extern-html-root-url gio=https://gtk-rs.org/docs --extern-html-root-url gio=https://gtk-rs.org/docs
script: script:
- rm -rf target/doc
- make merge-lgpl-docs - make merge-lgpl-docs
- cargo rustdoc --verbose --package ostree-sys --features dox -- ${RUSTDOC_OPTS} - cargo rustdoc --verbose --package ostree-sys --features dox -- ${RUSTDOC_OPTS}
- cargo rustdoc --verbose --package ostree --features dox -- ${RUSTDOC_OPTS} - cargo rustdoc --verbose --package ostree --features dox -- ${RUSTDOC_OPTS}
cache:
paths:
- cargo/
- target/
artifacts: artifacts:
paths: paths:
- target/doc - target/doc
@ -107,6 +96,7 @@ pages:
before_script: [] before_script: []
script: script:
- cp -r target/doc public - cp -r target/doc public
cache: {}
artifacts: artifacts:
paths: paths:
- public - public