diff --git a/Dockerfile b/Dockerfile index 79dfcd3..c1480e7 100644 --- a/Dockerfile +++ b/Dockerfile @@ -5,15 +5,7 @@ COPY . . RUN rustup target add wasm32-unknown-unknown RUN cargo install wasm-bindgen-cli -RUN cargo build --release --target wasm32-unknown-unknown -p app - -RUN mkdir -p static && \ - wasm-bindgen --out-name 3dscene \ - --out-dir static \ - --target web \ - target/wasm32-unknown-unknown/release/app.wasm && \ - cp web/index.html static/ - +RUN ./build-wasm.sh RUN cargo build --release -p server FROM debian:trixie-slim diff --git a/build-wasm.sh b/build-wasm.sh new file mode 100755 index 0000000..782d020 --- /dev/null +++ b/build-wasm.sh @@ -0,0 +1,21 @@ +#!/usr/bin/env bash +set -euo pipefail + +PROFILE="${1:-release}" + +if [ "$PROFILE" = "dev" ]; then + PROFILE_DIR="debug" + CARGO_FLAGS="" +else + PROFILE_DIR="release" + CARGO_FLAGS="--release" +fi + +cargo build $CARGO_FLAGS --target wasm32-unknown-unknown -p app + +mkdir -p static +wasm-bindgen --out-name 3dscene \ + --out-dir static \ + --target web \ + "target/wasm32-unknown-unknown/$PROFILE_DIR/app.wasm" +cp web/index.html static/