net/haproxy: add support for advanced server options

This commit is contained in:
Frank Wall
2016-11-16 06:51:06 +01:00
committed by Franco Fichtner
parent 42041e5fd5
commit 48c75b1cef
3 changed files with 14 additions and 0 deletions
@@ -94,4 +94,11 @@
<help><![CDATA[Sets the source address which will be used when connecting to the server.]]></help>
<advanced>true</advanced>
</field>
<field>
<id>server.advanced</id>
<label>Advanced options</label>
<type>text</type>
<help><![CDATA[A list of parameters that will be appended to the server line in every backend where this is will be used.<br/>Example: send-proxy<br/><div class="text-info"><b>NOTE:</b> The syntax will not be checked, use at your own risk!</div>.]]></help>
<advanced>true</advanced>
</field>
</form>
@@ -612,6 +612,9 @@
<ValidationMessage>Please specify a valid source address, i.e. 10.0.0.1 or loadbalancer.example.com:50000. Port range as start-end, i.e. 10.0.0.1:50000-60000.</ValidationMessage>
<Required>N</Required>
</source>
<advanced type="TextField">
<Required>N</Required>
</advanced>
</server>
</servers>
<healthchecks>
@@ -837,6 +837,10 @@ backend {{backend.name}}
{% do server_options.append('source ' ~ backend.source) %}
{% elif server_data.source|default("") != "" %}
{% do server_options.append('source ' ~ server_data.source) %}
{% endif %}
{# # server advanced options #}
{% if server_data.advanced|default("") != "" %}
{% do server_options.append(server_data.advanced) %}
{% endif %}
server {{server_data.name}} {{server_data.address}}:{% if backend.tuning_noport != '1' %}{{server_data.port}}{% endif %} {{server_options|join(' ')}}
{% endfor %}