summaryrefslogtreecommitdiffhomepage
path: root/test/build.sh
blob: 133120e6f7afda9d09d3977d3e7b9cc0f579e30e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#!/usr/bin/env bash

set -eu

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}" .

    podman run --rm -it \
        -v "${SCRIPT_DIR}/.container/cargo-registry":/root/.cargo/registry \
        -v "${APP_DIR}":/src:Z \
        -e CARGO_HOME=/root/.cargo/registry \
        -e CARGO_TARGET_DIR=/src/test/target \
        mullvadvpn-app-tests \
        /bin/bash -c "cd /src/test/; cargo build --bin test-runner --release --target ${TARGET}"
else
    cargo build --bin test-runner --release --target "${TARGET}"
fi

# Don't build a runner image for macOS.
if [[ $TARGET != aarch64-apple-darwin ]]; then
    ./scripts/build-runner-image.sh
fi