]> git.localhorst.tv Git - blank.git/blobdiff - scripts/docker/exec.bash
move env inside docker container
[blank.git] / scripts / docker / exec.bash
index cb6a6651b8d84b376f78607cb75e59671e33cb5c..e55ce57de700c988020c7985f9bee9d01c85b771 100755 (executable)
@@ -9,15 +9,30 @@
 
 IMAGE="${IMAGE:-archlinux-build}"
 
+image_name="localhorsttv/${IMAGE}"
+image_path="scripts/docker/${IMAGE//:/-}"
+
+build_cmd="cd /repo && make -j\$(nproc) $TARGETS"
+
 local_conf=""
 
 if [[ "$TARGETS" == *codecov* ]]; then
        local_conf="$local_conf $(bash <(curl -s https://codecov.io/env))"
 fi
 
-if [ -e scripts/docker/"${IMAGE}"/env ]; then
-       local_conf="$local_conf --env-file scripts/docker/${IMAGE}/env"
+if [ -e "${image_path}/env" ]; then
+       local_conf="$local_conf --env-file ${image_path}/env"
+fi
+
+# copy DISPLAY if set
+if [ "$DISPLAY" != "" ]; then
+       local_conf="$local_conf -e DISPLAY=$DISPLAY"
+fi
+
+# copy XDG_RUNTIME_DIR if set
+if [ "$XDG_RUNTIME_DIR" != "" ]; then
+       local_conf="$local_conf -e XDG_RUNTIME_DIR='$XDG_RUNTIME_DIR'"
 fi
 
-docker build -t "blank/${IMAGE}" scripts/docker/"${IMAGE}"
-docker run -v "$PWD":/repo ${local_conf} "blank/${IMAGE}" /bin/bash -c "cd /repo && make -j\$(nproc) $TARGETS"
+docker build -t "${image_name}" --pull=true "${image_path}"
+docker run -v "$PWD":/repo ${local_conf} "${image_name}" /bin/bash -c "env && ${build_cmd}"