set load-balancing reverse-proxy backend nextcloud parameters http-check set load-balancing reverse-proxy backend nextcloud server lnx03 address '172.16.36.40' set load-balancing reverse-proxy backend nextcloud server lnx03 port '443' set load-balancing reverse-proxy backend nextcloud ssl no-verify set load-balancing reverse-proxy global-parameters max-connections '100' set load-balancing reverse-proxy global-parameters tls-version-min '1.3' set load-balancing reverse-proxy service cloud backend 'nextcloud' set load-balancing reverse-proxy service cloud port '443' set load-balancing reverse-proxy service cloud redirect-http-to-https set load-balancing reverse-proxy service cloud ssl certificate 'foo'
The Jinja2 template reads:
{% if backend is vyos_defined %}
{% for back, back_config in backend.items() %}
backend {{ back }}
{% if back_config.http_check is vyos_defined %}
option httpchk
{% endif %}
{% set send = '' %}
{% if back_config.http_check.method is vyos_defined %}
{% set send = send + ' meth ' + back_config.http_check.method | upper %}
{% endif %}
{% if back_config.http_check.uri is vyos_defined %}
{% set send = send + ' uri ' + back_config.http_check.uri %}
{% endif %}
{% if send != '' %}So set load-balancing reverse-proxy backend nextcloud parameters http-check is never evaluated as the check is for back_config.http_check and not back_config.parameters.http_check