<?xml version="1.0"?>
<interfaceDefinition>
  <node name="service">
    <children>
      <node name="salt-minion" owner="${vyos_conf_scripts_dir}/salt-minion.py">
        <properties>
          <help>Salt Minion</help>
          <priority>500</priority>
        </properties>
        <children>
          <leafNode name="hash_type">
            <properties>
              <help>Hash used when discovering file on master server (default: sha256)</help>
              <completionHelp>
                <list>md5 sha1 sha224 sha256 sha384 sha512</list>
              </completionHelp>
              <constraint>
                <regex>(md5|sha1|sha224|sha256|sha384|sha512)</regex>
              </constraint>
            </properties>
          </leafNode>
          <leafNode name="master">
            <properties>
              <help>The hostname or IP address of the master.</help>
              <valueHelp>
                <format>ipv4</format>
                <description>Remote syslog server IPv4 address</description>
              </valueHelp>
              <valueHelp>
                <format>hostname</format>
                <description>Remote syslog server FQDN</description>
              </valueHelp>
              <constraint>
                <validator name="ip-address"/>
                <validator name="fqdn"/>
              </constraint>
              <constraintErrorMessage>Invalid FQDN or IP address</constraintErrorMessage>
              <multi/>
            </properties>
          </leafNode>
          <leafNode name="id">
            <properties>
              <help>Explicitly declare the id for this minion to use.</help>
            </properties>
          </leafNode>
          <leafNode name="user">
            <properties>
              <help>The user to run the Salt processes.</help>
            </properties>
          </leafNode>
          <leafNode name="mine_interval">
            <properties>
              <help>The number of minutes between mine updates.</help>
            </properties>
          </leafNode>
          <leafNode name="master-key">
            <properties>
              <help>Enables verification of the master-public-signature returned by the master in auth-replies.</help>
            </properties>
          </leafNode>
        </children>
      </node>
    </children>
  </node>
</interfaceDefinition>