Hi Everyone,

I'm trying to write a class that put some entries in "/etc/hosts" file as 
follow below:

*class hosts {*

*        $netentry = {*
*                host01 => { iphost => '192.168.10.1', hostName => host01 
},*
*                host02 => { iphost => '192.168.10.2', hostName => host02 
},*
*                host03 => { iphost => '192.168.10.3', hostName => host03 
},*
*        }*

*        define hostsinclude ($entry) {*
*               augeas { "hosts_include":*
*                       incl => "/etc/hosts",*
*                       lens => "Hosts.lns",*
*                       changes => [*
*                               "set /files/etc/hosts/01/ipaddr 
$entry[$name]['iphost']",*
*                               "set 
/files/etc/hosts/01/canonical$entry[$name]['hostName']",*
*                               ],*
*                       onlyif => "match */ipaddr[ . = 
$entry[$name]['iphost'] ] size == 0"*
*               }*
*        }*

*        hostsinclude { [*
*                'host01',*
*                'host02',*
*                'host03'*
*                ]:*
*                entry => $netentry*
*        }*

*}*


and, when puppet compiles the manifest, I get the following error: 

*err: Could not retrieve catalog from remote server: Error 400 on SERVER: 
Duplicate declaration: Augeas[hosts_include] is already declared in file 
/puppet/environments/production/modules/checklist/manifests/hosts.pp at 
line 10; cannot redeclare at 
/puppet/environments/production/modules/checklist/manifests/hosts.pp:29 on 
node*

Someone can help me?

Thanks

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/fe9040f2-54de-4f9c-9787-4736b37219d9%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to