diff --git a/ci/integration-tests.sh b/ci/integration-tests.sh index 1259c5e1d37..6ba9a284c50 100755 --- a/ci/integration-tests.sh +++ b/ci/integration-tests.sh @@ -1,24 +1,27 @@ +#!/usr/bin/env bash set -x + +if [[ -z "$INTEGRATION" ]]; then + exit 0 +fi + rm ~/.cargo/bin/cargo-clippy -cargo install --force --path . +cargo install --force --debug --path . echo "Running integration test for crate ${INTEGRATION}" -git clone --depth=1 https://github.com/${INTEGRATION}.git checkout -cd checkout +git clone --depth=1 "https://github.com/${INTEGRATION}.git" checkout +cd checkout || exit 1 -function check() { # run clippy on a project, try to be verbose and trigger as many warnings as possible for greater coverage - RUST_BACKTRACE=full cargo clippy --all-targets --all-features -- --cap-lints warn -W clippy::pedantic -W clippy::nursery &> clippy_output - cat clippy_output - ! cat clippy_output | grep -q "internal compiler error\|query stack during panic\|E0463" - if [[ $? != 0 ]]; then - return 1 - fi -} +RUST_BACKTRACE=full \ +cargo clippy \ + --all-targets \ + --all-features \ + -- --cap-lints warn -W clippy::pedantic -W clippy::nursery \ + 2>& 1 \ +| tee clippy_output -case ${INTEGRATION} in - *) - check - ;; -esac +if grep -q "internal compiler error\|query stack during panic\|E0463" clippy_output; then + exit 1 +fi