feat(minecraft-server): replace environment variables in configs

Add additional setup script that replaces environment variables inside
config files.

Closes #298
This commit is contained in:
Michael Reichenbach
2019-03-23 14:12:58 +01:00
parent 1cc902062a
commit b51b19b3c0
3 changed files with 31 additions and 15 deletions

View File

@@ -0,0 +1,15 @@
#!/bin/bash
if [ "$REPLACE_ENV_VARIABLES" = "TRUE" ]; then
echo "Replacing env variables in configs that match the prefix $ENV_VARIABLE_PREFIX..."
while IFS='=' read -r name value ; do
# check if name of env variable matches the prefix
# sanity check environment variables to avoid code injections
if [[ "$name" = $ENV_VARIABLE_PREFIX* ]] && [[ $value =~ ^[0-9a-zA-Z_\-:/=?.+]*$ ]] && [[ $name =~ ^[0-9a-zA-Z_\-]*$ ]]; then
echo "$name = $value"
find /data/ -type f -exec sed -i 's#${'"$name"'}#'"$value"'#g' {} \;
fi
done < <(env)
fi
exec /start-minecraftFinalSetup $@