<?xml version='1.0' encoding='UTF-8'?>
<rougail version="0.10">
  <variables>
    <variable name="remotes" type="domainname" description="Nom des domaines dans le serveur mandataire inverse" multi="True" provider="ReverseProxy"/>
    <family name="reverse_proxy_for_" description="Serveur mandataire inverse pour " dynamic="nginx.remotes">
      <family name="reverse_proxy_" description="Reverse proxy " help="Paramètrage du proxy inverse" leadership="True">
        <variable name="revprox_domainnames_" type="domainname" description="Nom des domaines auto-configurés dans le serveur mandataire inverse" multi="True" provider="ReverseProxy:external" hidden="True"/>
        <variable name="revprox_location_" type="filename" description="Répertoire ou nom de la page à rediriger pour " help="URL relative (sans le nom de domaine) redirigée pour l'adresse définie dans la variable ci-dessus (exemple &quot;/mail&quot;)" mandatory="True" multi="True" provider="ReverseProxy:location"/>
        <variable name="revprox_url_" type="web_address" description="Domaine de destination ou URI complète pour " mandatory="True" help="Nom de domaine ou IP de destination, par exemple &quot;http://domainelocal&quot; ou URI, par exemple &quot;http://domainelocal/dir/&quot;" provider="ReverseProxy:url"/>
        <variable name="revprox_is_websocket_" type="boolean" description="Le point d'entrée est de types websocket pour " mandatory="True" multi="True" provider="ReverseProxy:websocket"/>
        <variable name="revprox_max_body_size_" description="Taille maximum du corps pour " provider="ReverseProxy:max_body_size"/>
      </family>
    </family>
    <variable name="revprox_domainnames" type="domainname" description="Nom des domaines auto-configurés dans le serveur mandataire inverse" multi="True" hidden="True"/>
    <variable name='nginx_private_key_filename' type="filename" description="Private key filename" hidden='True' multi='True'/>
    <variable name='nginx_certificate_filename' type="filename" description="Certificate filename" hidden='True' multi='True'/>
  </variables>
  <constraints>
    <fill name="nginx_list">
      <param type="variable">nginx.reverse_proxy_for_.reverse_proxy_.revprox_domainnames_</param>
      <target>nginx.revprox_domainnames</target>
    </fill>
    <fill name="calc_value">
      <param>/etc/pki/tls/certs/</param>
      <param type="variable">nginx.revprox_domainnames</param>
      <param>.crt</param>
      <param name="join"></param>
      <param name="multi" type="boolean">True</param>
      <target>nginx.nginx_certificate_filename</target>
    </fill>
    <fill name="calc_value">
      <param>/etc/pki/tls/private/</param>
      <param type="variable">nginx.revprox_domainnames</param>
      <param>.key</param>
      <param name="join"></param>
      <param name="multi" type="boolean">True</param>
      <target>nginx.nginx_private_key_filename</target>
    </fill>
    <fill name="get_first_value">
      <param type="variable">nginx.reverse_proxy_for_.reverse_proxy_.revprox_domainnames_</param>
      <target>nginx_default</target>
    </fill>
  </constraints>
</rougail>
