summaryrefslogtreecommitdiff
path: root/opendc-web/opendc-web-ui/scripts/envsubst-html.sh
diff options
context:
space:
mode:
Diffstat (limited to 'opendc-web/opendc-web-ui/scripts/envsubst-html.sh')
-rwxr-xr-xopendc-web/opendc-web-ui/scripts/envsubst-html.sh19
1 files changed, 19 insertions, 0 deletions
diff --git a/opendc-web/opendc-web-ui/scripts/envsubst-html.sh b/opendc-web/opendc-web-ui/scripts/envsubst-html.sh
new file mode 100755
index 00000000..8ca12e8a
--- /dev/null
+++ b/opendc-web/opendc-web-ui/scripts/envsubst-html.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+
+set -e
+
+# We can use simple version of envsubst execution as
+# envsubst < /usr/share/nginx/html/index.html.template > /usr/share/nginx/html/index.html
+# but it replaces everything that looks like environment variable substitution
+# so it affects `default values` approach.
+# we need to replace only provided environment variables.
+
+auto_envsubst() {
+ template_path="/usr/share/nginx/html/index.html.template"
+ output_path="/usr/share/nginx/html/index.html"
+ defined_envs=$(printf '${%s} ' $(env | cut -d= -f1))
+ envsubst "$defined_envs" < "$template_path" > "$output_path"
+}
+
+auto_envsubst
+exit 0