mirror of
https://github.com/falk-werner/webfuse
synced 2024-10-27 20:34:10 +00:00
- simplifies scripts to support posix shell - adds REGISTERY_PREFIX to support usage of local docker registry - renames wrapper template - adds discovery for tty and interactive for wrappers
51 lines
1.2 KiB
Bash
51 lines
1.2 KiB
Bash
#!/bin/sh
|
|
|
|
set -e
|
|
|
|
DOCKER="${DOCKER:-%DOCKER%}"
|
|
IMAGE="${IMAGE:-%IMAGE%}"
|
|
NETWORK="${NETWORK:-host}"
|
|
USERID="${USERID:-$(id -u)}"
|
|
PROJECT_ROOT="${PROJECT_ROOT:-%PROJECT_ROOT%}"
|
|
SCRIPT_ROOT="${SCRIPT_ROOT:-"$PROJECT_ROOT/build"}"
|
|
ENTRYPOINT="${ENTRYPOINT:-%RUNCMD%}"
|
|
|
|
if [ ! -d "$SCRIPT_ROOT" ]; then
|
|
echo "error:$0: $SCRIPT_ROOT not found; set project root (PROJECT_ROOT=)" 1>&2
|
|
exit 1
|
|
fi
|
|
|
|
HOST_CONTAINER="${HOST_CONTAINER:-"$("$SCRIPT_ROOT/get_container_id.sh")"}" || true
|
|
|
|
RUNFLAGS='%RUNFLAGS%'
|
|
|
|
if [ -n "$HOST_CONTAINER" ]; then
|
|
RUNFLAGS="$RUNFLAGS --volumes-from $HOST_CONTAINER"
|
|
fi
|
|
|
|
RUNFLAGS="$RUNFLAGS --network $NETWORK"
|
|
|
|
if [ -n "$CONTAINER_CGROUP_PARENT" ]; then
|
|
RUNFLAGS="$RUNFLAGS --cgroup-parent $CONTAINER_CGROUP_PARENT"
|
|
fi
|
|
|
|
RUNFLAGS="$RUNFLAGS --workdir $PWD"
|
|
|
|
# if STDIN piped or redirected
|
|
if [ -p /dev/stdin ] || { [ ! -t 0 ] && [ ! -p /dev/stdin ]; }; then
|
|
RUNFLAGS="$RUNFLAGS --interactive"
|
|
elif [ -t 1 ]; then
|
|
RUNFLAGS="$RUNFLAGS --tty"
|
|
fi
|
|
|
|
if [ -t 0 ] && ! "$SCRIPT_ROOT/is_running_in_bg.sh" $$; then
|
|
RUNFLAGS="$RUNFLAGS --interactive"
|
|
fi
|
|
|
|
RUNFLAGS="$RUNFLAGS --user $USERID:$USERID"
|
|
|
|
# shellcheck disable=SC2086
|
|
set -- $RUNFLAGS --entrypoint "$ENTRYPOINT" "$IMAGE" "$@"
|
|
|
|
exec "$DOCKER" run "$@"
|