Update docker/headscale/start.sh

This commit is contained in:
colin 2024-01-21 23:08:28 +00:00
parent dcab9adf67
commit a38bd75474
1 changed files with 8 additions and 11 deletions

View File

@ -17,21 +17,18 @@ replace_config_values() {
fi fi
# Read the template and replace variables # Read the template and replace variables
local temp_file=$(mktemp) while IFS= read -r line || [[ -n "$line" ]]; do
cp "$config_template" "$temp_file" while [[ "$line" =~ \$\{([a-zA-Z_][a-zA-Z_0-9]*)\} ]]; do
while read -r line; do var_name=${BASH_REMATCH[1]}
while [[ "$line" =~ (\$\{[a-zA-Z_][a-zA-Z_0-9]*\}) ]]; do var_value=$(eval echo "\$$var_name")
LHS=${BASH_REMATCH[1]} line=${line//\$\{$var_name\}/$var_value}
RHS="$(eval echo "\"$LHS\"")"
line=${line//$LHS/$RHS}
done done
echo "$line" echo "$line"
done < "$temp_file" > "$config_output" done < "$config_template" > "$config_output"
rm "$temp_file"
echo "Config file generated at $config_output" echo "Config file generated at $config_output"
} }
# Example usage in your startup script # Run the function to replace variables and start headscale
replace_config_values replace_config_values
headscale headscale