Files
photos/admin-client/scripts/env.sh
T
2024-04-17 22:54:13 +02:00

32 lines
826 B
Bash
Executable File

#!/bin/bash
envConfigFile=${1:-./env-config.js}
# Recreate config file
rm -rf $envConfigFile
touch $envConfigFile
# Add assignment
echo "window._env_ = {" >> $envConfigFile
# Read each line in .env file
# Each line represents key=value pairs
while read -r line || [[ -n "$line" ]];
do
# Split env variables by character `=`
if printf '%s\n' "$line" | grep -q -e '='; then
varname=$(printf '%s\n' "$line" | sed -e 's/=.*//')
varvalue=$(printf '%s\n' "$line" | sed -e 's/^[^=]*=//')
fi
# Read value of current variable if exists as Environment variable
value=$(printf '%s\n' "${!varname}")
# Otherwise use value from .env file
[[ -z $value ]] && value=${varvalue}
# Append configuration property to JS file
echo " $varname: \"$value\"," >> $envConfigFile
done < .env
echo "}" >> $envConfigFile