-
-
Notifications
You must be signed in to change notification settings - Fork 153
Expand file tree
/
Copy pathnodejs-cmd.sh
More file actions
executable file
·36 lines (33 loc) · 843 Bytes
/
nodejs-cmd.sh
File metadata and controls
executable file
·36 lines (33 loc) · 843 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/usr/bin/env bash
[[ -f ${PWD}/.flowcharting_env ]] && source ${PWD}/.flowcharting_env
[ -z ${NODEJS_MODE+x} ] && NODEJS_MODE=local
echo "NODEJS_MODE=${NODEJS_MODE}"
_NODEJS_VERSION=14-slim
_DOCKER_IMAGE="node:${_NODEJS_VERSION}"
_NODEJS_CMD="$@"
_USER_UID=$(id -u)
_USER_GID=$(id -g)
build_env() {
_TMP_FILE=$(mktemp)
envsubst <.flowcharting_env >${_TMP_FILE}
echo ${_TMP_FILE}
}
if [ "${NODEJS_MODE}" == "docker" ]; then
echo "Running docker ..."
_TMP_ENV_FILE=$(build_env)
docker run --rm \
-it \
--user ${_USER_UID}:${_USER_GID} \
--ipc=host \
--net=host \
--env-file ${_TMP_ENV_FILE} \
--volume="${PWD}":/usr/src/app \
--workdir /usr/src/app \
${_DOCKER_IMAGE} \
/bin/sh -c "${_NODEJS_CMD}"
_RETURN_CODE=$?
rm ${_TMP_ENV_FILE}
exit ${_RETURN_CODE}
else
${_NODEJS_CMD}
fi