38 lines
1.1 KiB
Bash
Executable File
38 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
set -euo pipefail
|
|
|
|
REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
TMP_DIR="$(mktemp -d)"
|
|
trap 'rm -rf "$TMP_DIR"' EXIT
|
|
|
|
# shellcheck source=init-server-http-bind-ip.sh
|
|
. "$REPO_ROOT/scripts/init-server-http-bind-ip.sh"
|
|
|
|
write_env() {
|
|
printf '%s\n' "$1" > "$TMP_DIR/.env"
|
|
}
|
|
|
|
write_env 'NUXT_PUBLIC_BASE_APIURL=/api'
|
|
init_server_http_bind_ip "$TMP_DIR/.env" >/dev/null
|
|
grep -qx 'SERVER_HTTP_BIND_IP=127.0.0.1' "$TMP_DIR/.env"
|
|
|
|
write_env 'NUXT_PUBLIC_BASE_APIURL=http://10.0.0.8:3001'
|
|
init_server_http_bind_ip "$TMP_DIR/.env" >/dev/null
|
|
grep -qx 'SERVER_HTTP_BIND_IP=0.0.0.0' "$TMP_DIR/.env"
|
|
|
|
write_env 'NUXT_PUBLIC_BASE_APIURL=http://127.0.0.1:3001'
|
|
init_server_http_bind_ip "$TMP_DIR/.env" >/dev/null
|
|
grep -qx 'SERVER_HTTP_BIND_IP=127.0.0.1' "$TMP_DIR/.env"
|
|
|
|
write_env $'NUXT_PUBLIC_BASE_APIURL=/api\nSERVER_HTTP_BIND_IP=0.0.0.0'
|
|
init_server_http_bind_ip "$TMP_DIR/.env" >/dev/null
|
|
grep -qx 'SERVER_HTTP_BIND_IP=0.0.0.0' "$TMP_DIR/.env"
|
|
|
|
if init_server_http_bind_ip "$TMP_DIR/.env" '192.168.1.8' >/dev/null 2>&1; then
|
|
echo 'Invalid SERVER_HTTP_BIND_IP unexpectedly accepted' >&2
|
|
exit 1
|
|
fi
|
|
|
|
echo 'Server HTTP bind IP shell tests passed'
|