diff --git a/ci/integration-tests.sh b/ci/integration-tests.sh index 1259c5e1d378..02d4ca3cc1c3 100755 --- a/ci/integration-tests.sh +++ b/ci/integration-tests.sh @@ -1,24 +1,28 @@ +#!/usr/bin/env bash set -x + +if [[ -z "$INTEGRATION" ]]; then + exit 0 +fi + rm ~/.cargo/bin/cargo-clippy cargo install --force --path . echo "Running integration test for crate ${INTEGRATION}" -git clone --depth=1 https://github.com/${INTEGRATION}.git checkout -cd checkout +mkdir -p "checkout/$INTEGRATION" +curl -sSL "https://github.com/$INTEGRATION/archive/master.tar.gz" | tar -xzf - -C "checkout/$INTEGRATION" +cd "checkout/$INTEGRATION" || 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