Fix firewall backend installation

This commit is contained in:
Stanislas Lange
2026-08-04 11:55:40 +02:00
parent d2fc6d444b
commit c2b1b6999d
4 changed files with 110 additions and 19 deletions
+60
View File
@@ -0,0 +1,60 @@
#!/bin/bash
# shellcheck disable=SC1091,SC2034
# SC1091: The installer path is provided by the test environment.
# SC2034: Configuration globals are consumed by sourced installer functions.
set -euo pipefail
INSTALLER=${1:-/opt/openvpn-install.sh}
export FORCE_COLOR=0 LOG_FILE="" NON_INTERACTIVE_INSTALL=n OUTPUT_FORMAT=table
# shellcheck source=../openvpn-install.sh
source "$INSTALLER"
questions_called=n
validation_called=n
install_called=n
isOpenVPNInstalled() {
return 1
}
requireNoOpenVPN() {
return 0
}
installQuestions() {
questions_called=y
VPN_SUBNET_IPV4=10.23.0.0
VPN_SUBNET_IPV6=fd42:23::
CLIENT_IPV6=n
ROUTE_INTERNET=y
}
validate_configuration() {
validation_called=y
}
installOpenVPN() {
install_called=y
if [[ ${VPN_GATEWAY_IPV4:-} != "10.23.0.1" ]]; then
echo "FAIL: Interactive install did not prepare the IPv4 VPN gateway" >&2
exit 1
fi
if [[ ${IPV6_SUPPORT:-} != "n" ]]; then
echo "FAIL: Interactive install did not prepare legacy IPv6 state" >&2
exit 1
fi
}
cmd_interactive
for state in \
"questions_called:$questions_called" \
"validation_called:$validation_called" \
"install_called:$install_called"; do
if [[ ${state#*:} != "y" ]]; then
echo "FAIL: Interactive install skipped ${state%%:*}" >&2
exit 1
fi
done
echo "PASS: Interactive install prepares derived network configuration"