diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index f3c01116..1c84c5c3 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -98,16 +98,7 @@ jobs: - name: Test (Unix) if: ${{ matrix.test && matrix.os != 'windows-latest' }} - run: | - set -euxo pipefail - for bin in $bins; do ./${{ matrix.output }} binstall --log-level debug --no-confirm $bin; done - for bin in $test_bins; do $HOME/.cargo/bin/$bin --version; done - cargo binstall --help >/dev/null - ./${{ matrix.output }} binstall --log-level debug --manifest-path . --no-confirm cargo-binstall - cargo binstall --help >/dev/null - env: - bins: cargo-deb cargo-llvm-cov cargo-binstall - test_bins: cargo-deb cargo-llvm-cov + run: ./ci-scripts/run_tests_unix.sh ${{ matrix.output }} - name: Test (Windows) if: ${{ matrix.os == 'windows-latest' }} diff --git a/ci-scripts/run_tests_unix.sh b/ci-scripts/run_tests_unix.sh new file mode 100755 index 00000000..dbc25abd --- /dev/null +++ b/ci-scripts/run_tests_unix.sh @@ -0,0 +1,22 @@ +#!/bin/bash + +set -euxo pipefail + +bins="cargo-deb cargo-llvm-cov cargo-binstall" +test_bins="cargo-deb cargo-llvm-cov" + +# Install binaries using cargo-binstall +for bin in $bins; do + "./$1" binstall --log-level debug --no-confirm "$bin" +done + +# Test that the installed binaries can be run +for bin in $test_bins; do + "$HOME/.cargo/bin/$bin" --version +done +cargo binstall --help >/dev/null + +# Install binaries using `--manifest-path` +"./$1" binstall --log-level debug --manifest-path . --no-confirm cargo-binstall +# Test that the installed binaries can be run +cargo binstall --help >/dev/null