diff options
| author | Viacheslav Hletenko <v.gletenko@vyos.io> | 2023-05-19 09:57:11 +0000 | 
|---|---|---|
| committer | Viacheslav Hletenko <v.gletenko@vyos.io> | 2023-05-19 09:57:11 +0000 | 
| commit | e201bd35511e1a000ffa21a4194d234634cfd76c (patch) | |
| tree | dc5a8d347868a518c0bc35b0c3cee7e1d86c021b /interface-definitions/include | |
| parent | e164b6e4654eba24d7d4a6aadae69da67661858f (diff) | |
| download | vyos-1x-e201bd35511e1a000ffa21a4194d234634cfd76c.tar.gz vyos-1x-e201bd35511e1a000ffa21a4194d234634cfd76c.zip | |
T5222: Refactoring load-balancing reverse-proxy
Improve and refactoring "load-balancing reverse-proxy"
 - replace 'reverse-proxy server <tag>'
        => 'reverse-proxy service <tag>'
 - replace 'reverse-proxy global-parameters tls <xxx>'
        => 'reverse-proxy global-parameters tls-version-min xxx'
        => 'reverse-proxy global-parameters ssl-bind-ciphers xxx'
 - replace 'reverse-proxy service https rule <tag> set server 'xxx'
        => 'reverse-proxy service https rule <tag> set backend 'xxx'
  'service https rule <tag> domain-name xxx' set as multinode
Diffstat (limited to 'interface-definitions/include')
| -rw-r--r-- | interface-definitions/include/haproxy/rule-backend.xml.i (renamed from interface-definitions/include/haproxy/rule.xml.i) | 1 | ||||
| -rw-r--r-- | interface-definitions/include/haproxy/rule-frontend.xml.i | 131 | 
2 files changed, 132 insertions, 0 deletions
| diff --git a/interface-definitions/include/haproxy/rule.xml.i b/interface-definitions/include/haproxy/rule-backend.xml.i index 9d9f63c9c..a6832d693 100644 --- a/interface-definitions/include/haproxy/rule.xml.i +++ b/interface-definitions/include/haproxy/rule-backend.xml.i @@ -22,6 +22,7 @@          <constraint>            <validator name="fqdn"/>          </constraint> +        <multi/>        </properties>      </leafNode>      <node name="set"> diff --git a/interface-definitions/include/haproxy/rule-frontend.xml.i b/interface-definitions/include/haproxy/rule-frontend.xml.i new file mode 100644 index 000000000..001ae2d80 --- /dev/null +++ b/interface-definitions/include/haproxy/rule-frontend.xml.i @@ -0,0 +1,131 @@ +<!-- include start from haproxy/rule.xml.i --> +<tagNode name="rule"> +  <properties> +    <help>Proxy rule number</help> +    <valueHelp> +      <format>u32:1-10000</format> +      <description>Number for this proxy rule</description> +    </valueHelp> +    <constraint> +      <validator name="numeric" argument="--range 1-10000"/> +    </constraint> +    <constraintErrorMessage>Proxy rule number must be between 1 and 10000</constraintErrorMessage> +  </properties> +  <children> +    <leafNode name="domain-name"> +      <properties> +        <help>Domain name to match</help> +        <valueHelp> +          <format>txt</format> +          <description>Domain address to match</description> +        </valueHelp> +        <constraint> +          <validator name="fqdn"/> +        </constraint> +        <multi/> +      </properties> +    </leafNode> +    <node name="set"> +      <properties> +        <help>Proxy modifications</help> +      </properties> +      <children> +        <leafNode name="redirect-location"> +          <properties> +            <help>Set URL location</help> +            <valueHelp> +              <format>url</format> +              <description>Set URL location</description> +            </valueHelp> +            <constraint> +              <regex>^\/[\w\-.\/]+$</regex> +            </constraint> +            <constraintErrorMessage>Incorrect URL format</constraintErrorMessage> +          </properties> +        </leafNode> +        <leafNode name="backend"> +          <properties> +            <help>Backend name</help> +            <constraint> +              <regex>[-_a-zA-Z0-9]+</regex> +            </constraint> +            <constraintErrorMessage>Server name must be alphanumeric and can contain hyphen and underscores</constraintErrorMessage> +          </properties> +        </leafNode> +      </children> +    </node> +    <leafNode name="ssl"> +      <properties> +        <help>SSL match options</help> +        <completionHelp> +          <list>req-ssl-sni ssl-fc-sni</list> +        </completionHelp> +        <valueHelp> +          <format>req-ssl-sni</format> +          <description>SSL Server Name Indication (SNI) request match</description> +        </valueHelp> +        <valueHelp> +          <format>ssl-fc-sni</format> +          <description>SSL frontend connection Server Name Indication match</description> +        </valueHelp> +        <valueHelp> +          <format>ssl-fc-sni-end</format> +          <description>SSL frontend match end of connection Server Name Indication</description> +        </valueHelp> +        <constraint> +          <regex>(req-ssl-sni|ssl-fc-sni|ssl-fc-sni-end)</regex> +        </constraint> +      </properties> +    </leafNode> +    <node name="url-path"> +      <properties> +        <help>URL path match</help> +      </properties> +      <children> +        <leafNode name="begin"> +          <properties> +            <help>Begin URL match</help> +            <valueHelp> +              <format>url</format> +              <description>Begin URL</description> +            </valueHelp> +            <constraint> +              <regex>^\/[\w\-.\/]+$</regex> +            </constraint> +            <constraintErrorMessage>Incorrect URL format</constraintErrorMessage> +            <multi/> +          </properties> +        </leafNode> +        <leafNode name="end"> +          <properties> +            <help>End URL match</help> +            <valueHelp> +              <format>url</format> +              <description>End URL</description> +            </valueHelp> +            <constraint> +              <regex>^\/[\w\-.\/]+$</regex> +            </constraint> +            <constraintErrorMessage>Incorrect URL format</constraintErrorMessage> +            <multi/> +          </properties> +        </leafNode> +        <leafNode name="exact"> +          <properties> +            <help>Exactly URL match</help> +            <valueHelp> +              <format>url</format> +              <description>Exactly URL</description> +            </valueHelp> +            <constraint> +              <regex>^\/[\w\-.\/]+$</regex> +            </constraint> +            <constraintErrorMessage>Incorrect URL format</constraintErrorMessage> +            <multi/> +          </properties> +        </leafNode> +      </children> +    </node> +  </children> +</tagNode> +<!-- include end --> | 
