mirror of
https://github.com/itzg/docker-minecraft-server
synced 2024-12-13 22:02:28 +00:00
a316bd8f95
Environment variable replacement now only affects matching file types. Closes #299
15 lines
No EOL
726 B
Bash
15 lines
No EOL
726 B
Bash
#!/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 "Replacing $name with $value ..."
|
|
find /data/ -type f \( -name "*.yml" -or -name "*.yaml" -or -name "*.txt" -or -name "*.cfg" -or -name "*.properties" \) -exec sed -i 's#${'"$name"'}#'"$value"'#g' {} \;
|
|
fi
|
|
done < <(env)
|
|
fi
|
|
|
|
exec /start-minecraftFinalSetup $@ |