diff --git a/CHANGELOG.md b/CHANGELOG.md index 1fb11fc..a74e84c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,16 @@ Changelog of Git Changelog.

No issue

+93c4d60d239af95 Arne Teuke 2017-07-28 18:49:03 +

+

updated parameter

+ +

+f6ce7ebb93b4562 Jenkins Server 2017-07-28 18:48:58 +

+

recommit for updates in build 39

+ +

ba9e027f7201e79 Arne Teuke 2017-07-28 18:33:24

updated template

diff --git a/README.md b/README.md index af84c47..3257254 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ |Repo Name| version | Build Status| |---|---|---|---| -|`cd_nrpe`| 0.0.0.1 | [![Build Status](https://jenkins.confdroid.com/buildStatus/icon?job=cd_nrpe)](https://jenkins.confdroid.com/job/cd_nrpe/)| +|`cd_nrpe`| 0.0.0.2 | [![Build Status](https://jenkins.confdroid.com/buildStatus/icon?job=cd_nrpe)](https://jenkins.confdroid.com/job/cd_nrpe/)| ### Synopsis NRPE allows monitoring tools like NAGIOS or ICINGA to connect to clients for monitoring purposes. @@ -19,6 +19,7 @@ NRPE allows monitoring tools like NAGIOS or ICINGA to connect to clients for mon * [native Puppet deployment](#native-puppet-deployment) * [through Foreman](#through-foreman) * [Parameters](#parameters) +* [Managing Check Commands](#managing-check-commands) * [SELINUX](#selinux) * [Known Problems](#known-problems) * [Support](#support) @@ -76,6 +77,18 @@ See [more details about class deployment on Confdroid.com](https://confdroid.com The following parameters are editable via params.pp or through ENC (**__recommended__**). Values changed will take immediate effect at next puppet run. Services will be restarted where neccessary. +### Mandatory Parameters + +There are currently no mandatory parameters, i.e. the module will function right out of box as is. + +### Optional Parameters + +* `$ne_manage_cmds` : Whether to manage check command definitions dynamically through a define, i.e. from other Puppet modules or profiles. Defaults to `true`. +* `$ne_incl_fw` : Whether to manage relevant firewall rules through this modules. Defaults to `true`. +* `$ne_include_selinux` : Whether to manage selinux exception rules. Defaults to `true`. + +### Managing Check Commands + ### SELINUX All files and directories are configured with correct selinux context. If selinux is disabled, these contexts are ignored. diff --git a/REPOSTRUCTURE.md b/REPOSTRUCTURE.md index 1d1d052..6a2728d 100644 --- a/REPOSTRUCTURE.md +++ b/REPOSTRUCTURE.md @@ -31,6 +31,7 @@ | `-- top-level-namespace.html |-- manifests | |-- commands +| | |-- definition_rules.pp | | `-- definitions.pp | |-- firewall | | `-- iptables.pp @@ -44,6 +45,8 @@ | |-- init.pp | `-- params.pp |-- templates +| |-- cmd_head.erb +| |-- cmd_rule.erb | |-- nrpe_cfg.erb | `-- nrpe_conf.erb |-- tests @@ -56,4 +59,4 @@ |-- README.md `-- REPOSTRUCTURE.md -11 directories, 45 files +11 directories, 48 files diff --git a/doc/_index.html b/doc/_index.html index 8964566..a8ac6d3 100644 --- a/doc/_index.html +++ b/doc/_index.html @@ -73,6 +73,11 @@ +
  • + cd_nrpe::commands::definitions + +
  • +
  • cd_nrpe::firewall::iptables @@ -166,7 +171,7 @@ diff --git a/doc/file.README.html b/doc/file.README.html index 01984a4..ef75084 100644 --- a/doc/file.README.html +++ b/doc/file.README.html @@ -61,7 +61,7 @@

    |Repo Name| version | Build Status| |---|---|---|---| -|cd_nrpe| 0.0.0.1 | cd_nrpe| 0.0.0.2 | {Build Status/]|

    @@ -101,6 +101,8 @@ Structure

  • Parameters

  • +

    Managing Check Commands

    +
  • SELINUX

  • Known Problems

    @@ -192,6 +194,26 @@ details about class deployment on Confdroid.com.

    (recommended). Values changed will take immediate effect at next puppet run. Services will be restarted where neccessary.

    +

    Mandatory Parameters

    + +

    There are currently no mandatory parameters, i.e. the module will function +right out of box as is.

    + +

    Optional Parameters

    + + +

    Managing Check Commands

    +

    SELINUX

    All files and directories are configured with correct selinux context. If @@ -252,7 +274,7 @@ environments.

    diff --git a/doc/index.html b/doc/index.html index 8e6c045..2859e90 100644 --- a/doc/index.html +++ b/doc/index.html @@ -61,7 +61,7 @@

    |Repo Name| version | Build Status| |---|---|---|---| -|cd_nrpe| 0.0.0.1 | cd_nrpe| 0.0.0.2 | {Build Status/]|

    @@ -101,6 +101,8 @@ Structure

  • Parameters

  • +

    Managing Check Commands

    +
  • SELINUX

  • Known Problems

    @@ -192,6 +194,26 @@ details about class deployment on Confdroid.com.

    (recommended). Values changed will take immediate effect at next puppet run. Services will be restarted where neccessary.

    +

    Mandatory Parameters

    + +

    There are currently no mandatory parameters, i.e. the module will function +right out of box as is.

    + +

    Optional Parameters

    + + +

    Managing Check Commands

    +

    SELINUX

    All files and directories are configured with correct selinux context. If @@ -252,7 +274,7 @@ environments.

    diff --git a/doc/puppet_class_list.html b/doc/puppet_class_list.html index aaf8948..8abae00 100644 --- a/doc/puppet_class_list.html +++ b/doc/puppet_class_list.html @@ -47,56 +47,63 @@
  • -
  • +
  • +
    + cd_nrpe::commands::definitions +
    +
  • + + +
  • cd_nrpe::firewall::iptables
  • -
  • +
  • cd_nrpe::main::config
  • -
  • +
  • cd_nrpe::main::dirs
  • -
  • +
  • cd_nrpe::main::files
  • -
  • +
  • cd_nrpe::main::install
  • -
  • +
  • cd_nrpe::main::service
  • -
  • +
  • cd_nrpe::main::user
  • -
  • +
  • cd_nrpe::params
    diff --git a/doc/puppet_classes/cd_nrpe.html b/doc/puppet_classes/cd_nrpe.html index 410157f..e64569b 100644 --- a/doc/puppet_classes/cd_nrpe.html +++ b/doc/puppet_classes/cd_nrpe.html @@ -140,7 +140,7 @@ class cd_nrpe { diff --git a/doc/puppet_classes/cd_nrpe_3A_3Acommands_3A_3Adefinitions.html b/doc/puppet_classes/cd_nrpe_3A_3Acommands_3A_3Adefinitions.html new file mode 100644 index 0000000..2ff5c4a --- /dev/null +++ b/doc/puppet_classes/cd_nrpe_3A_3Acommands_3A_3Adefinitions.html @@ -0,0 +1,217 @@ + + + + + + + Puppet Class: cd_nrpe::commands::definitions + + — Documentation by YARD 0.9.9 + + + + + + + + + + + + + + + + + + + +
    + + +

    Puppet Class: cd_nrpe::commands::definitions

    +
    + +
    +
    Inherits:
    +
    cd_nrpe::params
    +
    + + +
    +
    Defined in:
    +
    + manifests/commands/definition_rules.pp +
    +
    +
    + +

    Summary

    + manage command definitions via define and Puppet rules. + +

    Overview

    +
    +
    + +

    cd_nrpe::commands::definition_rules.pp +Module name: cd_nrpe +Author: Arne +Teuke (arne_teuke@ConfDroid.com)

    + +

    License:

    + +

    This file is part of cd_nrpe.

    + +

    cd_nrpe is used for providing automatic configuration of NRPE. + Copyright +(C) 2016 ConfDroid (copyright@ConfDroid.com) + This program is free +software: you can redistribute it and/or modify + it under the terms of the +GNU General Public License as published by + the Free Software Foundation, +either version 3 of the License, or + (at your option) any later version.

    + +

    This program is distributed in the hope that it will be useful, + but +WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY +or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License +for more details.

    + +

    You should have received a copy of the GNU General Public License + along +with this program. If not, see www.gnu.org/licenses/.

    + +
    +
    +
    + + +
    + + + + + +
    +
    +
    +
    +23
    +24
    +25
    +26
    +27
    +28
    +29
    +30
    +31
    +32
    +33
    +34
    +35
    +36
    +37
    +38
    +39
    +40
    +41
    +42
    +43
    +44
    +45
    +46
    +47
    +48
    +49
    +50
    +51
    +52
    +53
    +54
    +55
    +56
    +
    +
    # File 'manifests/commands/definition_rules.pp', line 23
    +
    +class cd_nrpe::commands::definitions (
    +
    +) inherits cd_nrpe::params {
    +
    +  if $ne_manage_cmds == true {
    +
    +    # manage the commands.cfg file
    +
    +    concat { $ne_cmd_file:
    +      ensure    =>  present,
    +      path      =>  $ne_cmd_file,
    +      owner     =>  'root',
    +      group     =>  'root',
    +      mode      =>  '0640',
    +      selrange  =>  s0,
    +      selrole   =>  object_r,
    +      seltype   =>  nrpe_etc_t,
    +      seluser   =>  system_u,
    +      notify    =>  Service[$ne_service],
    +    }
    +
    +    # manage the file header
    +
    +    concat::fragment { 'nrpe_cmd_header':
    +      target    =>  $ne_cmd_file,
    +      content   =>  template($ne_cmd_head_erb),
    +      order     =>  '000',
    +    }
    +
    +    # basic example rules
    +
    +
    +  }
    +}
    +
    +
    +
    + + + +
    + + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nrpe_3A_3Afirewall_3A_3Aiptables.html b/doc/puppet_classes/cd_nrpe_3A_3Afirewall_3A_3Aiptables.html index 7fe88be..673bf90 100644 --- a/doc/puppet_classes/cd_nrpe_3A_3Afirewall_3A_3Aiptables.html +++ b/doc/puppet_classes/cd_nrpe_3A_3Afirewall_3A_3Aiptables.html @@ -165,7 +165,7 @@ class cd_nrpe::firewall::iptables ( diff --git a/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Aconfig.html b/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Aconfig.html index 18beb3f..d06006e 100644 --- a/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Aconfig.html +++ b/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Aconfig.html @@ -154,7 +154,7 @@ class cd_nrpe::main::config ( diff --git a/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Adirs.html b/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Adirs.html index 6722b4f..89d3b54 100644 --- a/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Adirs.html +++ b/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Adirs.html @@ -205,7 +205,7 @@ class cd_nrpe::main::dirs ( diff --git a/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Afiles.html b/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Afiles.html index a077bf9..ac70562 100644 --- a/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Afiles.html +++ b/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Afiles.html @@ -217,7 +217,7 @@ class cd_nrpe::main::files ( diff --git a/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Ainstall.html b/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Ainstall.html index 569934b..1f11506 100644 --- a/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Ainstall.html +++ b/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Ainstall.html @@ -160,7 +160,7 @@ class cd_nrpe::main::install ( diff --git a/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Aservice.html b/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Aservice.html index ca45c30..8fbc8c4 100644 --- a/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Aservice.html +++ b/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Aservice.html @@ -145,7 +145,11 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

    37 38 39 -40 +40 +41 +42 +43 +44
    # File 'manifests/main/service.pp', line 23
    @@ -160,6 +164,10 @@ class cd_nrpe::main::service (
     
       require cd_nrpe::main::files
     
    +  if $ne_manage_cmds == true {
    +    require cd_nrpe::commands::definition_rules
    +  }
    +
       service { $ne_service:
         ensure      => running,
         hasstatus   => true,
    @@ -175,7 +183,7 @@ class cd_nrpe::main::service (
     
     
           
    diff --git a/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Auser.html b/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Auser.html
    index 5ae5249..0d15279 100644
    --- a/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Auser.html
    +++ b/doc/puppet_classes/cd_nrpe_3A_3Amain_3A_3Auser.html
    @@ -193,7 +193,7 @@ class cd_nrpe::main::user (
     
     
           
    diff --git a/doc/puppet_classes/cd_nrpe_3A_3Aparams.html b/doc/puppet_classes/cd_nrpe_3A_3Aparams.html
    index 108b02f..6c13781 100644
    --- a/doc/puppet_classes/cd_nrpe_3A_3Aparams.html
    +++ b/doc/puppet_classes/cd_nrpe_3A_3Aparams.html
    @@ -81,6 +81,8 @@
           
           cd_nrpe::firewall::iptables
    + cd_nrpe::commands::definitions
    + @@ -843,6 +845,26 @@ needed.

    Whether to enable SSL certificates.

    +
    + +
  • + +
  • + + ne_manage_cmds + + + (boolean) + + + (defaults to: true) + + + — +
    +

    Whether to manage command rules for NRPE +checks, to allow dynamic check +& command rules.

  • @@ -864,8 +886,6 @@ needed.

     
     
    -99
    -100
     101
     102
     103
    @@ -939,15 +959,24 @@ needed.

    171 172 173 -174
    +174 +175 +176 +177 +178 +179 +180 +181 -
    # File 'manifests/params.pp', line 99
    +        
    # File 'manifests/params.pp', line 101
     
     class cd_nrpe::params (
     
     $pkg_ensure                 = 'latest',
     
    +$ne_manage_cmds             = true,
    +
     # user settings
     $ne_user                    = 'nrpe',
     $ne_user_comment            = 'NRPE service user',
    @@ -1014,6 +1043,9 @@ $ne_main_conf_erb           = 'cd_nrpe/nrpe_cfg.erb'
     $ne_nrpe_pid_file           = "${ne_run_dir}/nrpe.pid"
     $ne_nrpe_conf_file          = '/etc/sysconfig/nrpe'
     $ne_nrpe_conf_erb           = 'cd_nrpe/nrpe_conf.erb'
    +$ne_cmd_file                = "${ne_main_conf_d_dir}/commands.cfg"
    +$ne_cmd_head_erb            = 'cd_nrpe/cmd_head.erb'
    +$ne_cmd_rule_erb            = 'cd_nrpe/cmd_rule.erb'
     
     # includes must be last
     
    @@ -1027,7 +1059,7 @@ $ne_nrpe_conf_erb           = 'cd_nrpe/nrpe_conf.erb'
     
     
           
    diff --git a/doc/puppet_defined_types/cd_nrpe_3A_3Acommands_3A_3Adefinitions.html b/doc/puppet_defined_types/cd_nrpe_3A_3Acommands_3A_3Adefinitions.html
    index 1259313..950e7c9 100644
    --- a/doc/puppet_defined_types/cd_nrpe_3A_3Acommands_3A_3Adefinitions.html
    +++ b/doc/puppet_defined_types/cd_nrpe_3A_3Acommands_3A_3Adefinitions.html
    @@ -70,7 +70,8 @@
     
     
       

    Summary

    - manage firewall settings through cd_firewall or puppetlabs-firewall + Populate command definitions through external puppet rules, i.e. +from other modules.

    Overview

    @@ -112,7 +113,72 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

    +

    Parameters:

    +
      +
    • + + ne_check_cmd + + + (string) + + + (defaults to: undef) + + + — +
      +

      Specify the check_command to use.

      +
      + +
    • + +
    • + + ne_cmd_path + + + (string) + + + (defaults to: '/usr/lib64/nagios/plugins/') + + + — +
      +

      The path to the command scripts, usually +where the nagis_plugins are +located. If you use your own scripts, specify +the custom location +including the trailing slash

      +
      + +
    • + +
    • + + ne_cmd_argstring + + + (Any) + + + (defaults to: undef) + + + — +
      +

      Specify the string of valid argument for the command +, i.e. -w $ARG1$ -c +$ARG2$. See the arguments in th eman pages for the +checks.

      +
      + +
    • + +
    +
    @@ -121,26 +187,44 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

     
     
    -23
    -24
    -25
    -26
    -27
    -28
    -29
    -30
    +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47
    -
    # File 'manifests/commands/definitions.pp', line 23
    +        
    # File 'manifests/commands/definitions.pp', line 31
     
    -define cd_nrpe::commands::definitions (
    +define cd_nrpe::commands::definitions (
    +
    +$ne_check_cmd     = undef,
    +$ne_cmd_path      = '/usr/lib64/nagios/plugins/',
    +$ne_cmd_argstring = undef,
    +
    +) {
    +
    +$ne_cmd_file      = $::cd_nrpe::params::ne_cmd_file
    +$ne_cmd_rule_erb  = $::cd_nrpe::params::ne_cmd_rule_erb
     
     
    -) {
    -
    -
    -
    -}
    + concat::fragment { $name: + target => $ne_cmd_file, + content => template($ne_cmd_rule_erb), + } +}
    @@ -148,7 +232,7 @@ href="http://www.gnu.org/licenses">www.gnu.org/licenses/.

    diff --git a/doc/top-level-namespace.html b/doc/top-level-namespace.html index 37c14d3..b43168c 100644 --- a/doc/top-level-namespace.html +++ b/doc/top-level-namespace.html @@ -90,7 +90,7 @@ diff --git a/manifests/commands/definition_rules.pp b/manifests/commands/definition_rules.pp new file mode 100644 index 0000000..c8767f5 --- /dev/null +++ b/manifests/commands/definition_rules.pp @@ -0,0 +1,56 @@ +## cd_nrpe::commands::definition_rules.pp +# Module name: cd_nrpe +# Author: Arne Teuke (arne_teuke@ConfDroid.com) +# # License: +# This file is part of cd_nrpe. +# +# cd_nrpe is used for providing automatic configuration of NRPE. +# Copyright (C) 2016 ConfDroid (copyright@ConfDroid.com) +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +# @summary manage command definitions via define and Puppet rules. +############################################################################### +class cd_nrpe::commands::definitions ( + +) inherits cd_nrpe::params { + + if $ne_manage_cmds == true { + + # manage the commands.cfg file + + concat { $ne_cmd_file: + ensure => present, + path => $ne_cmd_file, + owner => 'root', + group => 'root', + mode => '0640', + selrange => s0, + selrole => object_r, + seltype => nrpe_etc_t, + seluser => system_u, + notify => Service[$ne_service], + } + + # manage the file header + + concat::fragment { 'nrpe_cmd_header': + target => $ne_cmd_file, + content => template($ne_cmd_head_erb), + order => '000', + } + + # basic example rules + + + } +} diff --git a/manifests/commands/definitions.pp b/manifests/commands/definitions.pp index a34327b..0a0ba4e 100644 --- a/manifests/commands/definitions.pp +++ b/manifests/commands/definitions.pp @@ -18,13 +18,30 @@ # # You should have received a copy of the GNU General Public License # along with this program. If not, see . -# @summary manage firewall settings through cd_firewall or puppetlabs-firewall +# @summary Populate command definitions through external puppet rules, i.e. +# from other modules. +# @param [string] ne_check_cmd Specify the check_command to use. +# @param [string] ne_cmd_path The path to the command scripts, usually +# where the nagis_plugins are located. If you use your own scripts, specify +# the custom location **__including the trailing slash__** +# @param ne_cmd_argstring Specify the string of valid argument for the command +# , i.e. -w $ARG1$ -c $ARG2$. See the arguments in th eman pages for the +# checks. ############################################################################### define cd_nrpe::commands::definitions ( +$ne_check_cmd = undef, +$ne_cmd_path = '/usr/lib64/nagios/plugins/', +$ne_cmd_argstring = undef, ) { +$ne_cmd_file = $::cd_nrpe::params::ne_cmd_file +$ne_cmd_rule_erb = $::cd_nrpe::params::ne_cmd_rule_erb + concat::fragment { $name: + target => $ne_cmd_file, + content => template($ne_cmd_rule_erb), + } } diff --git a/manifests/main/service.pp b/manifests/main/service.pp index dcfcc70..7c41593 100644 --- a/manifests/main/service.pp +++ b/manifests/main/service.pp @@ -30,6 +30,10 @@ class cd_nrpe::main::service ( require cd_nrpe::main::files + if $ne_manage_cmds == true { + require cd_nrpe::commands::definition_rules + } + service { $ne_service: ensure => running, hasstatus => true, diff --git a/manifests/params.pp b/manifests/params.pp index f4d39d4..ae5ae94 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -95,11 +95,15 @@ # @param [string] ne_allow_weak_rnd_seed Whether to allow weak random seeds # @param [string] ne_include_selinux Whether to manage selinux # @param [boolean] ne_enable_ssl Whether to enable SSL certificates. +# @param [boolean] ne_manage_cmds Whether to manage command rules for NRPE +# checks, to allow dynamic check & command rules. ############################################################################### class cd_nrpe::params ( $pkg_ensure = 'latest', +$ne_manage_cmds = true, + # user settings $ne_user = 'nrpe', $ne_user_comment = 'NRPE service user', @@ -166,6 +170,9 @@ $ne_main_conf_erb = 'cd_nrpe/nrpe_cfg.erb' $ne_nrpe_pid_file = "${ne_run_dir}/nrpe.pid" $ne_nrpe_conf_file = '/etc/sysconfig/nrpe' $ne_nrpe_conf_erb = 'cd_nrpe/nrpe_conf.erb' +$ne_cmd_file = "${ne_main_conf_d_dir}/commands.cfg" +$ne_cmd_head_erb = 'cd_nrpe/cmd_head.erb' +$ne_cmd_rule_erb = 'cd_nrpe/cmd_rule.erb' # includes must be last diff --git a/templates/cmd_head.erb b/templates/cmd_head.erb new file mode 100644 index 0000000..10d521f --- /dev/null +++ b/templates/cmd_head.erb @@ -0,0 +1,4 @@ +################################################################################ +########## commandsmds.cfg managed by Puppet ########## +########## manual changes will be orverwritten ########## +################################################################################ diff --git a/templates/cmd_rule.erb b/templates/cmd_rule.erb new file mode 100644 index 0000000..d6435e9 --- /dev/null +++ b/templates/cmd_rule.erb @@ -0,0 +1,2 @@ + +cmd[<%= @ne_check_cmd %>]= <%= @ne_cmd_path %><%= @ne_check_cmd %> <%= @ne_cmd_argstring %>