diff options
| author | David Lönnhager <david.l@mullvad.net> | 2024-04-28 18:52:30 +0200 |
|---|---|---|
| committer | David Lönnhager <david.l@mullvad.net> | 2024-04-29 13:34:19 +0200 |
| commit | aca3448cf7484ffa8bfe95e27f00d2cd15c870a4 (patch) | |
| tree | 47e5a3846ffaeb90b86db0465384227821c41854 /test | |
| parent | f173d8cc7039c71f0e5306ff88b019d69cf02b1f (diff) | |
| download | mullvadvpn-aca3448cf7484ffa8bfe95e27f00d2cd15c870a4.tar.xz mullvadvpn-aca3448cf7484ffa8bfe95e27f00d2cd15c870a4.zip | |
Share cargo registry between app and test containers
Diffstat (limited to 'test')
| -rwxr-xr-x | test/build.sh | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/test/build.sh b/test/build.sh index d3a3c17470..e7431b6656 100755 --- a/test/build.sh +++ b/test/build.sh @@ -2,19 +2,26 @@ set -eu +if [[ -z ${TARGET:-""} ]]; then + echo "\$TARGET must be specified" + exit 1 +fi + SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" APP_DIR="$SCRIPT_DIR/.." cd "$SCRIPT_DIR" if [[ $TARGET == x86_64-unknown-linux-gnu ]]; then - mkdir -p .container/cargo-registry - container_image=$(cat "$APP_DIR/building/linux-container-image.txt") - podman build -t mullvadvpn-app-tests --build-arg IMAGE="${container_image}" . + CARGO_REGISTRY_VOLUME_NAME=${CARGO_REGISTRY_VOLUME_NAME:-"cargo-registry"} + + if ! podman image exists mullvadvpn-app-tests; then + container_image=$(cat "$APP_DIR/building/linux-container-image.txt") + podman build -t mullvadvpn-app-tests --build-arg IMAGE="${container_image}" . + fi podman run --rm -it \ - -v "${SCRIPT_DIR}/.container/cargo-registry":/root/.cargo/registry \ - -v "${APP_DIR}":/src:Z \ - -e CARGO_HOME=/root/.cargo/registry \ + -v "${CARGO_REGISTRY_VOLUME_NAME}":/root/.cargo/registry:Z \ + -v "${APP_DIR}":/src:z \ -e CARGO_TARGET_DIR=/src/test/target \ mullvadvpn-app-tests \ /bin/bash -c "cd /src/test/; cargo build --bin test-runner --bin connection-checker --release --target ${TARGET}" |
