Your augeas resource is always called hosts_include which is why it's doing
that. Try including the entry[name] in that resource name.
On Jan 16, 2014 4:15 PM, "Reinaldo Lima" <[email protected]> wrote:
> 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.
>
--
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/CAKJ8awc5X%2B97jtxwbe%3DpjqhjqyuF8S_dR_GvAAXM%2BC8t3FC9xA%40mail.gmail.com.
For more options, visit https://groups.google.com/groups/opt_out.