Skip to content

Commit 6035a4e

Browse files
committed
Fix permissions on file created by gitman
1 parent dddbca7 commit 6035a4e

File tree

1 file changed

+12
-3
lines changed

1 file changed

+12
-3
lines changed

entrypoint.sh

+12-3
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
: "${PROJECT_DIR:=/project}"
44
: "${GITMAN_CACHE:=/tmp}"
5+
: "${FIX_PERMISSIONS:=1}"
56

67
isCommand() {
78
case "$1" in
@@ -26,8 +27,6 @@ if [ -n "$PROJECT_DIR" ] && [ -d "$PROJECT_DIR" ] && [ -w "$PROJECT_DIR" ]; then
2627
fi
2728
fi
2829

29-
set -x
30-
3130
# check if the first argument passed in looks like a flag
3231
if [ "$(printf %c "$1")" = '-' ]; then
3332
set -- gitman "$@"
@@ -43,4 +42,14 @@ else
4342
exit 1
4443
fi
4544

46-
exec "$@"
45+
if [ "$(id -u)" = 0 ] && [ "$FIX_PERMISSIONS" = 1 ]; then
46+
command "$@"
47+
if [ -f "${PROJECT_DIR}/gitman.yml" ] &&
48+
location="$(grep ^location: "${PROJECT_DIR}/gitman.yml" | cut -c11-)" &&
49+
[ -w "${PROJECT_DIR}/${location}" ];
50+
then
51+
chown --recursive --reference="$PROJECT_DIR" "${PROJECT_DIR}/${location}"
52+
fi
53+
else
54+
exec "$@"
55+
fi

0 commit comments

Comments
 (0)