20 lines
626 B
Bash
20 lines
626 B
Bash
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
image='batonogov/pyinstaller-windows:latest'
|
|
container_id="$(docker create --platform linux/amd64 \
|
|
--env PYTHONUTF8=1 --env PYTHONIOENCODING=utf-8 \
|
|
"$image" 'python build.py --skip-installer')"
|
|
trap 'docker rm -f "$container_id" > /dev/null 2>&1 || true' EXIT
|
|
|
|
docker cp . "$container_id:/src"
|
|
docker start -a "$container_id" || true
|
|
status="$(docker inspect --format '{{.State.ExitCode}}' "$container_id")"
|
|
if [ "$status" -ne 0 ]; then
|
|
echo "PyInstaller container failed with exit code $status" >&2
|
|
exit "$status"
|
|
fi
|
|
|
|
mkdir -p dist
|
|
docker cp "$container_id:/src/dist/." dist/
|