2021-05-19 22:57:50 +03:00
|
|
|
#!/bin/bash
|
|
|
|
set -euo pipefail
|
|
|
|
|
2021-05-19 22:57:50 +03:00
|
|
|
# Prefix the 'make <...>' with this script to build the artifact in an isolated
|
|
|
|
# container. This means host dependencies can only be Docker and a shell (to
|
|
|
|
# run this script).
|
|
|
|
#
|
|
|
|
# Usage:
|
|
|
|
# ./in-container make help
|
2021-05-19 23:53:06 +03:00
|
|
|
# ./in-container make -j2 mj-msc-full.pdf
|
2021-05-19 22:57:50 +03:00
|
|
|
# ...
|
2021-05-19 22:57:50 +03:00
|
|
|
|
2021-05-19 22:57:50 +03:00
|
|
|
NAME=wm-mj-build
|
2021-05-19 22:57:50 +03:00
|
|
|
if [[ -z "$(docker images -q --filter "reference=$NAME")" ]]; then
|
2021-05-19 22:57:50 +03:00
|
|
|
docker build -t "$NAME" .
|
2021-05-19 22:57:50 +03:00
|
|
|
fi
|
|
|
|
|
2021-05-19 22:57:50 +03:00
|
|
|
exec docker run -ti --rm \
|
|
|
|
--net=host \
|
2021-05-19 22:57:50 +03:00
|
|
|
-v /var/run/docker.sock:/var/run/docker.sock \
|
2021-05-19 23:53:06 +03:00
|
|
|
-v ${PWD}:/x \
|
|
|
|
-w /x \
|
2021-05-19 22:57:50 +03:00
|
|
|
"$NAME" "$@"
|