Provided by: torrus-common_3.00-2_all bug

NAME

       ttproclist - Process a template with a nodelist

SYNOPSIS

       torrus ttproclist --tmpl=TFILE --out=OFILE --nodes=NFILE [options...]

DESCRIPTION

       This command takes a Template-Toolkit template and a list of nodes (usually SNMP devices) as input. The
       output file is a result of template substitution, according to the specified options.  Command-line
       options --tmpl, --out and --nodes are mandatory.

       This utility can be used to generate the discovery instructions XML out of a predefined template and a
       dynamically generated list of devices.  Alternatively, it can produce Torrus XML configuration for a
       given list of objects, etc.

       The following variables are predefined when the template is processed:

       •   "nodes"

           Hash  array  of nodes. Hash keys are the node names. Values are symbolic names. If symbolic names are
           not defined, values are the same as keys.

       •   "param"

           Hash array of command-line parameters given in --param option.

       •   "nodesfile", "creator"

           Informative variables. They can be used  to  produce  the  creation  note  in  the  resulting  files.
           "nodesfile" returns the file name of nodes, and "creator" returns a detailed information how the file
           was generated, with timestamp and command line options.

OPTIONS

       --tmpl=TFILE
           The  file  name  of  the  input  template.  Relative names are looked in the current directory and in
           /etc/torrus/templates. The file name may also be an absolute path.

       --out=OFILE
           Output file name. If no absolute path given, the file is written in the current directory.

       --nodes=NFILE
           The name of the nodes list. Nodes  should  be  separated  by  space  or  tab  character  or  newline.
           Additional  information,  referred  to  as  symbolic name, can be supplied after a colon, of the form
           NODENAME:SYMBOLICNAME.

       --param=NAME:VALUE,NAME:VALUE...
           List of optional parameters that may be used in the template.

EXAMPLES

       The following example gerenates "devdiscover" input file from a template.  The template is as follows:

        <?xml version="1.0" encoding="UTF8"?>
        <snmp-discovery>
        >>> usual DDX parameters here, like SNMP community and data-dir
         <param name="snmp-community" value="private"/>
         <param...
        >>> This loop generates per-host entries
         [% FOREACH n = nodes.keys.sort %]
         <host>
           <param name="snmp-host" value="[% n %]"/>
           <param name="symbolic-name" value="[% nodes.$n %]"/>
           <param name="output-file" value="nodes/[% n %].xml"/>
         </host>
         [% END %]
        >>> Generate the bundle file, so that you need only one
        >>> entry in torrus-site-config.pl
         <param name="output-bundle" value="[% param.BUNDLE %].xml"/>
        </snmp-discovery>

       The following command would generate MY.ddx from template file MY.ddtmpl as  described  above.  The  file
       MY.nodes  is  a  list of SNMP devices, one per line. Then "devdiscover" is launched with MY.ddx as input.
       Note also the short form of the command line wrapper.

        torrus ttproclist --tmpl=MY.ddtmpl \
          --nodes=MY.nodes \
          --out=/usr/local/etc/torrus/discovery/MY.ddx \
          --param=BUNDLE:MYNODES

        torrus dd --in=MY.ddx --verbose

       In addition, you may put some common parameters in Template BLOCK  statement  in  a  separate  file,  and
       INCLUDE it in your templates. See the Template-Toolkit documentation for more detail.

NOTES

       See more documentation at Torrus home page: http://torrus.org

SEE ALSO

       Template-Toolkit documentation: http://template-toolkit.org/

       torrus(8), torrus_devdiscover(8)

AUTHOR

       Stanislav Sinyagin <ssinyagin@k-open.com>

torrus 3.00                                        2023-05-02                               TORRUS_TTPROCLIST(8)