rust/ci/integration-tests.sh

38 lines
876 B
Bash
Raw Normal View History

#!/usr/bin/env bash
set -ex
if [[ -z "$INTEGRATION" ]]; then
exit 0
fi
2019-10-17 23:10:15 -05:00
CARGO_TARGET_DIR=$(pwd)/target/
export CARGO_TARGET_DIR
rm ~/.cargo/bin/cargo-clippy
cargo install --force --debug --path .
2018-05-16 02:10:35 -05:00
echo "Running integration test for crate ${INTEGRATION}"
git clone --depth=1 "https://github.com/${INTEGRATION}.git" checkout
2019-10-23 13:50:00 -05:00
cd checkout
2018-05-16 02:10:35 -05:00
2019-10-23 13:50:00 -05:00
# run clippy on a project, try to be verbose and trigger as many warnings
# as possible for greater coverage
2019-11-05 08:36:44 -06:00
# NOTE: we use `tee` to print any warnings and errors to stdout
# to avoid build timeout in Travis
RUST_BACKTRACE=full \
cargo clippy \
--all-targets \
--all-features \
2019-10-23 13:50:00 -05:00
-- \
--cap-lints warn \
-W clippy::pedantic \
-W clippy::nursery \
2019-11-05 08:36:44 -06:00
2>&1 | tee clippy_output
2019-10-23 13:50:00 -05:00
cargo uninstall clippy
2018-05-16 02:10:35 -05:00
if grep -q "internal compiler error\|query stack during panic\|E0463" clippy_output; then
exit 1
fi