24 lines
461 B
Bash
24 lines
461 B
Bash
#!/bin/sh
|
|
set -eu
|
|
|
|
for name in ${HAN_SECRET_VARS:-}; do
|
|
case "$name" in
|
|
""|[0-9]*|*[!A-Z0-9_]*)
|
|
echo "container secrets: invalid variable name" >&2
|
|
exit 64
|
|
;;
|
|
*) ;;
|
|
esac
|
|
eval "file=\${${name}_FILE:-}"
|
|
if [ -z "$file" ] || [ ! -r "$file" ]; then
|
|
echo "container secrets: missing file for $name" >&2
|
|
exit 66
|
|
fi
|
|
value=$(cat "$file")
|
|
export "$name=$value"
|
|
unset "${name}_FILE"
|
|
done
|
|
|
|
unset HAN_SECRET_VARS
|
|
exec "$@"
|