2018-11-11 08:19:04 -08:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
set -e
|
2018-08-06 08:57:12 -07:00
|
|
|
|
|
|
|
require() {
|
|
|
|
declare expectedProgram="$1"
|
|
|
|
declare expectedVersion="$2"
|
|
|
|
|
|
|
|
read -r program version _ < <($expectedProgram -V)
|
|
|
|
|
|
|
|
declare ok=true
|
|
|
|
[[ $program = "$expectedProgram" ]] || ok=false
|
|
|
|
[[ $version =~ $expectedVersion ]] || ok=false
|
|
|
|
|
|
|
|
echo "Found $program $version"
|
|
|
|
if ! $ok; then
|
|
|
|
echo Error: expected "$expectedProgram $expectedVersion"
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
}
|
|
|
|
|
|
|
|
case ${1:-stable} in
|
|
|
|
nightly)
|
2018-11-12 19:36:36 -08:00
|
|
|
require rustc 1.32.[0-9]+-nightly
|
|
|
|
require cargo 1.32.[0-9]+-nightly
|
2018-08-06 08:57:12 -07:00
|
|
|
;;
|
|
|
|
stable)
|
2018-12-07 19:01:28 -08:00
|
|
|
require rustc 1.31.[0-9]+
|
|
|
|
require cargo 1.31.[0-9]+
|
2018-08-06 08:57:12 -07:00
|
|
|
;;
|
|
|
|
*)
|
|
|
|
echo Error: unknown argument: "$1"
|
|
|
|
exit 1
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
|
|
|
|
exit 0
|